修改任务参数
为确保DRS任务发挥出最优性能,用户可根据业务需求对创建的DRS任务参数进行调整。
约束限制
- 支持任务状态为配置、全量同步、全量同步失败、增量同步、增量同步失败以及暂停时进行修改参数。
- 部分参数修改后,需要重启同步任务后才能生效。除此以外,重置、续传、任务重建、主备倒换、全量阶段修改限速操作也会重启任务进程使设置生效。
- 目前仅支持以下引擎的同步任务进行修改参数。常见的任务参数说明可参考任务参数说明。
- MySQL->MySQL
- MySQL->PostgreSQL
- MySQL->GaussDB分布式版
- MySQL->GaussDB主备版
- MySQL->GaussDB(DWS)
- MySQL->GaussDB(for MySQL)
- MySQL->Kafka
- MySQL->CSS/ES
- MySQL->Oracle
- Oracle->MySQL
- Oracle->PostgreSQL
- Oracle->GaussDB分布式版
- Oracle->GaussDB主备版
- Oracle->GaussDB(for MySQL)
- Oracle->DDM
- Oracle->Kafka
- Microsoft SQL Server->MySQL
- Microsoft SQL Server->PostgreSQL
- Microsoft SQL Server->GaussDB分布式版
- Microsoft SQL Server->GaussDB主备版
- Microsoft SQL Server->GaussDB(for MySQL)
- Microsoft SQL Server->Kafka
- Microsoft SQL Server->Microsoft SQL Server
- DB2 for LUW->GaussDB分布式版
- DB2 for LUW->GaussDB主备版
操作步骤
- 在“实时同步管理”界面,选择指定的同步任务。
- 单击任务名称,页面跳转至“基本信息”页面。
- 单击左侧“参数管理”,在“参数”页签可对当前同步任务的参数信息进行修改。
图1 查看参数信息
- 修改完成后,可选择“保存”或者“取消”设置。
- 单击“保存”,在弹出框中单击“是”,保存修改。
- 单击“取消”,在弹出框中单击“是”,放弃本次设置。
- 部分参数完成修改后,需要重启任务后才生效,可单击右上角“重启”按钮使之生效,也可参考重启同步任务内容进行重启。
除此以外,重置、续传、任务重建、主备倒换、全量阶段修改限速操作也会重启任务进程使设置生效。
任务参数说明
参数名 |
描述 |
取值范围 |
默认值 |
参数类型 |
是否需要重启 |
参数作用链路范围 |
---|---|---|---|---|---|---|
applier_thread_num |
全量阶段写数据到目标数据库的线程数 |
与规格大小有关。
|
与规格大小有关。
|
int |
是 |
|
read_task_num |
全量阶段从源数据库读取数据的线程数 |
与规格大小有关。
|
与规格大小有关。
|
int |
是 |
|
shard_task_num |
全量阶段从源数据库分片线程数 |
与规格大小有关。
|
与规格大小有关。
|
int |
是 |
|
increment_writer_num |
增量阶段写目标库线程数 |
与规格大小有关。
|
与规格大小有关。
|
int |
是 |
|
relay_socket_timeout |
增量阶段从源数据库拉取日志的超时时间 |
30000-2147483647毫秒 |
30000毫秒 |
int |
是 |
|
datamove_source_socket_timeout |
全量阶段从源数据库拉取数据的超时时间 |
与DRS任务引擎有关。
|
与DRS任务引擎有关。
|
int |
是 |
|
shard_length |
全量阶段分片的记录数 |
520000-1000000000或0 |
520000 |
int |
是 |
|
datamove_fetchsize |
全量阶段从源库读取数据一次性缓存数据量fetchsize |
10-10000 |
与DRS任务引擎有关。 |
int |
是 |
|
datamove_copy_mode |
全量阶段写入目标库的方式,copy模式的写入性能高于insert模式。 true为copy模式,false为insert模式。 |
true/false |
true |
boolean |
是 |
|
datamove_split_partition |
全量阶段是否分区内再分片。true:源端分区表分区内再分片并行同步,提高大分区的同步速度;false:分区内不分片,按照分区分片 |
true/false |
true |
boolean |
是 |
|
read_log_num |
增量期间从源库拉取日志的线程数 |
1-16 |
2 |
int |
是 |
|
logminer_fetchsize |
增量阶段,Oracle为源logminer模式下拉取增量日志时,设置读取logminer数据的fetchsize |
10-10000 |
1000 |
int |
是 |
|
deal_hot_table |
增量阶段是否加速源端频繁dml操作的热点表回放,true:热点表加速,false:热点表不加速 |
true/false |
fasle |
boolean |
是 |
|
skip_all_ddl |
增量阶段是否忽略所有ddl,有大量无关ddl时开启可提高增量性能。true:忽略所有ddl,false:不忽略所有ddl |
true/false |
false |
boolean |
是 |
|
replace_invalid_time |
全量与增量阶段源端时间类型在目标端非法时,是否替换为默认时间。timestamp:默认1970-01-01 00:00:00,date:默认1970-01-01,time:默认00:00:00; true:替换, false:不替换 |
true/false |
false |
boolean |
是 |
|
replace_0x00 |
全量与增量阶段是否将目标端不支持的0x00字符替换为空格,true:替换,false:不替换 |
true/false |
true |
boolean |
是 |
|
replace_0xefbfbd |
全量及增量阶段,是否将异常字符转为默认值'?'。DRS设置jdbc客户端字符集为utf8,在查询过程中源数据库转码会将异常字节转换为utf8编码的异常码点EFBFBD。true:将字符utf8编码的异常码点替换为'?'字符 ,false:不替换 |
true/false |
false |
boolean |
是 |
|