-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
- Loading branch information
1 parent
d84cee3
commit ced126d
Showing
2 changed files
with
25 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -76,13 +76,13 @@ tiup cluster upgrade <cluster-name> v4.0.13 | |
{{< copyable "shell-regular" >}} | ||
|
||
```shell | ||
cdc cli changefeed create --pd=http://10.0.10.25:2379 --sink-uri="mysql://root:[email protected]:3306/" --changefeed-id="simple-replication-task" | ||
cdc cli changefeed create --pd=http://10.0.10.25:2379 --sink-uri="mysql://root:[email protected]:3306/" --changefeed-id="simple-replication-task" --sort-engine="unified" | ||
``` | ||
|
||
```shell | ||
Create changefeed successfully! | ||
ID: simple-replication-task | ||
Info: {"sink-uri":"mysql://root:[email protected]:3306/","opts":{},"create-time":"2020-03-12T22:04:08.103600025+08:00","start-ts":415241823337054209,"target-ts":0,"admin-job-type":0,"sort-engine":"memory","sort-dir":".","config":{"case-sensitive":true,"filter":{"rules":["*.*"],"ignore-txn-start-ts":null,"ddl-allow-list":null},"mounter":{"worker-num":16},"sink":{"dispatchers":null,"protocol":"default"},"cyclic-replication":{"enable":false,"replica-id":0,"filter-replica-ids":null,"id-buckets":0,"sync-ddl":false},"scheduler":{"type":"table-number","polling-time":-1}},"state":"normal","history":null,"error":null} | ||
Info: {"sink-uri":"mysql://root:[email protected]:3306/","opts":{},"create-time":"2020-03-12T22:04:08.103600025+08:00","start-ts":415241823337054209,"target-ts":0,"admin-job-type":0,"sort-engine":"unified","sort-dir":".","config":{"case-sensitive":true,"filter":{"rules":["*.*"],"ignore-txn-start-ts":null,"ddl-allow-list":null},"mounter":{"worker-num":16},"sink":{"dispatchers":null,"protocol":"default"},"cyclic-replication":{"enable":false,"replica-id":0,"filter-replica-ids":null,"id-buckets":0,"sync-ddl":false},"scheduler":{"type":"table-number","polling-time":-1}},"state":"normal","history":null,"error":null} | ||
``` | ||
|
||
- `--changefeed-id`:同步任务的 ID,格式需要符合正则表达式 `^[a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*$`。如果不指定该 ID,TiCDC 会自动生成一个 UUID(version 4 格式)作为 ID。 | ||
|
@@ -98,14 +98,13 @@ Info: {"sink-uri":"mysql://root:[email protected]:3306/","opts":{},"create-time": | |
|
||
- `--start-ts`:指定 changefeed 的开始 TSO。TiCDC 集群将从这个 TSO 开始拉取数据。默认为当前时间。 | ||
- `--target-ts`:指定 changefeed 的目标 TSO。TiCDC 集群拉取数据直到这个 TSO 停止。默认为空,即 TiCDC 不会自动停止。 | ||
- `--sort-engine`:指定 changefeed 使用的排序引擎。因 TiDB 和 TiKV 使用分布式架构,TiCDC 需要对数据变更记录进行排序后才能输出。该项支持 `memory`/`unified`/`file`: | ||
- `--sort-engine`:指定 changefeed 使用的排序引擎。因 TiDB 和 TiKV 使用分布式架构,TiCDC 需要对数据变更记录进行排序后才能输出。该项支持 `unified`(默认)/`memory`/`file`: | ||
|
||
- `memory`:在内存中进行排序。 | ||
- `unified`:自 v4.0.9 引入的特性,优先使用内存排序,内存不足时则自动使用硬盘暂存数据。自 v4.0.11 起为稳定特性,在有内存不足风险时建议开启。**不建议在 v4.0.9 和 v4.0.10 版本中开启。** | ||
- `unified`:优先使用内存排序,内存不足时则自动使用硬盘暂存数据。该选项默认开启。 | ||
- `memory`:在内存中进行排序。 **不建议使用,同步大量数据时易引发 OOM。** | ||
- `file`:完全使用磁盘暂存数据。**已经弃用,不建议在任何情况使用。** | ||
|
||
- `--sort-dir`: 指定排序引擎使用的临时文件目录。对于 v4.0.12 及以上的版本,**不建议在 `cdc cli changefeed create` 中使用该选项**,建议在 `cdc server` 命令中使用该选项来设置临时文件目录。该配置项的默认值为 `/tmp/cdc_sort`。在开启 Unified Sorter 的情况下,如果服务器的该目录不可写或可用空间不足,请手动指定 `sort-dir`。如果 `sort-dir` 对应的目录不可写入,changefeed 将会自动停止。 | ||
|
||
- `--sort-dir`: 指定排序引擎使用的临时文件目录。**不建议在 `cdc cli changefeed create` 中使用该选项**,建议在 [`cdc server` 命令中使用该选项来设置临时文件目录](/ticdc/deploy-ticdc.md#ticdc-cdc-server-命令行参数说明)。该配置项的默认值为 `/tmp/cdc_sort`。在开启 Unified Sorter 的情况下,如果服务器的该目录不可写或可用空间不足,请手动指定 `sort-dir`。如果 `sort-dir` 对应的目录不可写入,changefeed 将会自动停止。 | ||
- `--config`:指定 changefeed 配置文件。 | ||
|
||
#### Sink URI 配置 `mysql`/`tidb` | ||
|
@@ -300,7 +299,7 @@ cdc cli changefeed query --pd=http://10.0.10.25:2379 --changefeed-id=simple-repl | |
"start-ts": 419036036249681921, | ||
"target-ts": 0, | ||
"admin-job-type": 0, | ||
"sort-engine": "memory", | ||
"sort-engine": "unified", | ||
"sort-dir": ".", | ||
"config": { | ||
"case-sensitive": true, | ||
|
@@ -743,7 +742,7 @@ sync-ddl = true | |
2. 开启环形同步的数据表名字需要符合正则表达式 `^[a-zA-Z0-9_]+$`。 | ||
3. 在创建环形同步任务前,开启环形复制的数据表必须已创建完毕。 | ||
4. 开启环形复制后,不能创建一个会被环形同步任务同步的表。 | ||
5. 在多集群同时写入时,为了避免业务出错,请避免执行 DDL 语句,比如 `ADD COLUMN`/`DROP COLUMN` 等。 | ||
5. 在多集群同时写入时,为了避免业务出错,请避免执行 DDL 语句,比如 `ADD COLUMN`/`DROP COLUMN` 等。 | ||
6. 如果想在线执行 DDL 语句,需要确保满足以下条件: | ||
+ 业务兼容 DDL 语句执行前后的表结构。 | ||
+ 多个集群的 TiCDC 组件构成一个单向 DDL 同步链,不能成环。例如以上在 TiDB 集群 A,B 和 C 上创建环形同步任务的示例中,只有 C 集群的 TiCDC 组件关闭了 `sync-ddl`。 | ||
|
@@ -789,8 +788,21 @@ Unified Sorter 是 TiCDC 中的排序引擎功能,自 v4.0.9 引入,用于 | |
+ 如果 TiCDC 数据订阅任务的暂停中断时间长,其间积累了大量的增量更新数据需要同步。 | ||
+ 从较早的时间点启动数据订阅任务,业务写入量大,积累了大量的更新数据需要同步。 | ||
|
||
对 v4.0.13 版本之后的 `cdc cli` 创建的 changefeed,默认开启 Unified Sorter。对 v4.0.13 版本前已经存在的 changefeed,则使用之前的配置。 | ||
|
||
要确定一个 changefeed 上是否开启了 Unified Sorter 功能,可执行以下示例命令查看(假设 PD 实例的 IP 地址为 `http://10.0.10.25:2379`): | ||
|
||
{{< copyable "shell-regular" >}} | ||
|
||
```shell | ||
cdc cli --pd="http://10.0.10.25:2379" changefeed query --changefeed-id=simple-replication-task | grep 'sort-engine' | ||
``` | ||
|
||
以上命令的返回结果中,如果 `sort-engine` 的值为 "unified",则说明 Unified Sorter 已在该 changefeed 上开启。 | ||
|
||
> **注意:** | ||
> | ||
> + 如果服务器使用机械硬盘或其他有延迟或吞吐有瓶颈的存储设备,请谨慎开启 Unified Sorter。 | ||
> + 请保证硬盘的空闲容量大于等于 128G。如果需要同步大量历史数据,请确保每个节点的空闲容量大于等于要追赶的同步数据。 | ||
> + 如果您的服务器不符合以上条件,并希望关闭 Unified Sorter,请手动将 changefeed 的 `sort-engine` 设为 `memory`。 | ||
> + v4.0.13 版本之后,Unified Sorter 默认开启,如果您的服务器不符合以上条件,并希望关闭 Unified Sorter,请手动将 changefeed 的 `sort-engine` 设为 `memory`。 | ||
> + 如需在已有的 changefeed 上开启 Unified Sorter,参见[同步任务中断,尝试再次启动后 TiCDC 发生 OOM,如何处理](/ticdc/troubleshoot-ticdc.md#同步任务中断尝试再次启动后-ticdc-发生-oom如何处理)回答中提供的方法。 |