Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Azure Data Factory (ADF) é um serviço de integração de dados baseado na nuvem que permite integrar diferentes armazenamentos de dados e executar atividades nos dados. O ADF permite criar fluxos de trabalho orientados por dados para orquestrar e automatizar a movimentação e a transformação de dados. O Azure Data Explorer é um dos armazenamentos de dados com suporte no Azure Data Factory.
Atividades do Azure Data Factory para o Azure Data Explorer
Várias integrações com o Azure Data Factory estão disponíveis para usuários do Azure Data Explorer:
atividade Copy
A atividade de Cópia do Azure Data Factory é usada para transferir dados entre armazenamentos de dados. O Azure Data Explorer tem suporte como uma fonte, onde os dados são copiados do Azure Data Explorer para qualquer armazenamento de dados com suporte, e um coletor, onde os dados são copiados de qualquer armazenamento de dados com suporte para o Azure Data Explorer. Para obter mais informações, consulte copiar dados de ou para o Azure Data Explorer usando o Azure Data Factory. Para obter um passo a passo detalhado, consulte Carregar dados do Azure Data Factory no Azure Data Explorer. O Azure Data Explorer é suportado pelo Azure IR (Integration Runtime), usado quando os dados são copiados no Azure, e pelo IR auto-hospedado, usado ao copiar dados de/para armazenamentos de dados localizados no local ou em uma rede com controle de acesso, como uma Rede Virtual do Azure. Para obter mais informações, consulte qual RI usar.
Sugestão
Ao usar a atividade de cópia e criar um Serviço Vinculado ou um Conjunto de Dados, selecione o repositório de dados do Azure Data Explorer (Kusto) e não o repositório de dados antigo Kusto.
Atividade de Busca
A atividade Pesquisa é usada para executar consultas no Azure Data Explorer. O resultado da consulta será retornado como a saída da atividade Pesquisa e pode ser usado na próxima atividade no pipeline, conforme descrito na documentação de Pesquisa do ADF.
Além do limite de tamanho de resposta de 5.000 linhas e 2 MB, a atividade também tem um limite de tempo limite de consulta de 1 hora.
Atividade de comando
A atividade Comando permite a execução de comandos de gerenciamento do Azure Data Explorer. Ao contrário das consultas, os comandos de gerenciamento podem potencialmente modificar dados ou metadados. Alguns dos comandos de gerenciamento são direcionados para ingerir dados no Azure Data Explorer, usando comandos como .ingestou .set-or-append) ou copiar dados do Azure Data Explorer para armazenamentos de dados externos usando comandos como .export.
Para obter um passo a passo detalhado da atividade de comando, consulte Usar a atividade de comando do Azure Data Factory para executar comandos de gerenciamento do Azure Data Explorer. Usar um comando de gerenciamento para copiar dados pode, às vezes, ser uma opção mais rápida e barata do que a atividade Copiar. Para determinar quando usar a atividade Comando versus a atividade Copiar, consulte selecionar entre as atividades Copiar e Comando ao copiar dados.
Copiar em massa de um modelo de banco de dados
A Cópia em massa de um banco de dados para o Azure Data Explorer usando o modelo Azure Data Factory é um pipeline predefinido do Azure Data Factory. O modelo é usado para criar muitos pipelines por banco de dados ou por tabela para uma cópia de dados mais rápida.
Mapeando fluxos de dados
Os fluxos de dados de mapeamento do Azure Data Factory são transformações de dados visualmente projetadas que permitem que os engenheiros de dados desenvolvam lógica gráfica de transformação de dados sem escrever código. Para criar um fluxo de dados e ingerir dados no Azure Data Explorer, use o seguinte método:
- Crie o fluxo de dados de mapeamento.
- Exporte os dados para o Blob do Azure.
- Defina a Grade de Eventos ou a atividade de cópia do ADF para ingerir os dados no Azure Data Explorer.
Selecionar entre as atividades Copiar e Comando do Azure Data Explorer ao copiar dados
Esta secção ajuda-o a selecionar a atividade correta para as suas necessidades de cópia de dados.
Quando você copia dados de ou para o Azure Data Explorer, há duas opções disponíveis no Azure Data Factory:
- Atividade de cópia.
- Atividade do Comando do Azure Data Explorer, que executa um dos comandos de gerenciamento que transferem dados no Azure Data Explorer.
Copiar dados do Azure Data Explorer
Você pode copiar dados do Azure Data Explorer usando a atividade de cópia ou o .export comando. O .export comando executa uma consulta e, em seguida, exporta os resultados da consulta.
Consulte a tabela a seguir para obter uma comparação da atividade de cópia e .export do comando para copiar dados do Azure Data Explorer.
| atividade Copy | Comando .export | |
|---|---|---|
| Descrição do fluxo | O ADF executa uma consulta no Kusto, processa o resultado e o envia para o armazenamento de dados de destino. (Azure Data Explorer > ADF > coletor de dados de armazenamento) |
O ADF envia um .export comando de gerenciamento para o Azure Data Explorer, que executa o comando e envia os dados diretamente para o armazenamento de dados de destino. (** Armazenamento de dados do coletor do Azure Data Explorer > **) |
| Armazenamentos de dados de destino suportados | Uma grande variedade de armazenamentos de dados suportados | ADLSv2, Blob do Azure, Banco de Dados SQL |
| Desempenho | Centralizado |
|
| Limites do servidor |
Os limites de consulta podem ser estendidos/desativados. Por padrão, as consultas do ADF contêm:
|
Por padrão, estende ou desabilita os limites de consulta:
|
Sugestão
Se o destino da cópia for um dos armazenamentos de dados suportados .export pelo comando e se nenhum dos recursos de atividade de cópia for crucial para suas necessidades, selecione o .export comando.
Copiar dados para o Azure Data Explorer
Você pode copiar dados para o Azure Data Explorer usando a atividade de cópia ou os comandos de ingestão, como ingerir da consulta (.set-or-append, .set-or-replace, .set, .replace)e ingerir do armazenamento (.ingest).
Consulte a tabela a seguir para obter uma comparação dos comandos Copiar atividade e ingestão para copiar dados para o Azure Data Explorer.
| atividade Copy | Ingestão a partir de uma consulta.set-or-append / .set-or-replace / .set / .replace |
Ingerir a partir do armazenamento .ingest |
|
|---|---|---|---|
| Descrição do fluxo | O ADF obtém os dados do armazenamento de dados de origem, converte-os em um formato tabular e faz as alterações de mapeamento de esquema necessárias. Em seguida, o ADF carrega os dados nos blobs do Azure, divide-os em partes e, em seguida, baixa os blobs para ingeri-los na tabela do Azure Data Explorer. (Armazenamento de > dados de origem ADF > Azure blobs > Azure Data Explorer) |
Esses comandos podem executar uma consulta ou um .show comando e ingerir os resultados da consulta em uma tabela (Azure Data Explorer > , Azure Data Explorer). |
Este comando ingere dados em uma tabela "extraindo" os dados de um ou mais artefatos de armazenamento em nuvem. |
| Armazenamentos de dados de origem suportados | variedade de opções | Azure Data Lake Storage (ADLS) Gen 2, Azure Blob, SQL (usando o plug-in sql_request(), Azure Cosmos DB (usando o plug-in cosmosdb_sql_request) e qualquer outro armazenamento de dados que forneça APIs HTTP ou Python. | Sistema de arquivos, Azure Blob Storage, ADLS Gen 1, ADLS Gen 2 |
| Desempenho | As ingestões são enfileiradas e gerenciadas, o que garante ingestões de pequeno porte e garante alta disponibilidade, fornecendo balanceamento de carga, novas tentativas e tratamento de erros. |
|
|
| Limites do servidor |
|
|
|
Sugestão
- Para copiar dados do Azure Data Fator para o Azure Data Explorer, use os
ingest from querycomandos. - Para conjuntos de dados grandes (>1GB), use a atividade Copiar.
Permissões necessárias
A tabela a seguir lista as permissões necessárias para várias etapas na integração com o Azure Data Factory.
| Step | Funcionamento | Nível mínimo de permissões | Observações |
|---|---|---|---|
| Criar um serviço vinculado | Navegação na base de dados |
visualizador de banco de dados O usuário conectado usando o ADF deve ser autorizado a ler metadados do banco de dados. |
O usuário pode fornecer o nome do banco de dados manualmente. |
| Testar Ligação |
monitor de banco de dados ou ingestor de tabela A entidade de serviço deve ser autorizada a executar comandos no nível .show do banco de dados ou ingestão no nível da tabela. |
|
|
| Criando um conjunto de dados | Navegação na tabela |
Monitor de banco de dados O usuário conectado usando o ADF deve estar autorizado a executar comandos no nível .show do banco de dados. |
O usuário pode fornecer o nome da tabela manualmente. |
| Criando um conjunto de dados ou atividade de cópia | Pré-visualizar dados |
visualizador de banco de dados A entidade de serviço deve estar autorizada a ler metadados do banco de dados. |
|
| Esquema de importação |
visualizador de banco de dados A entidade de serviço deve estar autorizada a ler metadados do banco de dados. |
Quando o Azure Data Explorer é a origem de uma cópia tabular para tabular, o ADF importa o esquema automaticamente, mesmo que o usuário não tenha importado o esquema explicitamente. | |
| Azure Data Explorer como coletor | Criar um mapeamento de coluna por nome |
Monitor de banco de dados A entidade de serviço deve estar autorizada a executar comandos no nível .show do banco de dados. |
|
|
ingestor de tabela ou administrador de banco de dados A entidade de serviço deve estar autorizada a fazer alterações em uma tabela. |
||
| Ingerir dados |
ingestor de tabela ou administrador de banco de dados A entidade de serviço deve estar autorizada a fazer alterações em uma tabela. |
||
| Azure Data Explorer como origem | Executar consulta |
visualizador de banco de dados A entidade de serviço deve estar autorizada a ler metadados do banco de dados. |
|
| Comando Kusto | De acordo com o nível de permissões de cada comando. |
Performance
Se o Azure Data Explorer for a origem e você usar a atividade Pesquisar, copiar ou comando que contém uma consulta onde, consulte as práticas recomendadas de consulta para obter informações de desempenho e a documentação do ADF para atividade de cópia.
Esta seção aborda o uso da atividade de cópia em que o Azure Data Explorer é o coletor. A taxa de transferência estimada para o coletor do Azure Data Explorer é de 11 a 13 MBps. A tabela a seguir detalha os parâmetros que influenciam o desempenho do coletor do Azure Data Explorer.
| Parâmetro | Observações |
|---|---|
| Componentes proximidade geográfica | Coloque todos os componentes na mesma região:
|
| Número de DIUs | Uma máquina virtual (VM) para cada quatro DIUs usadas pelo ADF. Aumentar as DIUs ajuda apenas se sua fonte for um armazenamento baseado em arquivos com vários arquivos. Em seguida, cada VM processa um arquivo diferente em paralelo. Portanto, copiar um único arquivo grande tem uma latência maior do que copiar vários arquivos menores. |
| Quantidade e SKU do cluster do Azure Data Explorer | O alto número de nós do Azure Data Explorer aumenta o tempo de processamento de ingestão. O uso de SKUs de desenvolvimento limita severamente o desempenho. |
| Paralelismo | Para copiar uma grande quantidade de dados de um banco de dados, particione seus dados e use um loop ForEach que copia cada partição em paralelo ou use a Cópia em massa do Banco de Dados para o Modelo do Azure Data Explorer. Observação: oGrau de paralelismo das configurações> na atividade Copiar não é relevante para o Azure Data Explorer. |
| Complexidade do processamento de dados | A latência varia de acordo com o formato do arquivo de origem, o mapeamento de colunas e a compactação. |
| A VM executando seu tempo de execução de integração |
|
Dicas e armadilhas comuns
Monitorar o progresso da atividade
Quando você monitora o progresso da atividade, a propriedade Data written pode ser maior do que a propriedade Data read porque Data read é calculado de acordo com o tamanho do arquivo binário, enquanto Data written é calculado de acordo com o tamanho na memória, depois que os dados são desserializados e descompactados.
Ao monitorar o progresso da atividade, você pode ver que os dados são gravados no coletor do Azure Data Explorer. Ao consultar a tabela do Azure Data Explorer, você vê que os dados não chegaram. É porque há dois estágios ao copiar para o Azure Data Explorer.
- O primeiro estágio lê os dados de origem, divide-os em blocos de 900 MB e carrega cada bloco em um Blob do Azure. O primeiro estágio é visto pela visualização do progresso da atividade do ADF.
- O segundo estágio começa quando todos os dados são carregados nos Blobs do Azure. Os nós do cluster baixam os blobs e ingerem os dados na tabela do coletor. Os dados são vistos na tabela do Azure Data Explorer.
Falha na ingestão de arquivos CSV devido a fuga inadequada
O Azure Data Explorer espera que os arquivos CSV sejam alinhados com a RFC 4180. Espera:
- Os campos que contêm caracteres que exigem fuga (como " e novas linhas) devem começar e terminar com um caractere ", sem espaço em branco. Todos os " caracteres dentro do campo são escapados usando um caractere duplo " (""). Por exemplo,
_"Hello, ""World"""_é um arquivo CSV válido com um único registro com uma única coluna ou campo com o conteúdo_Hello, "World"_. - Todos os registros no arquivo devem ter o mesmo número de colunas e campos.
O Azure Data Factory permite o caractere de barra invertida (escape). Se você gerar um arquivo CSV com um caractere de barra invertida usando o Azure Data Factory, a ingestão do arquivo no Azure Data Explorer falhará.
Example
Os seguintes valores de texto: Hello, "World"
ABC DEF
"ABC\D"EF
"ABC DEF
Deve aparecer em um arquivo CSV adequado da seguinte maneira: "Hello, ""World"""
"ABC DEF"
"""ABC\D""EF"
"""ABC DEF"
Quando você usa o caractere de escape padrão (barra invertida), o seguinte CSV não funciona com o Azure Data Explorer: "Hello, \"World\""
"ABC DEF"
"\"ABC\D\"EF"
"\"ABC DEF"
Objetos JSON aninhados
Ao copiar um arquivo JSON para o Azure Data Explorer, observe os seguintes pontos:
- Não há suporte para matrizes.
- Se sua estrutura JSON contiver tipos de dados de objeto, o Azure Data Factory nivelará os itens filho do objeto e tentará mapear cada item filho para uma coluna diferente na tabela do Azure Data Explorer. Se você quiser que todo o item de objeto seja mapeado para uma única coluna no Azure Data Explorer:
- Ingerir toda a linha JSON em uma única coluna dinâmica no Azure Data Explorer.
- Edite manualmente a definição de pipeline usando o editor JSON do Azure Data Factory. Em Mapeamentos
- Remova os vários mapeamentos que foram criados para cada item filho e adicione um único mapeamento que mapeie o tipo de objeto para a coluna da tabela.
- Após o colchete de fechamento, adicione uma vírgula seguida de:
"mapComplexValuesToString": true.
Especificar propriedades adicionais ao copiar para o Azure Data Explorer
Você pode adicionar propriedades de ingestão adicionais especificando-as na atividade de cópia no pipeline.
Para adicionar propriedades
No Azure Data Factory, selecione a ferramenta Lápis de autor .
Em Pipeline, selecione o pipeline onde você deseja adicionar propriedades de ingestão adicionais.
Na tela Atividades , selecione a atividade Copiar dados .
Nos detalhes da atividade, selecione Coletor e expanda Propriedades adicionais.
Selecione Novo, selecione Adicionar nó ou Adicionar matriz , conforme necessário, e especifique o nome e o valor da propriedade de ingestão. Repita esta etapa para adicionar mais propriedades.
Depois de concluído, salve e publique seu pipeline.