Updated on 2024-12-01 GMT+08:00

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.
  • You can change parameters only for the synchronization tasks of the following engines: For details about common task parameters, see Task Parameter Description.
    • MySQL->MySQL
    • MySQL->PostgreSQL
    • MySQL -> GaussDB Distributed
    • MySQL -> GaussDB Primary/Standby
    • MySQL->GaussDB(DWS)
    • MySQL->GaussDB(for MySQL)
    • MySQL->Kafka
    • MySQL->CSS/ES
    • MySQL->Oracle
    • Oracle->MySQL
    • Oracle->PostgreSQL
    • Oracle -> GaussDB Distributed
    • Oracle -> GaussDB Primary/Standby
    • Oracle->GaussDB(for MySQL)
    • Oracle->DDM
    • Oracle->Kafka
    • Microsoft SQL Server->MySQL
    • Microsoft SQL Server->PostgreSQL
    • Microsoft SQL Server -> GaussDB Distributed
    • Microsoft SQL Server -> GaussDB Primary/Standby
    • Microsoft SQL Server->GaussDB(for MySQL)
    • Microsoft SQL Server->Kafka
    • Microsoft SQL Server->Microsoft SQL Server
    • DB2 for LUW -> GaussDB Distributed
    • DB2 for LUW -> GaussDB Primary/Standby

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, change the parameters of the current synchronization task.

    Figure 1 Parameters

  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 or 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.

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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Microsoft SQL Server
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Microsoft SQL Server
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle
  • Oracle->MySQL
  • Oracle->PostgreSQL
  • Oracle -> GaussDB Distributed
  • Oracle -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • Oracle->DDM
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Microsoft SQL Server
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle

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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle

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 -> GaussDB Primary/Standby: 120000-2147483647 ms
  • MySQL -> GaussDB(DWS): 120000-2147483647 ms
  • MySQL -> GaussDB (for MySQL): 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 -> GaussDB Primary/Standby: 600000-2147483647 ms
  • Oracle -> GaussDB(for MySQL): 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 -> GaussDB Primary/Standby: 360000-2147483647 ms
  • Microsoft SQL Server -> GaussDB(for MySQL): 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 -> PostgreSQ: 120000 ms
  • MySQL -> GaussDB Distributed: 120000 ms
  • MySQL -> GaussDB Primary/Standby: 120000 ms
  • MySQL -> GaussDB(DWS): 120000 ms
  • MySQL -> GaussDB (for MySQL): 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 Primary/Standby: 600000 ms
  • Oracle -> GaussDB(for MySQL): 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 Primary/Standby: 360000 ms
  • Microsoft SQL Server -> GaussDB(for MySQL): 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 -> GaussDB Primary/Standby
  • MySQL->GaussDB(DWS)
  • MySQL->GaussDB(for MySQL)
  • MySQL->Kafka
  • MySQL->CSS/ES
  • MySQL->Oracle
  • Oracle->MySQL
  • Oracle->PostgreSQL
  • Oracle -> GaussDB Distributed
  • Oracle -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • Oracle->DDM
  • Oracle->Kafka
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Kafka
  • Microsoft SQL Server->Microsoft SQL Server

shard_length

Rows per shard during full synchronization

520000-1000000000 or 0

520000

int

Yes

  • Oracle->MySQL
  • Oracle->PostgreSQL
  • Oracle -> GaussDB Distributed
  • Oracle -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • Oracle->DDM
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Microsoft SQL Server
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 -> GaussDB Primary/Standby: 10000
  • Oracle->GaussDB(for MySQL)

    : 1000

  • Oracle->DDM

    : 1000

  • Oracle->Kafka

    : 1000

int

Yes

  • Oracle->MySQL
  • Oracle->PostgreSQL
  • Oracle -> GaussDB Distributed
  • Oracle -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • 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
  • Oracle -> GaussDB Primary/Standby
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • 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 -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • 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 Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • 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

fasle

boolean

Yes

  • Oracle->MySQL
  • Oracle->PostgreSQL
  • Oracle -> GaussDB Distributed
  • Oracle -> GaussDB Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • Oracle->DDM
  • Microsoft SQL Server->MySQL
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • Microsoft SQL Server->GaussDB(for MySQL)
  • Microsoft SQL Server->Microsoft SQL Server
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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 Primary/Standby
  • Oracle->GaussDB(for MySQL)
  • Oracle->DDM
  • Oracle->Kafka

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 Primary/Standby
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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
  • Oracle -> GaussDB Primary/Standby
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby

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
  • Oracle -> GaussDB Primary/Standby
  • Microsoft SQL Server->PostgreSQL
  • Microsoft SQL Server -> GaussDB Distributed
  • Microsoft SQL Server -> GaussDB Primary/Standby
  • DB2 for LUW -> GaussDB Distributed
  • DB2 for LUW -> GaussDB Primary/Standby