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 em 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, você precisa carregar grandes quantidades 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 ajudá-lo a começar rapidamente com o Data Factory e reduzir o tempo de desenvolvimento em projetos de integração de dados.

Você cria o modelo Bulk Copy from Database to Azure Data Explorer usando as atividades Lookup e ForEach. Para copiar dados mais rápidos, 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 Copiar em Massa de Banco de Dados para Azure Data Explorer para transferir grandes quantidades de dados de bancos de dados, como SQL Server e 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

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 tabela a seguir:

Propriedade Descrição Exemplo
Identificador de Partição 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 a partir de 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

  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:

    um. 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 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 de pipeline.

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

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

    um. Na caixa Contagem de lote, insira um número de 1 a 50. Essa seleção determina o número de pipelines que rodam em paralelo até que o número de linhas de 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 de 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, exibir o resultado no painel Saída de Validação de Pipeline .

    Valide os pipelines de modelo.

  8. Se necessário, selecione Depurar e, em seguida, selecione 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.