Todos os produtos
Search
Central de documentação

DataWorks:Tarefa de sincronização completa de banco de dados em lote

Última atualização: Jun 27, 2026

A sincronização de banco de dados em lote do DataWorks replica esquemas de tabelas e dados de um banco de dados de source para um destino conforme uma programação recorrente. Esse recurso oferece suporte à sincronização completa, incremental ou a uma combinação de ambas. Este tópico utiliza a sincronização de MySQL para MaxCompute como exemplo.

Antes de começar

Antes de iniciar, certifique-se de ter:

Observações de uso

As tarefas de sincronização de banco de dados em lote estão disponíveis tanto no DataStudio quanto em Data Integration. Ambos os módulos compartilham a mesma interface de configuração, parâmetros e funcionalidades.

Tarefas criadas no Data Integration aparecem automaticamente no diretório data_integration_jobs do DataStudio, organizadas pelo canal SourceType-DestinationType.

Configure uma tarefa de sincronização

Etapa 1: Crie uma tarefa de sincronização

  1. Faça login no console do DataWorks. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha Data Integration > Data Integration. Selecione seu workspace e clique em Go to Data Integration.

  2. Na barra de navegação à esquerda, clique em Synchronization Task e, em seguida, clique em Create Synchronization Task. Configure os seguintes itens:

    • Data Source Type (source): MySQL

    • Data Source Type (destino): MaxCompute

    • Specific Type: Full database offline

    • Synchronization Mode: Selecione uma ou mais Synchronization Steps. Cada etapa funciona em conjunto com a configuração de Full and Incremental Control para definir sua estratégia de sincronização.

      Etapa de sincronização

      Descrição

      Schema Migration

      Cria objetos de banco de dados (tabelas, campos, tipos de dados) no destino para corresponder à source. Não copia dados.

      Full Synchronization (opcional)

      Copia todos os dados históricos das tabelas de source para o destino em uma única operação. Utilizado para inicialização de dados ou migração de sistemas.

      Incremental Sync (opcional)

      Após a sincronização completa, captura continuamente novos dados da source com base na condição incremental e os grava no destino.

Etapa 2: Configure fontes de dados e recursos de execução

  1. Em Source Data Source, selecione a fonte de dados MySQL adicionada ao seu workspace. Em Destination, selecione a fonte de dados MaxCompute.

  2. Em Running Resources, selecione um Resource Group e defina as Resource Group CUs. Caso a tarefa falhe com um erro de falta de memória (OOM), aumente a alocação de CU.

  3. Execute o Connectivity Check para confirme se ambas as fontes de dados estão acessíveis a partir do grupo de recursos.

Etapa 3: Configure a solução de sincronização

1. Selecione tabelas de source

Em Source tables, selecione as tabelas a serem sincronizadas e clique em no ícone de seta para movê-las para Selected tables.

image

Para bancos de dados grandes, utilize Database Filtering ou Table filtering para selecione tabelas por expressão regular.

2. Inicializar partições de destino

Clique em Configuration ao lado de Partition Initialization Configuration para defina partições padrão para novas tabelas de destino. Essa configuração aplica-se a todas as novas tabelas; tabelas já configuradas não são afetadas.

3. Defina o modo de sincronização

Escolha como a tarefa será executada com base no seu caso de uso. Se você selecione sincronização completa e incremental, o modo fica bloqueado para: uma sincronização completa única seguida de sincronização incremental recorrente. Essa opção não pode ser alterada.

Etapas de sincronização

Controle de sincronização

Comportamento

Recomendado para

Sincronização completa

Execução única

Sincroniza todos os dados da tabela de source uma vez para a tabela de destino ou para uma partição especificada

Inicialização de dados, migração de sistema

Sincronização completa

Recorrente

Sincroniza periodicamente todos os dados da tabela de source conforme a programação configurada

Reconciliação de dados, snapshot completo T+1

Sincronização incremental

Execução única

Sincroniza dados incrementais uma vez com base na condição incremental

Reparo manual de dados para um lote específico

Sincronização incremental

Recorrente

Sincroniza periodicamente dados incrementais com base no ciclo de agendamento e na condição incremental

ETL diário, tabelas de dimensão de mudança lenta

Sincronização completa + sincronização incremental

Integrado (não selecionável)

Primeira execução: migração de esquema + sincronização completa. Execuções subsequentes: sincronização incremental recorrente

Data warehousing com um clique ou ingestão de data lake

O sistema gera instâncias para tarefas agendadas utilizando o método Generate immediately after publishing. Consulte Método de geração de instância: Generate immediately after publishing .
É possível defina o método de geração de partições na etapa subsequente de Value assignment, usando constantes ou gerando partições dinamicamente com variáveis predefinidas pelo sistema e parâmetros de agendamento periódico.
As configurações de ciclo de agendamento, condição incremental e método de geração de partição são interligadas. Para mais informações, consulte Configure a condição incremental abaixo.

Se sua tarefa envolver sincronização periódica, clique em Scheduling Parameters for Periodical Scheduling para configure o agendamento. Use esses parâmetros para defina a incremental condition e o field assignment para o mapeamento da tabela de destino.

4. Configure o mapeamento da tabela de destino

Defina as regras de mapeamento entre as tabelas de source e de destino, incluindo a forma como os dados são gravados.

image

Ação

Descrição

Refresh mapping

Lista as tabelas de source selecionadas e aplica as propriedades da tabela de destino. Selecione as tabelas e clique em Batch Refresh Mapping. O nome padrão da tabela de destino é ${SourceDatabaseName}_${TableName}. Se uma tabela com esse nome não existir no destino, ela será criada automaticamente.

Edit field type mapping (opcional)

Clique em Edit Mapping of Field Data Types para personalizar o mapeamento dos tipos de campo de source para os tipos de campo de destino. Clique em Apply and Refresh Mapping ao terminar. Mapeamentos de tipo incorretos podem causar dados inconsistentes e falhas na tarefa.

Customize destination table name mapping (opcional)

A regra de nomenclatura padrão é ${source_database_name}_${table_name}. Clique em Edit na coluna Customize Mapping Rules for Destination Table Names para defina uma regra personalizada usando texto em Manually enter e Built-in Variables (nome da fonte de dados de source, nome do banco de dados ou nome da tabela). Também há suporte para transformações de string em variáveis integradas. Cenários suportados: (1) adicionar prefixo ou sufixo aos nomes das tabelas de source; (2) substituir uma string globalmente (por exemplo, substituir dev_ por prd_); (3) mesclar várias tabelas de source em uma única tabela de destino.

Customize destination database name mapping (opcional)

Para destinos que suportam mapeamento no nível de banco de dados (como Hologres), defina regras de mapeamento para bancos de dados de destino. A configuração segue o mesmo método do mapeamento de nomes de tabelas.

Customize destination schema name mapping (opcional)

Para destinos que suportam mapeamento no nível de esquema (como Hologres), defina regras de mapeamento para esquemas de destino. A configuração segue o mesmo método do mapeamento de nomes de tabelas.

Edit destination table schema (opcional)

O sistema gera automaticamente o esquema de destino a partir da source. Para personalizar: adicione um campo a uma única tabela clicando em no botão na coluna Target Table; adicione campos em massa selecionando tabelas e escolhendo Batch Edit > Batch Modify Table Schema. Não há suporte para renomear colunas.

Value assignment

Campos padrão são mapeados automaticamente por nome. Atribua valores manualmente para campos de partição e quaisquer novos campos adicionados. Para uma única tabela, clique em Configuration na coluna Value assignment. Para atribuição em massa, use Batch Edit > Value assignment. Tipos de atribuição suportados: insira uma constante ou um parâmetro de agendamento diretamente (como ${bizdate}), ou selecione uma variável de sistema na lista suspensa. Durante a execução, o sistema substitui variáveis e parâmetros de agendamento por valores específicos da data.

Set source sharding column

Selecione um campo da tabela de source para fragmentar a sincronização em leituras em lote paralelas. Utilize a chave primária da tabela. Tipos string, float e date não são suportados. Atualmente, há suporte apenas quando a source é MySQL.

Customize advanced parameters

Configure a Writer Configuration e a Runtime Configuration por subtarefa. Modifique apenas quando compreender totalmente cada parâmetro — valores incorretos podem causar latência na tarefa, contenção de recursos ou perda de dados.

Table type

Para destinos MaxCompute, os tipos de tabela suportados são tabelas padrão, PK Delta Tables e Append Delta Tables. Selecione o tipo de tabela ao edite o esquema de uma tabela com status "To be created". O tipo de uma tabela existente não pode ser alterado. Consulte Delta Table.

5. Configure o agendamento recorrente

Se a sincronização incremental for executada em um agendamento recorrente, configure as definições de agendamento para cada tabela de destino: Scheduling Frequency, Data Timestamp e Resource Group for Scheduling. Essas configurações seguem o mesmo formato do agendamento de nós no DataStudio. Consulte Configuração de agendamento de nó.

Se uma tarefa de sincronização única envolver muitas tabelas, escalone os horários de execução para evitar acúmulos de tarefas e contenção de recursos.

6. Configure a condição incremental

Caso a tarefa sincronize dados incrementais, defina uma condição incremental para controlar quais dados cada instância agendada processa.

A condição incremental é uma expressão de cláusula WHERE — insira apenas a expressão condicional sem a palavra-chave WHERE.

Usar parâmetros de agendamento para filtragem baseada em tempo

Para sincronizar dados do dia anterior, defina a condição como:

STR_TO_DATE('${bizdate}', '%Y%m%d') <= columnName AND columnName < DATE_ADD(STR_TO_DATE('${bizdate}', '%Y%m%d'), INTERVAL 1 DAY)

Gravar em uma partição por data

Combine a condição incremental com o campo de partição da tabela de destino para direcionar cada lote à partição correta. Com a condição acima, defina o campo de partição como ds=${bizdate}. Cada instância diária sincroniza os dados do dia anterior e os grava na partição correspondente.

Ao alinhar o intervalo de tempo na condição incremental, o intervalo de geração de partição e o ciclo de agendamento, você cria um pipeline de ETL incremental T+n automatizado onde as regras de negócio e as partições físicas permanecem sincronizadas.

Etapa 4: Configure definições avançadas

Parâmetros avançados

Para ajustar a tarefa para requisitos de sincronização personalizados:

  1. Clique em Advanced Configuration no canto superior direito.

  2. Atualize os valores dos parâmetros usando as descrições inline como guia.

  3. (Opcional) Utilize a configuração assistida por IA: insira uma instrução em linguagem natural (como "ajustar concorrência da tarefa") e o sistema gerará valores recomendados para sua revisão.

    image

Importante

Modifique parâmetros avançados apenas se compreender totalmente sua finalidade. Valores incorretos podem causar latência na tarefa, consumo excessivo de recursos ou perda de dados.

Parâmetros do mecanismo

Não configure parâmetros do mecanismo a menos que seja orientado por especialistas internos ou suporte técnico.

Etapa 5: Implantar e execute a tarefa

  1. Clique em Save para salve a configuração da tarefa.

  2. Clique em Deploy. Tarefas de sincronização de banco de dados em lote não podem ser depuradas diretamente na interface — elas devem ser implantadas no Operation Center para execução.

  3. Se você selecione Start immediately after deployment, a tarefa iniciará automaticamente após a implantação. Caso contrário, acesse Data Integration > Synchronization Task e inicie a tarefa manualmente pela coluna Actions.

  4. Clique em no Name/ID da tarefa para visualize seu progresso detalhado de execução.

Etapa 6: Configure uma regra de alerta

Regras de alerta são vinculadas a subtarefas, não à tarefa de sincronização de nível superior.

  1. Em Data Integration > Synchronization Task, anote o Task ID da tarefa alvo.

  2. Em Operation Center > Auto Triggered Task, pesquise a subtarefa correspondente usando o ID da tarefa de integração. Por exemplo, se o ID da tarefa de integração for 34862, a subtarefa de sincronização incremental será nomeada como offline_odps_cyc_sync_mysql_test_timetest_to_mysql_test_timetest_34862.

  3. Clique em More > Add Alert Rule para abrir a página de Gerenciamento de Regras.

  4. Na caixa de diálogo Create Custom Rule, defina Rule Object, Trigger Method e Alert Details. Consulte Gerenciamento de Regras para detalhes.

Dica: Pesquise pelo ID da subtarefa em Rule Object para localizar rapidamente a tarefa alvo.

Gerencie tarefas de sincronização

Edite uma tarefa

  1. Na página Data Integration > Synchronization Task, localize a tarefa. Na coluna Operation, clique em More > Edit.

  2. Para uma tarefa que não está em execução: modifique a configuração, salve e implante. As alterações entram em vigor após a implantação.

  3. Para uma tarefa que está em execução: edite e implante sem selecione Start immediately after deployment. O botão de ação muda para Apply Updates — clique em nele para enviar as alterações ao ambiente ativo.

  4. Clicar em Apply Updates executa três etapas: Stop > Deploy > Restart. Tabelas não modificadas não são afetadas e não serão reexecutadas.

    Tipo de alteração

    Efeito nos dados existentes

    Comportamento da sincronização incremental

    Adicionar uma tabela

    A migração de esquema e a sincronização completa única iniciam imediatamente para a nova tabela

    Segue o agendamento após a conclusão da sincronização completa

    Trocar a tabela de destino

    A subtarefa antiga é excluída; a nova subtarefa executa migração de esquema e sincronização completa única imediatamente

    Segue o agendamento após a conclusão da sincronização completa

    Modifique outras configurações

    A migração de esquema e a sincronização completa não são afetadas

    Novas instâncias usam a configuração atualizada; instâncias existentes não são afetadas

Visualize uma tarefa

Após crie uma tarefa, visualize a lista de tarefas de sincronização e seus status na página Synchronization Task.

image

  • Na coluna Actions, clique em Start ou Stop. Em More, acesse Edit, View e outras operações.

  • Depois que uma tarefa iniciar, abra o Execution Overview para ver os detalhes da execução. Clique em uma área de visão geral para obter informações mais detalhadas sobre a execução.

    image

Limitações

Limitação

Detalhes

Depuração

Tarefas de sincronização em lote não podem ser depuradas nas interfaces do Data Integration ou DataStudio. Implante-as no Operation Center para executá-las.

Coluna de fragmentação da source

Suportado apenas quando a source é MySQL. A coluna deve ser de tipo numérico — tipos string, float e date não são suportados.

Alterações de esquema

Não há suporte para renomear colunas ao edite o esquema da tabela de destino. Para tabelas de destino existentes, o Table type não pode ser alterado.

Próximos passos

Após o início da tarefa, clique em no nome da tarefa para visualize os detalhes da execução e realizar a O&M e ajuste da tarefa.

Para problemas comuns, consulte as Perguntas frequentes sobre tarefas de sincronização completa e incremental.

Para exemplos de ponta a ponta, veja os Casos de uso de sincronização de banco de dados em lote.