Compartilhar via


Copiar em massa de um banco de dados para o Azure Data Explorer usando o modelo do Azure Data Factory

O Azure Data Explorer é um serviço de análise de dados rápido, totalmente gerenciado. Ele oferece análise em tempo real de grandes volumes de dados que são transmitidos de várias fontes, como aplicativos, sites e dispositivos IoT.

Para copiar dados de um banco de dados no Oracle Server, Netezza, Teradata ou SQL Server para o Azure Data Explorer, é preciso carregar uma enorme quantidade de dados de várias tabelas. Normalmente, os dados precisam ser particionados em cada tabela para que seja possível carregar linhas com vários threads paralelamente de uma só tabela. Este artigo descreve um modelo a ser usado nesses cenários.

Os modelos do Azure Data Factory são pipelines predefinidos do Data Factory. Esses modelos podem ajudar você a começar a usar o Data Factory rapidamente e reduzir o tempo de desenvolvimento em projetos de integração de dados.

Você cria o modelo de Cópia em massa do Banco de Dados para o Azure Data Explorer usando as atividades Lookup e ForEach. Para uma cópia de dados mais rápida, você pode usar o modelo para criar muitos pipelines por banco de dados ou por tabela.

Importante

Use a ferramenta apropriada para a quantidade de dados que você deseja copiar.

  • Use o modelo de Cópia em massa do Banco de Dados para o Azure Data Explorer a fim de copiar grandes quantidades de dados de bancos de dados, como o SQL Server e o Google BigQuery para o Azure Data Explorer.
  • Use a ferramenta de Copiar Dados do Data Factory para copiar algumas tabelas com quantidades pequenas ou moderadas de dados para o Azure Data Explorer.

Pré-requisitos

Criar ControlTableDataset

O ControlTableDataset indica quais dados serão copiados da origem para o destino no pipeline. O número de linhas indica o número total de pipelines necessários para copiar os dados. Você deve definir ControlTableDataset como parte do banco de dados de origem.

Um exemplo do formato da tabela de origem do SQL Server é mostrado no seguinte código:

CREATE TABLE control_table (
PartitionId int,
SourceQuery varchar(255),
ADXTableName varchar(255)
);

Os elementos de código são descritos na seguinte tabela:

Propriedade Descrição Exemplo
PartitionId A ordem de cópia 1
SourceQuery A consulta que indica quais dados serão copiados durante o runtime do pipeline
select * from table where lastmodifiedtime LastModifytime >= ''2015-01-01 00:00:00''>
ADXTableName O nome da tabela de destino MyAdxTable

Se o ControlTableDataset estiver em um formato diferente, crie um ControlTableDataset comparável para seu formato.

Usar o modelo de Cópia em massa do banco de dados para o Azure Data Explorer

  1. No painel Vamos começar, selecione Criar pipeline do modelo para abrir o painel Galeria de modelos.

    O painel

  2. Selecione o modelo de Cópia em massa do banco de dados para o Azure Data Explorer.

    O modelo de

  3. No painel Cópia em massa do banco de dados para o Azure Data Explorer, em Entradas do usuário, especifique seus conjuntos de dados fazendo o seguinte:

    a. Na listada suspensa ControlTableDataset, selecione o serviço vinculado à tabela de controle que indica quais dados são copiados da origem para o destino e onde eles serão colocados no destino.

    b. Na lista suspensa SourceDataset, selecione o serviço vinculado ao banco de dados de origem.

    c. Na lista suspensa AzureDataExplorerTable, selecione a tabela do Azure Data Explorer. Se o conjunto de dados não existir, crie o serviço vinculado do Azure Data Explorer para adicionar o conjunto de dados.

    d. Selecione Usar este modelo.

    O painel

  4. Selecione uma área na tela, fora das atividades, para acessar o pipeline do modelo. Selecione a guia Parâmetros para inserir os parâmetros da tabela, incluindo Nome (nome da tabela de controle) e Valor padrão (nomes de coluna).

    Parâmetros do pipeline.

  5. Em Lookup, selecione GetPartitionList para exibir as configurações padrão. A consulta é criada automaticamente.

  6. Selecione a atividade Command, ForEachPartition, depois selecione a guia Configurações e faça o seguinte:

    a. Na caixa Contagem de lote, insira um número de 1 a 50. Essa seleção determina o número de pipelines que são executados em paralelo até que o número de linhas ControlTableDataset seja atingido.

    b. Para que os lotes de pipelines sejam executados em paralelo, não marque a caixa de seleção Sequencial.

    Configurações do ForEachPartition.

    Dica

    A melhor prática é executar muitos pipelines em paralelo para que os dados possam ser copiados mais rapidamente. Para aumentar a eficiência, particione os dados na tabela de origem e aloque uma partição por pipeline, de acordo com a data e a tabela.

  7. Selecione Validar tudo para validar o pipeline do Azure Data Factory e, em seguida, veja o resultado no painel Saída de Validação do Pipeline.

    Valide os pipelines de modelo.

  8. Se necessário, selecione Depurar e Adicionar gatilho para executar o pipeline.

    Os botões

Agora você pode usar o modelo para copiar com eficiência grandes quantidades de dados de seus bancos de dados e tabelas.