New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
system-variables: add fine_grained_shuffle #9696
Conversation
[REVIEW NOTIFICATION] This pull request has been approved by:
To complete the pull request process, please ask the reviewers in the list to review by filling The full list of commands accepted by this bot can be found here. Reviewer can indicate their review by submitting an approval review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please revise according to the comments on CHN version
Co-authored-by: guo-shaoge <shaoge1994@163.com>
Co-authored-by: Ran <huangran.alex@gmail.com>
Co-authored-by: Ran <huangran.alex@gmail.com>
/verify |
Co-authored-by: Ran <huangran.alex@gmail.com>
system-variables.md
Outdated
- Default value: `8192` | ||
- Range: `[1, 18446744073709551616]` | ||
- When Fine Grained Shuffle is enabled, the window function pushed down to TiFlash can be executed in parallel. This variable controls the batch size of the data sent by the sender. The sender will send data once the cumulative number of rows exceeds this value. | ||
- Impact on performance: set a reasonable size according to your business requirements. Improper setting will affect the performance. If the value is set too small, for example `1`, it will cause one network transfer per Block. If the value is set too large, for example, the total number of rows of the table, it will cause the receiving end to spend most of the time waiting for data, and the piplelined computation can not work. You can observe the distribution of the number of rows received by the TiFlash receiver. If most threads receive only a few rows, for example a few hundred, you can increase this value to reduce the network overhead. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Impact on performance: set a reasonable size according to your business requirements. Improper setting will affect the performance. If the value is set too small, for example `1`, it will cause one network transfer per Block. If the value is set too large, for example, the total number of rows of the table, it will cause the receiving end to spend most of the time waiting for data, and the piplelined computation can not work. You can observe the distribution of the number of rows received by the TiFlash receiver. If most threads receive only a few rows, for example a few hundred, you can increase this value to reduce the network overhead. | |
- Impact on performance: If the value is set too small, for example `1`, it will cause one network transfer per Block. If the value is set too large, for example, the total number of rows of the table, it will cause the receiving end to spend most of the time waiting for data, and the piplelined computation can not work. You can observe the distribution of the number of rows received by the TiFlash receiver. If most threads receive only a few rows, for example a few hundred, you can increase this value to reduce the network overhead. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Relst LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's keep this sentence.
Co-authored-by: guo-shaoge <shaoge1994@163.com>
/merge |
@hfxsd: In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the ti-community-infra/tichi repository. |
/merge |
This pull request has been accepted and is ready to merge. Commit hash: bf7ac44
|
What is changed, added or deleted? (Required)
Added two variables:
tiflash_fine_grained_shuffle_batch_size
tiflash_fine_grained_shuffle_stream_count
Which TiDB version(s) do your changes apply to? (Required)
Tips for choosing the affected version(s):
By default, CHOOSE MASTER ONLY so your changes will be applied to the next TiDB major or minor releases. If your PR involves a product feature behavior change or a compatibility change, CHOOSE THE AFFECTED RELEASE BRANCH(ES) AND MASTER.
For details, see tips for choosing the affected versions.
What is the related PR or file link(s)?
Do your changes match any of the following descriptions?