Todos os produtos
Search
Central de documentação

DataWorks:Sincronização em lote de uma única tabela do EMR Hive para o MaxCompute

Última atualização: Aug 24, 2026

Este tópico descreve como sincronizar em lote uma única tabela do EMR Hive para o MaxCompute, abordando as melhores práticas para configuração da fonte de dados, conectividade de rede e configuração de tarefas.

Contexto

Baseado no Hadoop, o Hive é uma ferramenta de data warehouse usada para armazenar, consultar e analisar dados em grande escala. O Hive mapeia arquivos de dados estruturados para uma tabela de banco de dados e fornece recursos de consulta SQL ao converter instruções SQL em jobs MapReduce. Use o Data Integration para sincronizar dados entre o Hive e outras fontes de dados.

Pré-requisitos

  • Adquira um serverless resource group.

  • Crie fontes de dados do Hive e do MaxCompute. Para mais informações, consulte Configure a data source.

  • Estabeleça conectividade de rede entre o grupo de recursos e a fonte de dados. Para mais informações, consulte Overview of network connectivity solutions.

    Nota

    Ao conectar-se a um cluster EMR a partir de um grupo de recursos exclusivo pela internet pública, adicione regras ao grupo de segurança do cluster EMR. Essas regras devem permitir tráfego de entrada do EIP do grupo de recursos exclusivo para as portas necessárias do cluster EMR, como 10000, 9093 e 8020.

Limitações

Não há suporte para sincronização de dados da source para tabelas externas do MaxCompute.

Procedimento

Etapa 1: Criar um nó e configurar a tarefa

Para obter instruções sobre como criar e configurar um nó na Codeless UI, consulte Configure a task in the Codeless UI.

Etapa 2: Configurar a fonte e o destino dos dados

Configurar a fonte de dados (Hive)

A fonte de dados é uma tabela do Hive. A tabela a seguir descreve os principais parâmetros.

Parâmetro

Descrição

Hive Read Method

  • Read data from HDFS files.: O plugin Hive Reader acessa o service Hive Metastore para obter metadados da tabela, como caminho do arquivo HDFS, formato de arquivo e delimitadores, e lê os dados diretamente dos arquivos HDFS.

  • Read data using Hive JDBC (supports conditional filtering).: O plugin Hive Reader conecta-se ao service HiveServer2 via JDBC para ler os dados. Esse método permite usar uma cláusula where para filtragem de dados.

Nota

O método HDFS é mais eficiente. O método JDBC gera um programa MapReduce, o que resulta em menor desempenho. O método HDFS não oferece suporte a filtragem condicional nem à leitura de dados de uma view. Escolha o método que melhor atenda às suas necessidades.

Table

Selecione a tabela do Hive a ser sincronizada. Recomendamos que a tabela tenha o mesmo schema nos ambientes de desenvolvimento e produção da fonte de dados do Hive.

Nota

A UI exibe a lista de tabelas e schemas do ambiente de desenvolvimento da sua fonte de dados do Hive. Se as definições da tabela diferirem entre os ambientes de desenvolvimento e produção, a tarefa poderá ser configurada corretamente, mas falhar no ambiente de produção com um erro como 'table not found' ou 'column not found'.

Parquet schema

Se a tabela do Hive estiver armazenada no formato Parquet, configure o schema Parquet correspondente.

Configurar o destino dos dados (MaxCompute)

O destino dos dados é uma tabela do MaxCompute. A tabela a seguir descreve os principais parâmetros.

Nota

Para parâmetros não descritos na tabela a seguir, use os valores padrão.

Parâmetro

Descrição

Tunnel Resource Group

Recurso de transferência de dados do MaxCompute, também conhecido como cota de túnel. Por padrão, 'public transport resources' vem selecionado, representando a cota gratuita do MaxCompute. Se sua cota de túnel exclusiva ficar indisponível devido a expiração ou pagamento em atraso, a tarefa alternará automaticamente para os recursos de transporte públicos durante a execução.

Table

Selecione a tabela de destino do MaxCompute. Ao usar um workspace padrão do DataWorks, certifique-se de que exista uma tabela do MaxCompute com o mesmo nome e schema nos ambientes de desenvolvimento e produção.

Você também pode clicar em Generate Destination Table Schema. Essa ação cria automaticamente uma tabela e permite editar manualmente a instrução CREATE TABLE.

Nota

Observe o seguinte:

  • Se a tabela de destino do MaxCompute não existir no ambiente de desenvolvimento, ela não aparecerá na lista suspensa de tabelas de destino durante a configuração do nó de sincronização em lote.

  • Se a tabela de destino do MaxCompute não existir no ambiente de produção, a tarefa de sincronização falhará após a publicação e execução, pois a tabela de destino não será encontrada.

  • Se os schemas da tabela nos ambientes de desenvolvimento e produção forem inconsistentes, o mapeamento de campos durante a execução agendada poderá diferir do mapeamento configurado no nó, causando gravação incorreta dos dados.

Partition Information

Para tabelas particionadas, especifique valores para as colunas de partição.

  • O valor pode ser fixo, como ds=20220101.

  • O valor pode ser um parâmetro de agendamento, como ds=${bizdate}. Durante a execução, o sistema substitui automaticamente o parâmetro pelo valor agendado.

Write Method

Especifique se deseja sobrescrever os dados existentes na tabela de destino ou anexar novos dados.

Etapa 3: Configurar e validar a tarefa

  • Mapeamento de campos: Geralmente, Map Fields with the Same Name ou Map Fields in the Same Line é suficiente. Se a ordem ou os nomes dos campos na source e no destino forem diferentes, ajuste os mapeamentos manualmente.

  • Controle de canal: Defina Policy for Dirty Data Records para rejeitar dados sujos e garantir a qualidade dos dados. Inicialmente, use os valores padrão para os demais parâmetros.

Etapa 4: Depurar e executar a tarefa

  1. No lado direito da página de configuração do nó de sincronização em lote, clique em Run Configuration. Defina o Resource Group e os Script Parameters para a execução de depuração. Em seguida, clique em Run na barra de ferramentas superior para testar o pipeline de sincronização.

  2. No painel de navegação à esquerda, clique em image e, em seguida, clique em image à direita de Personal Directory para criar um arquivo com extensão .sql. Execute a seguinte instrução SQL para consultar e verificar os dados na tabela de destino.

    Nota
    • Para consultar dados dessa forma, vincule o projeto do MaxCompute de destino como recursos de computação para o DataWorks. Consulte bind the destination MaxCompute project as computing resources for DataWorks.

    • No lado direito do editor de arquivos .sql, clique em Run Configuration, especifique o Type da fonte de dados, os Computing Resources e o Resource Group. Em seguida, clique em Run na barra de ferramentas superior.

    SELECT * FROM <your_maxcompute_table> WHERE pt=<your_partition> LIMIT 20;

Etapa 5: Configurar o agendamento e publicar a tarefa

No lado direito da tarefa de sincronização em lote, clique em Scheduling Settings. Configure os parâmetros para execuções periódicas conforme descrito em Scheduling configuration. Depois, clique em Publish na barra de ferramentas superior. No painel exibido, siga as instruções na tela para publish the task.