Changing Task Parameters

DRS allows you to change task parameters based on service requirements.

Constraints

  • You can change parameters of a synchronization task in the Configuration, Full, Full synchronization failed, Incremental, Incremental synchronization failed, or Paused state.

  • After some parameters of a task are changed, the changes take effect only after you restart the task by referring to Restarting a Synchronization Task. In addition, operations for resetting a task, resuming a task, rebuilding a task, performing primary/standby switchover, or changing the flow control in the full synchronization phase will restart task processes for the parameter changes to take effect.

Procedure

  1. On the Data Synchronization Management page, locate the target synchronization task.

  2. Click the task name. The Basic Information page is displayed.

  3. Choose Parameters on the left pane. On the Parameters tab page, query and change the parameters of the current synchronization task by name.

  4. Click Save or Cancel.

    • To save your changes, click Save. In the displayed dialog box, click Yes.

    • To cancel your changes, click Cancel. In the displayed dialog box, click Yes.

  5. Restart the task for the changes to take effect. You can click Restart in the upper right corner.

    In addition, operations for resetting a task, resuming a task, rebuilding a task, performing primary/standby switchover, or changing the flow control in the full synchronization phase will restart task processes for the parameter changes to take effect.

Task Parameter Description

Table 1 Task parameters

Parameter

Description

Value Range

Default Value

Type

Restart Required

Applicable Data Flow

applier_thread_num

Number of threads for writing data to the destination database during the full synchronization phase.

The value range depends on the task specifications.

  • Micro: 1-4

  • Small: 1-4

  • Medium: 1-8

  • Large: 1-18

  • Ultra-large: 1-24

The default value depends on the task specifications.

  • Micro: 2

  • Small: 2

  • Medium: 4

  • Large: 8

  • Ultra-large: 12

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->Oracle

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->MySQL

read_task_num

Number of threads for reading data from the source database during the full synchronization phase.

The value range depends on the task specifications.

  • Micro: 1-2

  • Small: 1-2

  • Medium: 1-4

  • Large: 1-8

  • Ultra-large: 1-12

The default value depends on the task specifications.

  • Micro: 1

  • Small: 1

  • Medium: 2

  • Large: 4

  • Ultra-large: 6

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->Oracle

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->MySQL

shard_task_num

Number of sharding threads in the source database during the full synchronization phase.

The value range depends on the task specifications.

  • Micro: 1-2

  • Small: 1-2

  • Medium: 1-4

  • Large: 1-8

  • Ultra-large: 1-8

The default value depends on the task specifications.

  • Micro: 1

  • Small: 1

  • Medium: 2

  • Large: 4

  • Ultra-large: 4

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->Oracle

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle->TaurusDB

  • Oracle->DDM

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->MySQL

increment_writer_num

Number of threads for writing data to the destination database during the incremental synchronization phase.

The value range depends on the task specifications.

  • Micro: 1-8

  • Small: 1-16

  • Medium: 1-32

  • Large: 1-128

  • Ultra-large: 1-128

The default value depends on the task specifications.

  • Micro: 4

  • Small: 8

  • Medium: 16

  • Large: 64

  • Ultra-large: 64

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->Oracle

  • DDM->DDM

  • DDM->MySQL

relay_socket_timeout

Timeout interval for obtaining logs from the source database during the incremental synchronization phase.

30000-2147483647 ms

30000 ms

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->Oracle

  • DDM->DDM

  • DDM->KAFKA

  • DDM->MySQL

datamove_source_socket_timeout

Timeout interval for obtaining data from the source database during the full synchronization phase.

The value range depends on the DRS task engine.

  • MySQL -> MySQL: 120000-2147483647 ms

  • MySQL -> PostgreSQL: 120000-2147483647 ms

  • MySQL -> GaussDB Distributed: 120000-2147483647 ms

  • MySQL -> TaurusDB: 120000-2147483647 ms

  • MySQL -> Kafka: 120000-2147483647 ms

  • MySQL -> CSS/ES: 120000-2147483647 ms

  • MySQL -> Oracle: 120000-2147483647 ms

  • Oracle -> MySQL: 600000-2147483647 ms

  • Oracle -> PostgreSQL: 600000-2147483647 ms

  • Oracle -> GaussDB Distributed: 600000-2147483647 ms

  • Oracle -> DDM: 600000-2147483647 ms

  • Oracle -> Kafka: 600000-2147483647 ms

  • Microsoft SQL Server -> MySQL: 360000-2147483647 ms

  • Microsoft SQL Server -> PostgreSQL: 360000-2147483647 ms

  • Microsoft SQL Server -> GaussDB Distributed: 360000-2147483647 ms

  • Microsoft SQL Server -> TaurusDB: 360000-2147483647 ms

  • Microsoft SQL Server -> Kafka: 360000-2147483647 ms

  • Microsoft SQL Server -> Microsoft SQL Server: 360000-2147483647 ms

The value range depends on the DRS task engine.

  • MySQL -> MySQL: 120000 ms

  • MySQL -> PostgreSQL: 120000 ms

  • MySQL -> GaussDB Distributed: 120000 ms

  • MySQL -> TaurusDB: 120000 ms

  • MySQL -> Kafka: 120000 ms

  • MySQL -> CSS/ES: 120000 ms

  • MySQL->Oracle

    : 120000 ms

  • Oracle -> MySQL: 600000 ms

  • Oracle -> PostgreSQL: 600000 ms

  • Oracle -> GaussDB Distributed: 600000 ms

  • Oracle -> GaussDB Centralized: 600000 ms

  • Oracle -> TaurusDB: 600000 ms

  • Oracle -> DDM: 600000 ms

  • Oracle -> Kafka: 600000 ms

  • Microsoft SQL Server -> MySQL: 360000 ms

  • Microsoft SQL Server -> PostgreSQL: 360000 ms

  • Microsoft SQL Server -> GaussDB Distributed: 360000 ms

  • Microsoft SQL Server -> GaussDB Centralized: 360000 ms

  • Microsoft SQL Server -> TaurusDB: 360000 ms

  • Microsoft SQL Server -> Kafka: 360000 ms

  • Microsoft SQL Server -> Microsoft SQL Server: 360000 ms

int

Yes

  • MySQL->MySQL

  • MySQL->PostgreSQL

  • MySQL -> GaussDB Distributed

  • MySQL->TaurusDB

  • MySQL->Kafka

  • MySQL->CSS/ES

  • MySQL->Oracle

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Oracle->TaurusDB

  • Oracle->DDM

  • Oracle->Kafka

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server -> GaussDB Centralized

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Kafka

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->KAFKA

  • DDM->MySQL

shard_length

Rows per shard during full synchronization

520000-1000000000 or 0

520000

int

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Oracle->TaurusDB

  • Oracle->DDM

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server -> GaussDB Centralized

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->DWS

  • DDM->KAFKA

  • DDM->MySQL

datamove_fetchsize

The size of the data reads from the source database during a full synchronization.

10-10000

The value range depends on the DRS task engine.

  • Oracle -> MySQL: 1000

  • Oracle->PostgreSQL

    : 1000

  • Oracle -> GaussDB Distributed: 10000

  • Oracle->TaurusDB

    : 1000

  • Oracle->DDM

    : 1000

  • Oracle->Kafka

    : 1000

int

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle->TaurusDB

  • Oracle->DDM

datamove_copy_mode

The write mode used when writing data to the destination database during an incremental synchronization. The write performance of COPY is higher than that of INSERT.

true indicates the COPY mode, and false indicates the INSERT mode.

true/false

true

boolean

Yes

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

datamove_split_partition

Whether to shard a partition table during full synchronization. true: Partition tables in the source database are sharded for parallel synchronization to improve the synchronization speed of large partitions. false: Partition tables are not sharded.

true/false

true

boolean

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle->TaurusDB

  • Oracle->DDM

read_log_num

Number of threads for obtaining logs from the source database during incremental synchronization.

1-16

2

int

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle->TaurusDB

  • Oracle->DDM

  • Oracle->Kafka

logminer_fetchsize

The size of the data reads when using LogMiner in scenarios where the source database is Oracle and incremental log read mode is set to LogMiner.

10-10000

1000

int

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Oracle->TaurusDB

  • Oracle->DDM

  • Oracle->Kafka

deal_hot_table

Whether to accelerate the replay of hot tables with frequent DML operations in the source database during incremental synchronization. true: The replay of hot tables is accelerated; false: The replay of hot tables is not accelerated.

true/false

false

boolean

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Oracle->TaurusDB

  • Oracle->DDM

  • Microsoft SQL Server->MySQL

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server -> GaussDB Centralized

  • Microsoft SQL Server->TaurusDB

  • Microsoft SQL Server->Microsoft SQL Server

  • DDM->DDM

  • DDM->DWS

  • DDM->MySQL

skip_all_ddl

Whether to ignore all DDL statements during incremental synchronization. If there are a lot of irrelevant DDL statements, enable this function to improve the incremental synchronization performance. true: All DDL statements are ignored. false: All DDL statements are not ignored.

true/false

false

boolean

Yes

  • Oracle->MySQL

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Oracle->TaurusDB

  • Oracle->DDM

  • Oracle->Kafka

  • DDM->DDM

  • DDM->MySQL

replace_invalid_time

Whether to replace the source time type with the default time when the source time type is invalid after being synchronized to the destination database during full+incremental synchronization. Default timestamp: 1970-01-01 00:00:00; default date: 1970-01-01; default time: 00:00:00. true: the source time type is replaced with the default time; false: the source time type is not replaced with the default time.

true/false

false

boolean

Yes

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Oracle -> GaussDB Centralized

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

  • Microsoft SQL Server -> GaussDB Centralized

replace_0x00

Whether to replace 0x00 characters that are not supported by the destination database with spaces during full+incremental synchronization. true: 0x00 characters are replaced with spaces; false: 0x00 characters are not replaced with spaces.

true/false

true

boolean

Yes

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

replace_0xefbfbd

Whether to replace abnormal characters with the default value '?' during full+incremental synchronization. DRS sets the character set of the JDBC client to UTF-8. During the query in the source database, abnormal bytes are converted to the UTF-8-encoded exception code EFBFBD. true: Abnormal code in UTF-8 encoding is replaced with '?'. false: Abnormal code is not replaced.

true/false

false

boolean

Yes

  • Oracle->PostgreSQL

  • Oracle -> GaussDB Distributed

  • Microsoft SQL Server->PostgreSQL

  • Microsoft SQL Server -> GaussDB Distributed

big_column_value_limit

Large field filtering threshold.

0-99 * 1024 * 1024

0

int

Yes

  • DDM->KAFKA

big_column_value_replace

Large field replacement characters.

A character string without special characters

-

string

Yes

  • DDM->KAFKA

datamove_replace_invalid_time

Whether to replace the source time type with the default time when the source time type is invalid after being synchronized to the destination database during a full synchronization. Default timestamp: 1970-01-01 00:00:00; default date: 1970-01-01; default time: 00:00:00. true: the source time type is replaced with the default time; false: the source time type is not replaced with the default time.

true/false

false

boolean

Yes

increment_replace_invalid_time

Whether to replace the source time type with the default time when the source time type is invalid after being synchronized to the destination database during an incremental synchronization. Default timestamp: 1970-01-01 00:00:00; default date: 1970-01-01; default time: 00:00:00. true: the source time type is replaced with the default time; false: the source time type is not replaced with the default time.

true/false

false

boolean

Yes

datamove_chunk_size

The amount of data transferred to the destination database at a time, in bytes.

1000-35000000

35000000

int

Yes

  • DDM->DDM

  • DDM->MySQL

skip_failed_ddl

Whether to skip failed DDL statements.

true/false

false

boolean

Yes

  • DDM->DDM

  • DDM->MySQL