Overview of data synchronization solutions
The data synchronization feature of Data Transmission Service (DTS) synchronizes data in real time between different data sources. It captures data changes from a source database and synchronizes them to a target database in real time. Common use cases include version upgrades, data sharding or scaling, active geo-redundancy, geo-disaster recovery, cross-border data synchronization, query and report offloading, and real-time data warehousing. DTS helps you avoid the complexity, potential for errors, and performance challenges of managing data pipelines manually. This allows you to focus on your business instead of pipeline maintenance.
Billing
DTS charges for the data synchronization feature. For pricing details, see Billing overview.
Synchronization type
A DTS synchronization task includes three optional synchronization types for different business needs.
Recommended options
Initial synchronization: For an initial synchronization, we recommend selecting Schema Synchronization, Full Data Synchronization, and Incremental Data Synchronization.
Existing baseline data: If you have already populated the target database, you can select only Incremental Data Synchronization. However, you must ensure that the checkpoints are consistent between the source and target databases. This complex operation requires careful assessment.
Synchronization type | Description |
Schema Synchronization | Purpose: Automatically creates a schema in the target database that matches the source database. DTS synchronizes the schema definitions (such as tables, views, triggers, stored procedures, and indexes) from the source database to the target database. If the target database is empty, this option eliminates the need to create the schema manually. Important Some synchronization links do not support schema synchronization. Before you configure a synchronization task, you must manually create the required databases, tables, and views in the target database to match the source database schema. |
Full Data Synchronization | Purpose: Migrates historical data from the source database. DTS copies all existing data for the selected objects from the source database to the target database. This establishes a data baseline for subsequent Incremental Data Synchronization. |
Incremental Data Synchronization | Purpose: Continuously keeps the source and target databases in sync. DTS continuously captures incremental change statements (for example, from the Binlog of a MySQL database) for the objects to be synchronized in the source database. DTS then converts these statements for the target database and executes them to achieve real-time synchronization. Note Incremental Data Synchronization runs continuously and does not stop automatically. To stop it, you must manually stop DTS instance or release DTS instance. |
Synchronization topology
DTS supports two core synchronization topologies. For more information, see Data Synchronization Topology Introduction.
Synchronization topology | Description | Applicable scenarios |
One-way Synchronization | Data flows in one direction from a source database to one or more target databases. | Data sharding or scaling, query and report offloading, and building real-time data warehouses. |
Two-way Synchronization | Data flows in both directions between two databases. Changes made to either database are synchronized to the other. | Multi-site active-active, remote disaster recovery, and cross-border synchronization. |
Two-way Synchronization involves both a forward and a reverse synchronization task. To prevent a data loop, DTS imposes the following strict limitations when you configure or reset a bidirectional synchronization task:
Initialization rule: Only the task in one direction (for example, A to B) can perform Schema Synchronization and Full Data Synchronization. The task in the other direction (B to A) can only be configured for Incremental Data Synchronization.
Data loop prevention: Data synchronized from A to B is not synchronized back to A.
Reset risk: If you need to reset and reconfigure one of the tasks (for example, the forward task), we recommend that you reset both the forward and reverse tasks simultaneously and then reconfigure them. Otherwise, when the forward task is performing Schema Synchronization and Full Data Synchronization, the system automatically removes the synchronized objects configured in the reverse task. This can cause the Two-way Synchronization task to behave unexpectedly.
Synchronization solutions
DTS supports synchronization solutions that start from the following data sources. You can browse the specific solutions based on your business needs to view the supported versions, synchronization types, and configuration steps.