Todos os produtos
Search
Central de documentação

AnalyticDB:Sincronizar dados com zero-ETL

Última atualização: Aug 20, 2026

AnalyticDB for MySQL oferece um recurso zero-ETL que permite criar um link do RDS for MySQL no AnalyticDB for MySQL. Esse recurso facilita o gerenciamento da sincronização de dados em um único console e integra o processamento transacional à análise de dados.

Visão geral

Na era do big data, as empresas frequentemente lidam com dados dispersos em diferentes sistemas e plataformas. Para utilizar essas informações de forma eficaz, elas geralmente dependem de ferramentas de extração, transformação e carga (ETL) para centralizar o gerenciamento de dados.

O ETL é um processo que extrai dados de sistemas de negócios upstream, transforma-os e limpa-os, carregando-os em seguida em um data warehouse. O objetivo é consolidar dados distribuídos em um data warehouse de destino para análises posteriores e possibilitar melhores decisões de negócios.

Os processos tradicionais de ETL costumam apresentar as seguintes desvantagens:

  • Aumento nos custos de recursos: Fontes de dados distintas podem exigir ferramentas de ETL diferentes. A construção de pipelines de dados ETL gera custos adicionais de recursos.

  • Maior complexidade do sistema: A manutenção das ferramentas de ETL por conta própria eleva a complexidade operacional e desvia o foco do desenvolvimento de aplicações.

  • Latência de dados: Alguns processos de ETL envolvem atualizações em lote periódicas. Em aplicações quase em tempo real, isso pode atrasar a geração de resultados analíticos.

Para resolver esses desafios, a Alibaba Cloud disponibiliza o recurso zero-ETL. Ele permite construir rapidamente uma tarefa de sincronização de dados entre um sistema de processamento transacional online (OLTP) e um sistema de processamento analítico online (OLAP). O recurso extrai, transforma e carrega automaticamente os dados do sistema OLTP para o data warehouse. Isso simplifica o gerenciamento de dados, integra o processamento transacional às análises e permite que você se concentre na análise essencial dos dados.

Benefícios

  • Facilidade de uso: Não é preciso criar e manter pipelines de dados complexos para ETL. Para criar uma tarefa de sincronização de dados em tempo real, basta selecionar a origem e o destino. Assim, você fica livre para focar no desenvolvimento da aplicação.

  • Custo zero: Links zero-ETL não geram cobranças adicionais. Analise os dados upstream no AnalyticDB for MySQL gratuitamente.

  • Agregação de múltiplas fontes: Utilize tarefas zero-ETL para sincronizar dados de várias instâncias em um único cluster AnalyticDB for MySQL em tempo real e crie uma visualização unificada para análise global.

Sincronização suportada

  • Sincronização de dados do RDS for MySQL para o AnalyticDB for MySQL.

  • Sincronização de dados do PolarDB for MySQL para o AnalyticDB for MySQL. Para mais informações, consulte Synchronize data from PolarDB for MySQL.

Pré-requisitos

  • Seu cluster AnalyticDB for MySQL e a instância RDS for MySQL devem estar na mesma região.

  • É necessário ter contas de banco de dados tanto para o cluster AnalyticDB for MySQL quanto para a instância RDS for MySQL.

Faturamento

As tarefas zero-ETL são gratuitas.

Observações de uso

  • O recurso zero-ETL está disponível apenas nas seguintes regiões: China (Beijing), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Zhangjiakou), China (Qingdao), China (Guangzhou), China (Hong Kong), Singapore, US (Silicon Valley) e US (Virginia).

  • Caso o número de tarefas zero-ETL no seu cluster AnalyticDB for MySQL atinja o limite, não será possível criar novas tarefas. Use o DTS para criar novas tarefas de sincronização de dados ou exclua tarefas zero-ETL não utilizadas para liberar capacidade. Os limites são os seguintes:

    • Se o total de ACUs reservadas do cluster for inferior a 24, é possível criar uma tarefa zero-ETL.

    • Se o total de ACUs reservadas do cluster for 24 ou mais, você poderá criar 3 + 3 * floor((Total ACUs - 24) / 50) tarefas zero-ETL.

      O resultado de floor((Total ACUs - 24) / 50) é arredondado para baixo até o inteiro mais próximo. Por exemplo, se um cluster tiver 48 ACUs, o cálculo será 3 + 3 * floor((48 - 24) / 50), que resulta em 3 + 3 * floor(0.48). Isso se simplifica para 3 + 3 * 0, permitindo a criação de 3 tarefas zero-ETL.

    Nota
    • Para um cluster Data Lakehouse Edition, o total de ACUs reservadas corresponde à soma das ACUs de computação reservadas e das ACUs de armazenamento reservadas.

    • Em um cluster Data Warehouse Edition, um núcleo equivale a uma ACU. Para um cluster no elastic mode, o total de ACUs reservadas é a soma dos núcleos dos recursos de computação e dos recursos de I/O elástico. Já para um cluster no reserved mode, o total de ACUs reservadas corresponde ao número de núcleos dos recursos de computação.

Preparações

Criar um AnalyticDB for MySQL

  1. Acesse a página Role no console RAM.

  2. Verifique se já existe uma função vinculada ao service chamada AliyunServiceRoleForAnalyticDBForMySQL. Caso contrário, crie a função.

  3. No painel de navegação à esquerda, clique em Create Role.

  4. Na caixa de diálogo Create Role, selecione Alibaba Cloud Service e clique em Next.

  5. Como tipo de função, selecione Service-Linked Role e, em seguida, escolha AnalyticDB for MySQL na lista suspensa de serviços.

  6. Clique em Finish. Retorne à lista de funções e verifique se a função vinculada ao service foi criada.

Conceder permissões a um usuário RAM

Um usuário RAM precisa dos dois tipos de permissão a seguir para criar e gerenciar tarefas zero-ETL.

Conceder permissões do AnalyticDB for MySQL

O usuário RAM deve ter a permissão de gerenciamento do AnalyticDB for MySQL, AliyunADBFullAccess, para criar e gerenciar links Zero-ETL no AnalyticDB for MySQL. Para obter instruções, consulte Manage RAM user permissions.

Conceder permissões zero-ETL

Para criar e gerenciar links Zero-ETL, o usuário RAM precisa ter permissões para criar links nas instâncias de source e de destino (AnalyticDB for MySQL). Você pode create a custom permission policy que permita ao usuário RAM criar links para todas as instâncias ou apenas para instâncias específicas da fonte de dados e do AnalyticDB for MySQL e, depois, anexar a política de permissão personalizada ao usuário RAM.

Veja a seguir exemplos de scripts para políticas de permissão personalizadas:

Autorizar todas as instâncias RDS for MySQL e clusters AnalyticDB for MySQL

{
    "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:*:*:*"
            ]
        }
    ]
}

Conceder permissões a uma instância RDS for MySQL e a um cluster AnalyticDB for MySQL específicos

{
    "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:*:*:*"
        }
    ]
}

Procedimento

  1. Faça login no console do AnalyticDB for MySQL. No canto superior esquerdo do console, selecione uma região. No painel de navegação à esquerda, clique em Clusters. Localize o cluster que deseja gerenciar e clique em no ID do cluster.

  2. Acesse a página do recurso zero-ETL. O ponto de entrada varia conforme a edição do cluster.

    • Para um cluster Enterprise Edition, Basic Edition ou Data Lakehouse Edition: No painel de navegação à esquerda, escolha Data Ingestion > Database Data Synchronization.

    • Para um cluster Data Warehouse Edition: No painel de navegação à esquerda, escolha Data Transmission Service > Zero-ETL.

  3. Clique em Create Zero-ETL Task. Na página Create Zero-ETL Task, configure as informações dos bancos de dados de source e de destino.

    • Configure as informações do banco de dados de source:

      Banco de dados de source

      Descrição

      Task Name

      Nome da tarefa zero-ETL.

      Database Type

      Selecione RDS for MySQL.

      Access Method

      Somente Alibaba Cloud Instance é suportado.

      Instance Region

      Região onde a instância RDS for MySQL está localizada.

      RDS Instance ID

      ID da instância RDS for MySQL.

      Database Account

      Conta do banco de dados da instância RDS for MySQL.

      Database Password

      Senha da conta do banco de dados da instância RDS for MySQL.

      Encryption

      Método de conexão com a instância RDS for MySQL. As opções incluem conexão não criptografada e conexão segura SSL.

      Nota

      Se você selecionar SSL-encrypted, será necessário ativar primeiro a criptografia SSL para a instância RDS for MySQL. Para mais informações, consulte Use a cloud certificate to quickly enable SSL encryption.

    • Configure as informações do banco de dados de destino:

      Banco de dados de destino

      Descrição

      Database Type

      Atualmente, apenas o AnalyticDB for MySQL 3.0 é suportado como destino.

      Access Method

      Somente Alibaba Cloud Instance é suportado.

      Instance Region

      Região onde o cluster AnalyticDB for MySQL está localizado.

      Instance ID

      ID do cluster AnalyticDB for MySQL.

      Database Account

      Conta do banco de dados do cluster AnalyticDB for MySQL.

      Database Password

      Senha da conta do banco de dados do cluster AnalyticDB for MySQL.

  4. Após configurar os parâmetros, clique em Test Connectivity and Proceed. Na página de configuração, defina os seguintes parâmetros:

    Parâmetro

    Descrição

    DDL and DML Operations to Be Synchronized

    Selecione as operações DML e DDL a serem sincronizadas. Todas as operações vêm selecionadas por padrão.

    Source Objects e Selected Objects

    Objetos de source no banco de dados e objetos a serem sincronizados.

    Advanced Settings (Optional)

    Configure intervalos de nova tentativa para indisponibilidade do banco de dados e outros problemas potenciais.

  5. Depois de concluir as configurações, clique em Next: Configure Database and Table Fields e configure as seguintes informações:

    Configuração

    Descrição

    Database Name

    Selecione um banco de dados existente.

    Table Name

    Selecione uma tabela existente.

    Primary Key Column

    Coluna de chave primária da tabela selecionada.

    Distribution Key

    Coluna de chave de distribuição da tabela selecionada.

    Type

    Tipo da tabela. As opções incluem tabela particionada e tabela replicada.

    Definition Status

    Após a configuração dos campos de banco de dados e tabela, o status muda de Undefined para Defined.

  6. Após configurar todos os parâmetros, clique em Next: Save Task Settings and Precheck.

  7. Se a pré-verificação for bem-sucedida, clique em Start para iniciar a tarefa zero-ETL.

    Na página Zero-ETL, visualize informações sobre a tarefa, incluindo seu ID/Name, Source/Destination e Status.

Monitoramento e alertas zero-ETL

Depois de criar e iniciar uma tarefa zero-ETL, defina regras de alerta no console CloudMonitor para monitorar seu status em tempo real. Siga estas etapas:

  1. Faça login no console Cloud Monitor.

  2. Visualize as informações de monitoramento.

    1. No painel de navegação à esquerda, escolha Cloud Service Monitoring > Cloud Service Monitoring.

    2. Passe o mouse sobre o cartão AnalyticDB for MySQL e clique em AnalyticDB for mysql 3.0 - ZeroETL Latency.

    3. Clique em um ID de cluster para visualizar as informações de monitoramento das tarefas zero-ETL nesse cluster.

  3. Crie uma regra de alerta.

    1. No painel de navegação à esquerda, clique em Alerts > Alert Rules.

    2. Clique em Create Alert Rule. No painel Create Alert Rule, configure uma regra de alerta para a tarefa zero-ETL. Para mais informações, consulte Create an alert rule.

      Nota

      Para o parâmetro Product, selecione AnalyticDB for mysql 3.0 - ZeroETL Latency.

  4. Crie uma política de assinatura.

    1. No painel de navegação à esquerda, clique em Event Center > Event Subscription.

    2. Clique em Create a subscription policy. Na página Create a subscription policy, configure a política de assinatura para a tarefa zero-ETL. Para mais informações, consulte Create an event subscription.

      Nota
      • Product: Selecione Analyticdb for mysql 3.0.

      • event types: Selecione Abnormal ou Restore.

      • Event Name: Selecione zero_etl_job_abnormal ou zero_etl_job_restore.