This topic provides answers to some frequently asked questions (FAQ) about Data Transmission Service (DTS).
-
Popular questions
-
Specifications and billing
-
Features
-
Can I migrate or synchronize data across Alibaba Cloud accounts?
-
Can I migrate, synchronize, or track the changes of data in read-only database instances?
-
Can I migrate or synchronize database shards and table shards?
-
Can I migrate or synchronize data across time zones and character sets?
-
Can I change the names of objects that are migrated or synchronized to the destination database?
-
-
Configuration
What types of databases does DTS support?
DTS supports data transmission between various data sources, such as relational database management systems (RDBMS), NoSQL databases, and online analytical processing (OLAP) databases. For more information, see Supported databases.
DTS also supports migrating or synchronizing databases from third-party cloud providers to Alibaba Cloud. For more information, see Overview of migration solutions.
How do data migration, data synchronization, and data change tracking work?
For more information, see Architecture.
What are the differences between data migration and data synchronization?
|
Item |
Data migration |
Data synchronization |
|
Scenarios |
This feature is mainly used for cloud migration, such as migrating on-premises databases, self-managed databases on ECS instances, or third-party cloud databases to Alibaba Cloud databases. This is a one-time task. After the migration is complete, you can release the instance. |
This feature is mainly used for real-time data synchronization between two data sources. It applies to scenarios such as active geo-redundancy, data disaster recovery, cross-border data synchronization, query and report offloading, cloud business intelligence (BI), and real-time data warehouses. After you create a data synchronization task, it continuously synchronizes data between the specified data sources to ensure data consistency. |
|
Supported databases |
For more information, see Overview of migration solutions. |
For more information, see Overview of data synchronization solutions. |
|
Supported database deployment locations |
|
Note
Data synchronization uses internal network transmission, which ensures lower network latency. |
|
Feature differences |
|
|
|
Billing methods |
Only pay-as-you-go is supported. |
Supports pay-as-you-go and subscription. |
|
Billing rules |
You are billed only when incremental data migration is running, including when it is paused. Schema migration and full data migration are not billed. |
|
For some databases that are not supported by data synchronization, such as MongoDB instances, you can use incremental data migration to synchronize data.
How is the synchronization latency measured?
The synchronization latency is the difference between the timestamp of the latest synchronized data in the destination database and the current timestamp. The latency is measured in milliseconds.
Under normal conditions, the latency is within 1,000 ms.
What can I do if DTS cannot connect to the source or destination database?
For more information, see Source database connectivity check and Destination database connectivity check.
What is the billing method of DTS?
For more information about, see Billing overview.
What are the differences between the link specifications?
For more information, see Data Migration Link Specifications and Data Synchronization Link Specifications.
Can I downgrade the specifications of a data synchronization instance or data migration instance?
No, this feature is not supported now.
Why is the price of data synchronization higher than that of data migration?
Data synchronization comes with more advanced features. For example, you can modify the objects to be synchronized. You can configure two-way data synchronization between MySQL databases. In addition, the data synchronization feature ensures low network latency through data transmission over an internal network.
Can I migrate or synchronize data across Alibaba Cloud accounts?
-
Data migration
-
DTS supports cross-account migration for RDS for MySQL instances. For more information, see Migrate RDS instances across Alibaba Cloud accounts.
-
For information about how to perform cross-account migration of PolarDB for MySQL clusters, see Migrate PolarDB for MySQL across Alibaba Cloud accounts.
-
For other database types, such as DRDS, Redis, and MongoDB, you can perform cross-account migration using the Self-managed database with a public IP address option.
-
-
DTS supports cross-account synchronization only for RDS for MySQL instances. For more information, see Synchronize data between RDS instances that belong to different Alibaba Cloud accounts.
NoteBecause data synchronization does not support connecting to database instances using the Self-managed database with a public IP address option, cross-account synchronization is not supported for other database types.
How do I migrate or synchronize data from or to database instances that reside in regions not supported by DTS?
-
For a data migration task, you can apply for a public endpoint for the database instance, such as an RDS for MySQL instance. Then, you can connect to it using the Self-managed database with a public IP address option. When you create the DTS instance, select a region that DTS supports, such as China (Hangzhou). You must add the CIDR blocks of the DTS servers in the selected region to the whitelist of the database instance. For more information, see Add the CIDR blocks of DTS servers to a whitelist.
-
For data synchronization tasks, this scenario is not supported. This is because data synchronization does not allow you to connect to database instances using the Self-managed database with a public IP address option.
Can I migrate, synchronize, or track the changes of data in read-only database instances?
Only full data migration and schema migration support read-only database instances, such as ApsaraDB for RDS instances and PolarDB clusters, as sources. Incremental data migration, data synchronization, and data change tracking do not support read-only database instances as sources. This is because incremental data migration, data synchronization, and data change tracking require the system to read incremental logs such as binary logs. However, the system does not generate transaction logs for read-only database instances.
Can I migrate data within a single database instance?
Yes, you can. For more information, see Data synchronization or migration between different database names.
Can I migrate or synchronize DML and DDL operations?
Yes, you can migrate or synchronize DML and DDL operations between relational databases. The supported DML operations are INSERT, UPDATE, and DELETE. The supported DDL operations are CREATE, DROP, ALTER, RENAME, and TRUNCATE.
The supported DML and DDL operations vary based on the scenario. For example, when you synchronize data from MySQL to AnalyticDB for MySQL (2.0), only the CREATE TABLE, ALTER TABLE, and DROP TABLE DDL operations are supported, and only the INSERT, UPDATE, and DELETE DML operations are supported. To view the supported operations for a specific scenario, select the link that meets your business needs in Overview of migration solutions or Overview of data synchronization solutions, and then refer to the configuration documentation for that scenario.
Can I migrate or synchronize database shards and table shards?
Yes, you can migrate or synchronize database shards and table shards. For example, you can migrate or synchronize database shards and table shards from a MySQL database or a PolarDB for MySQL cluster to an AnalyticDB for MySQL database. This lets you merge multiple tables.
Can I migrate or synchronize data across time zones and character sets?
Yes, it is supported.
Can I change the names of objects that are migrated or synchronized to the destination database?
Yes, you can change the names of columns, tables, and databases using the object name mapping feature. For more information, see Database, table, and column mapping and Rename an object to be synchronized.
Can I filter fields or data?
Yes, you can filter fields or data in a table. For more information, see Filter the data to be migrated and Use SQL conditions to filter data.
Can I add or remove objects to be synchronized?
Yes, you can add or remove objects to be synchronized. For more information, see Add an object to a data synchronization task and Remove synchronization objects.
What will happen if I modify data in the destination database during data synchronization or migration? Will the modification take effect?
-
Modifying data in the destination database during a task can cause the DTS task to fail. If you perform operations on the objects being migrated or synchronized in the destination database, issues such as primary key conflicts or missing records for an update may occur, which causes the DTS task to fail. However, you can perform operations that do not interrupt the DTS task. For example, if you create a new table in the destination instance and write data to it, the DTS task will not fail because the new table is not an object being migrated or synchronized.
-
DTS reads data from the source database and migrates or synchronizes the full data, schema, and incremental data to the destination instance. Therefore, any modifications made to the destination database during the task may be overwritten by data from the source database.
Why is the size of data in the destination database smaller than that in the source database after data migration is complete?
If the data to be migrated is filtered or the source database has many table shards, the size of data in the destination database may be smaller than that in the source database after data migration is complete.
How do I view the performance of data migration or synchronization?
For more information, see View the connection status and performance of incremental data migration or View the connection status and performance of data synchronization.
How do I configure latency alerts and thresholds??
DTS provides a monitoring and alerting feature. You can set alert rules for important monitoring metrics in the console to receive immediate notifications about the running status. For more information, see Configure Monitoring and Alerting.
How to consume subscribed data?
-
Legacy change tracking: You can consume tracked data using a software development kit (SDK). For more information, see Use an SDK to consume tracked data.
NoteCurrently, the SDK is available only in Java. For information about SDK versions, see Download an SDK.
-
New change tracking: You can consume tracked data using a Kafka client. For more information, see Use a Kafka client to consume tracked data.