The data synchronization feature supports multiple types of synchronization topologies. You can plan your data synchronization instances based on your business requirements. This topic describes the synchronization topologies that are supported by Data Transmission Service (DTS) and how to use these topologies.

One-way synchronization

To ensure data consistency for one-way synchronization, we recommend that you perform only read operations on the objects in the destination instance. Do not perform write operations on the objects.

Topology typeTopologyDescription
One-way one-to-one synchronizationOne-way one-to-one synchronizationNone
One-way one-to-many synchronizationOne-way one-to-many synchronization

You must purchase multiple data synchronization instances to implement one-way one-to-many synchronization.

For example, if you want to synchronize data from Instance A to Instance B, Instance C, and Instance D, you must purchase three data synchronization instances.

One-way cascade synchronizationOne-way cascade synchronization

You must purchase multiple data synchronization instances to implement one-way cascade synchronization.

For example, if you want to synchronize data from Instance A to Instance B and then from Instance B to Instance C, you must purchase two data synchronization instances.

One-way many-to-one synchronizationOne-way many-to-one synchronization

You must purchase multiple data synchronization instances to implement one-way many-to-one synchronization.

For example, if you want to synchronize data from Instance B, Instance C, and Instance D to Instance A, you must purchase three data synchronization instances.

Note To ensure data consistency, you must select different objects to synchronize for these data synchronization instances.

Two-way synchronization

Table 1. Instances that support two-way synchronization
Source instanceDestination instance
MySQL
  • MySQL
  • PolarDB for MySQL
  • PolarDB-X
    Note You need to purchase a data synchronization instance before you configure two-way synchronization between a MySQL database and a PolarDB-X instance. For more information about how to purchase a DTS instance, see Purchase a DTS instance.
PolarDB for MySQL
  • MySQL
  • PolarDB for MySQL
  • PolarDB-X
    Note You need to purchase a data synchronization instance before you configure two-way synchronization between a PolarDB for MySQL cluster and a PolarDB-X instance. For more information about how to purchase a DTS instance, see Purchase a DTS instance.
PostgreSQL
  • PostgreSQL
  • PolarDB for PostgreSQL
    Note You need to purchase a data synchronization instance before you configure two-way synchronization between PostgreSQL databases. For more information about how to purchase a DTS instance, see Purchase a DTS instance.
PolarDB for PostgreSQL
  • PostgreSQL
  • PolarDB for PostgreSQL
Note You need to purchase a data synchronization instance before you configure two-way synchronization between a PolarDB for PostgreSQL cluster and a PostgreSQL database or a PolarDB for PostgreSQL cluster. For more information about how to purchase a DTS instance, see Purchase a DTS instance.
Tair or RedisTair or Redis
MongoDBMongoDB
DTS supports only two-way synchronization between two databases. DTS does not support two-way synchronization between multiple databases.
Note
Topology typeTopologyDescription
Two-way one-to-one synchronizationTwo-way synchronization
To ensure data consistency, make sure that data records with the same primary key, business primary key, or unique key are updated on only one of the source and destination instances.
Note If data records are updated on both the source and destination instances, DTS responds to conflicts based on the conflict resolution policy that you specify for the data synchronization task.

References