-
Notifications
You must be signed in to change notification settings - Fork 707
v8.5.6 ticdc: add scheduler configuration recommendations for table split mode (#22483) #22501
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
base: release-8.5
Are you sure you want to change the base?
Changes from all commits
74d5095
17eceeb
2603399
c7645d4
0272afa
07293c1
9e1a854
e774098
14525ee
3620624
28c3dda
8e29b9c
04564d0
b949b04
91ddd76
9a0cf96
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -64,7 +64,17 @@ When this feature is enabled, TiCDC automatically splits and distributes tables | |||||
|
|
||||||
| > **Note:** | ||||||
| > | ||||||
| > For MySQL sink changefeeds, only tables that meet one of the preceding conditions and have **exactly one primary key or non-null unique key** can be split and distributed by TiCDC, to ensure the correctness of data replication in table split mode. | ||||||
| > For MySQL sink changefeeds, only tables that meet one of the preceding conditions and have **exactly one primary key or non-null unique key** can be split and distributed by TiCDC, to ensure the correctness of data replication in table-level task splitting mode. | ||||||
|
|
||||||
| ### Recommended configurations for table-level task splitting | ||||||
|
|
||||||
| After switching to the new TiCDC architecture, do not reuse the table-splitting configurations from the classic architecture. In most scenarios, use the default configuration of the new architecture. Make incremental adjustments based on the default values only in special scenarios where replication performance bottlenecks or scheduling imbalance occur. | ||||||
|
|
||||||
| In table split mode, pay attention to the following settings: | ||||||
|
|
||||||
| - [`scheduler.region-threshold`](/ticdc/ticdc-changefeed-config.md#region-threshold): the default value is `10000`. When the number of Regions in a table exceeds this threshold, TiCDC splits the table. For tables with relatively few Regions but high overall write throughput, you can reduce this value appropriately. This parameter must be greater than or equal to `scheduler.region-count-per-span`. Otherwise, tasks might be rescheduled repeatedly, which increases replication latency. | ||||||
| - [`scheduler.region-count-per-span`](/ticdc/ticdc-changefeed-config.md#region-count-per-span-new-in-v854): the default value is `100`. During changefeed initialization, tables that meet the split conditions are split according to this parameter. After splitting, each split sub-table contains at most `region-count-per-span` regions. | ||||||
| - [`scheduler.write-key-threshold`](/ticdc/ticdc-changefeed-config.md#write-key-threshold): the default value is `0` (disabled). When the sink write throughput of a table exceeds this threshold, TiCDC triggers table splitting. In most cases, keep this parameter to `0`. | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For better readability,
Suggested change
References
|
||||||
|
|
||||||
| ## Compatibility | ||||||
|
|
||||||
|
|
||||||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -163,6 +163,11 @@ For more information, see [Event filter rules](/ticdc/ticdc-filter.md#event-filt | |||||
| - The value is `false` by default. Set it to `true` to enable this feature. | ||||||
| - Default value: `false` | ||||||
|
|
||||||
| #### `region-count-per-span` <span class="version-mark">New in v8.5.4</span> | ||||||
|
|
||||||
| - Introduced in the [TiCDC new architecture](/ticdc/ticdc-architecture.md). During changefeed initialization, tables that meet the split conditions are split according to this parameter. After splitting, each split sub-table contains at most `region-count-per-span` Regions. | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. To improve clarity and use active voice as recommended by the style guide, consider rephrasing this sentence.
Suggested change
References
|
||||||
| - Default value: `100` | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Please remove the trailing space for consistent formatting.
Suggested change
References
|
||||||
|
|
||||||
| #### `region-threshold` | ||||||
|
|
||||||
| - Default value: for the [TiCDC new architecture](/ticdc/ticdc-architecture.md), the default value is `10000`; for the [TiCDC classic architecture](/ticdc/ticdc-classic-architecture.md), the default value is `100000`. | ||||||
|
|
||||||
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.
To improve clarity and use active voice as recommended by the style guide, consider rephrasing this sentence. Also, for consistency with the rest of the document,
Regionsshould be capitalized.References