All Products
Search
Document Center

AnalyticDB:Synchronize data using seamless integration (Zero-ETL)

Last Updated:Mar 28, 2026

AnalyticDB for MySQL seamless integration (Zero-ETL) lets you build real-time data synchronization pipelines from RDS for MySQL to AnalyticDB for MySQL—no ETL tools to build or maintain.

How it works

A Zero-ETL pipeline continuously extracts and loads data changes (DML and DDL operations) from RDS for MySQL into an AnalyticDB for MySQL cluster. There is no intermediary transformation layer. After the pipeline is active, you can run analytics directly on the synchronized data.

RDS for MySQL  →  Zero-ETL pipeline  →  AnalyticDB for MySQL
  (OLTP source)      (real-time sync)      (OLAP analytics)

Benefits

  • No pipeline management: Select the source database and destination cluster, and the pipeline handles the rest. No ETL infrastructure to build or operate.

  • Free of charge: Zero-ETL pipelines have no additional cost. Analyze upstream data in AnalyticDB for MySQL at no extra charge.

  • Multi-source aggregation: Synchronize data from multiple RDS for MySQL instances to a single AnalyticDB for MySQL cluster for a unified analytics view.

Supported pipelines

Billing

Data synchronization pipelines are free of charge.

Limitations

Regional availability

The seamless integration (Zero-ETL) feature is available in the following regions: China (Beijing), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Zhangjiakou), China (Qingdao), China (Guangzhou), Hong Kong (China), Singapore, US (Silicon Valley), and US (Virginia).

Pipeline quota

The number of Zero-ETL pipelines per cluster depends on the cluster's total reserved AnalyticDB Compute Units (ACUs):

Total reserved ACUsMaximum Zero-ETL pipelines
Less than 24 ACUs1
24 ACUs or more3 + 3 × floor((Total ACUs − 24) / 50)

For example, a cluster with 48 ACUs can have 3 + 3 × floor((48 − 24) / 50) = 3 + 0 = 3 pipelines.

If the quota is reached, delete unused pipelines or use Data Transmission Service (DTS) to create additional synchronization pipelines.

How ACUs are counted depends on the cluster edition:
Data Lakehouse Edition: Total ACUs = reserved computing resources (ACUs) + reserved storage resources (ACUs).
Data Warehouse Edition, Elastic mode: Total ACUs = cores of computing resources + elastic I/O units.
Data Warehouse Edition, Reserved mode: Total ACUs = cores of computing resources.

Prerequisites

Before you begin, ensure that you have:

  • An AnalyticDB for MySQL cluster and an RDS for MySQL instance in the same region

  • Database accounts for both the AnalyticDB for MySQL cluster and the RDS for MySQL instance

Prepare your account and permissions

Create a service-linked role for AnalyticDB for MySQL

  1. Go to the Roles list in the Resource Access Management (RAM) console.

  2. Check whether a service-linked role named AliyunServiceRoleForAnalyticDBForMySQL exists. If it does, skip the remaining steps.

  3. Click Create Role.

  4. In the Create Role dialog, select Alibaba Cloud Service, then click Next.

  5. Set Role Type to Service-Linked Role and select AnalyticDB for MySQL.

  6. Click OK. Verify that the role appears in the role list.

Grant permissions to a RAM user

A RAM user needs two types of permissions to create and manage Zero-ETL pipelines.

AnalyticDB for MySQL management permission

Grant the RAM user the AliyunADBFullAccess permission. For details, see Manage RAM user permissions.

Zero-ETL pipeline permission

Create a custom policy and attach it to the RAM user. The policy grants DTS actions on both the source RDS for MySQL instance and the destination AnalyticDB for MySQL cluster.

Grant access to all RDS for MySQL instances and AnalyticDB for MySQL clusters

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "dts:*",
            "Resource": [
                "acs:adb:*:*:*",
                "acs:rds:*:*:*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "dts:DescribeRegions",
                "dts:DescribeConfigRelations",
                "dts:DescribeSrcLinkConfig",
                "dts:DescribeDestLinkConfig",
                "dts:DescribeLinkConfig"
            ],
            "Resource": [
                "acs:dts:*:*:*"
            ]
        }
    ]
}

Grant access to specific instances and clusters

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "dts:*",
            "Resource": [
                "acs:adb:*:*:dbcluster/am-2zeod8ax4b9a****",
                "acs:rds:*:*:dbinstance/rm-2ze6fs8ouh43****"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "dts:DescribeRegions",
                "dts:DescribeConfigRelations",
                "dts:DescribeSrcLinkConfig",
                "dts:DescribeDestLinkConfig",
                "dts:DescribeLinkConfig"
            ],
            "Resource": "acs:dts:*:*:*"
        }
    ]
}

Create a Zero-ETL pipeline

  1. Log on to the AnalyticDB for MySQL console. In the upper-left corner, select a region. In the left navigation pane, click Clusters, then click the cluster ID.

  2. Go to the Zero-ETL page. The navigation path depends on your cluster edition:

    • Enterprise Edition, Basic Edition, or Data Lakehouse Edition: Choose Data Ingestion > Database Data Synchronization.

    • Data Warehouse Edition: Choose Data Transmission Service > Zero-ETL.

  3. Click Create Zero-ETL Task. Configure the source and destination database settings.

    Source database settings:

    SettingDescription
    Task nameA name for the Zero-ETL task.
    Database typeSelect RDS for MySQL.
    Access methodOnly Alibaba Cloud Instance is supported.
    Instance regionThe region where the RDS for MySQL instance resides.
    RDS instance IDThe ID of the RDS for MySQL instance.
    Database accountThe database account for the RDS for MySQL instance.
    Database passwordThe password for the database account.
    EncryptionUnencrypted Connection or SSL Secure Connection. If you select SSL, enable SSL encryption on the RDS for MySQL instance first. See Use a cloud certificate to quickly enable SSL encryption.

    Destination database settings:

    SettingDescription
    Database typeOnly AnalyticDB for MySQL 3.0 is supported.
    Access methodOnly Alibaba Cloud Instance is supported.
    Instance regionThe region where the AnalyticDB for MySQL cluster resides.
    Instance IDThe ID of the AnalyticDB for MySQL cluster.
    Database accountThe database account for the AnalyticDB for MySQL cluster.
    Database passwordThe password for the database account.
  4. Click Test Connectivity and Proceed. Configure the synchronization settings:

    SettingDescription
    DDL and DML operations to be synchronizedThe DML and DDL operations to synchronize. All operations are selected by default.
    Source objects and Selected objectsThe database objects to synchronize.
    Advanced settings (optional)The retry time for source or destination database connection failures.
  5. Click Next: Configure Database and Table Fields. Configure the target table settings:

    SettingDescription
    Database nameSelect an existing database.
    Table nameSelect an existing table.
    Primary key columnThe field that serves as the primary key in the target table.
    Distribution keyThe field that serves as the distribution key.
    TypePartitioned Table or Replicated Table.
    Definition statusChanges from Undefined to Defined after configuration is complete.
  6. Click Next: Save Task Settings and Precheck.

  7. After the precheck passes, click Start.

The task appears on the Seamless Data Integration page, where you can view its ID/Name, Source/Destination, and Status.

Monitor Zero-ETL tasks

Set up monitoring and alerts

Use Cloud Monitor to track latency and receive alerts when a task encounters errors.

View monitoring data:

  1. Log on to the Cloud Monitor console.

  2. In the left navigation pane, choose Resource Monitoring > Cloud Service Monitoring.

  3. Hover over the AnalyticDB for MySQL card and click AnalyticDB for mysql 3.0 - ZeroETL Latency.

  4. Click a cluster ID to view the latency metrics for its Zero-ETL tasks.

Create an alert rule:

  1. In the left navigation pane, click Alerts > Alert Rules.

  2. Click Create Alert Rule. In the panel, set Product to AnalyticDB for MySQL 3.0 - ZeroETL Latency and configure the alert thresholds. For details, see Create an alert rule.

Create an event subscription:

  1. In the left navigation pane, click Event Hub > Event Subscriptions.

  2. Click Create Subscription Policy. Configure the subscription with the following settings, then save: For details, see Create an event subscription.

    • Product: AnalyticDB for MySQL 3.0

    • Event type: Abnormal or Restore

    • Event name: ZeroETL Task Abnormal or ZeroETL Task Recovered

What's next