Depurar pipelines de data factory

Concluído

Os requisitos e expectativas dos clientes estão mudando em relação à integração de dados. A necessidade entre os usuários de desenvolver e depurar seus fluxos de trabalho Extract Transform/Load (ETL) e Extract Load/Transform (ELT) iterativamente está, portanto, se tornando mais imperativa.

O Azure Data Factory pode ajudá-lo a criar e desenvolver pipelines iterativos de depuração do Data Factory ao desenvolver sua solução de integração de dados. Ao criar um pipeline usando a tela de pipeline, você pode testar suas atividades e pipelines usando o recurso Depurar.

No Azure Data Factory, não há necessidade de publicar alterações no pipeline ou nas atividades antes de desejar depurar. Isso é útil em um cenário em que você deseja testar as alterações e ver se elas funcionam como esperado antes de realmente salvá-las e publicá-las.

Às vezes, você não quer depurar todo o pipeline, mas testar uma parte do pipeline. Uma execução de depuração permite que você faça exatamente isso. Você pode testar o pipeline de ponta a ponta ou definir um ponto de interrupção. Ao fazer isso no modo de depuração, você pode ver interativamente os resultados de cada etapa enquanto cria e depura seu pipeline.

Depurar e publicar um pipeline

Ao criar ou modificar um pipeline em execução, você pode ver os resultados de cada atividade na guia Saída da tela do pipeline.

Depois que uma execução de teste for bem-sucedida e você estiver satisfeito com os resultados, poderá adicionar mais atividades ao pipeline e continuar a depuração de maneira iterativa. Quando você não estiver satisfeito ou quiser interromper a depuração do pipeline, poderá cancelar uma execução de teste enquanto ela estiver em andamento. Lembre-se de que, ao selecionar o controle deslizante de depuração, ele realmente executará o pipeline. Portanto, se o pipeline contiver, por exemplo, uma atividade de cópia, a execução de teste copiará dados da origem para o destino.

Uma prática recomendada é usar pastas de teste em suas atividades de cópia e outras atividades durante a depuração, de modo que, quando estiver satisfeito com os resultados e tiver depurado o pipeline, alterne para as pastas reais para suas operações normais.

Para depurar o pipeline, selecione Depurar na barra de ferramentas. Verá o estado da execução do pipeline no separador Saída, na parte inferior da janela.

Controle deslizante de depuração Azure Data Factory

Guia Saída Azure Data Factory Debug

Depois que o pipeline puder ser executado com êxito, na barra de ferramentas superior, selecione Publicar tudo. Esta ação publica as entidades (conjuntos de dados e pipeline) que criou no Data Factory.

Publicar todas as alterações e entidades no Azure Data Factory

Aguarde até ver a mensagem publicada com êxito. Para ver as mensagens de notificação, selecione Mostrar notificações (ícone de sino) no canto superior direito do portal (botão de sino).

Botão Bell para notificações no Azure Data Factory

Mapear depuração de fluxo de dados

Durante a criação de Mapeamento de Fluxos de Dados, você pode observar interativamente como as formas e transformações de dados estão sendo executadas para que você possa depurá-las. Para usar essa funcionalidade, primeiro é necessário ativar o recurso "Depuração de fluxo de dados".

A sessão de depuração pode ser usada em sessões de design de fluxo de dados e durante a execução de depuração de pipeline de fluxos de dados. Depois que o modo de depuração estiver ativado, você realmente criará o fluxo de dados com um Cluster Spark ativo. O cluster do Spark será fechado assim que a depuração estiver desativada. Você tem uma escolha em qual computação você vai usar. Quando você usa um cluster de depuração existente, isso reduzirá o tempo de inicialização. No entanto, para cargas de trabalho complexas ou paralelas, talvez você queira criar seu próprio cluster just-in-time.

As práticas recomendadas para depurar fluxos de dados são manter o modo de depuração ativado e verificar e validar a lógica de negócios incluída no fluxo de dados. A visualização visual das transformações de dados e das formas ajuda-o a ver as alterações.

Se você quiser testar o fluxo de dados em um pipeline que você criou, é melhor usar o botão Depurar no painel de pipeline. Embora a visualização de dados não grave dados, uma depuração executada dentro do seu fluxo de dados gravará dados, assim como depurar um pipeline, no destino do coletor.

Configurações de depuração

Conforme descrito anteriormente, cada sessão de depuração iniciada a partir da interface do usuário do Azure Data Factory é considerada uma nova sessão com seu próprio cluster do Spark. Para monitorar as sessões, você pode usar a exibição de monitoramento para a sessão de depuração para gerenciar suas sessões de depuração de acordo com o Data Factory que foi configurado.

Para ver se um cluster do Spark está pronto para depuração, você pode verificar a indicação de status do cluster na parte superior da superfície de design. Se for verde, está pronto. Se o cluster não estava em execução quando você entrou no modo de depuração, o tempo de espera pode ser de cerca de 5 a 7 minutos, porque os clusters precisam girar.

É uma prática recomendada que, depois de concluir a depuração, você desative o modo de depuração para que o cluster do Spark seja encerrado.

Ao depurar, você pode editar a visualização de dados em um fluxo de dados selecionando Configuração de Depuração. Exemplos de alteração da visualização de dados podem ser um limite de linha ou uma fonte de arquivo, caso você use transformações de origem. Ao selecionar o serviço vinculado de preparo, você pode usar o Azure Synapse Analytics como uma fonte.

Se você tiver parâmetros em seu Fluxo de Dados ou em qualquer um de seus conjuntos de dados referenciados, poderá especificar quais valores usar durante a depuração selecionando a guia Parâmetros . Durante a depuração, os coletores não são necessários e são ignorados no fluxo de dados. Se quiser testar e gravar os dados transformados no coletor, você pode executar o fluxo de dados de um pipeline e usar a execução de depuração do pipeline.

Conforme descrito anteriormente, no Azure Data Factory, só é possível depurar até um determinado ponto ou uma atividade. Para fazer isso, você pode usar um ponto de interrupção na atividade até onde deseja testar e, em seguida, selecionar Depurar. Uma opção Depurar até aparece como um círculo vermelho vazio no canto superior direito do elemento. Depois de selecionar a opção Depurar até , ela muda para um círculo vermelho preenchido para indicar que o ponto de interrupção está habilitado. O Azure Data Factory garantirá que o teste seja executado apenas até essa atividade de ponto de interrupção no pipeline. Esse recurso é útil quando você deseja testar apenas um subconjunto das atividades em um pipeline.

Na maioria dos cenários, os recursos de depuração no Azure Data Factory são suficientes. No entanto, às vezes é necessário testar alterações em um pipeline em um ambiente de sandbox clonado. Um caso de uso para fazer isso é quando você parametrizou pipelines ETL que você gostaria de testar como eles se comportariam quando acionassem uma chegada de arquivo versus uma janela de tempo de queda. Nesse caso, a clonagem de um ambiente de sandbox pode ser mais adequada.

Uma boa coisa a saber sobre o Azure Data Factory pode ser que, como ele é cobrado principalmente apenas pelo número de execuções, um segundo Data Factory não precisa levar a cobranças adicionais.

Monitorizar execuções de depuração

Para monitorar as execuções de depuração, você pode verificar a guia saída, mas apenas para a execução mais recente que ocorreu na sessão de navegação, porque ela não mostrará o histórico. Se você quiser obter uma visão do histórico de execuções de depuração, ou ver todas as execuções de depuração ativas, você pode ir para a guia Monitor .

Uma coisa a ter em mente é que o serviço Azure Data Factory mantém apenas o histórico de execução de depuração por 15 dias. Em relação ao monitoramento de suas sessões de depuração de fluxo de dados, você também iria para a guia Monitor .

Monitoramento de depuração executar o Azure Data Factory