Depurar os pipelines da fábrica de dados

Concluído

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

O Azure Data Factory pode ajudá-lo a criar e desenvolver pipelines iterativos de depuração ao desenvolver a 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 é necessário publicar alterações no pipeline ou nas atividades antes de iniciar a depuração. 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.

Por vezes, não queres depurar todo o pipeline, mas sim 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

À medida que crias ou modificas um pipeline em execução, podes ver os resultados de cada atividade no separador Output do pipeline canvas.

Depois de um teste ser bem-sucedido e de ficares satisfeito com os resultados, podes adicionar mais atividades ao pipeline e continuar a depuração de forma iterativa. Quando não estiver satisfeito, ou quiser interromper a depuração do pipeline, pode cancelar a execução de um teste enquanto está em curso. 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 é utilizar pastas de teste nas suas atividades de cópia e outras atividades enquanto estiver a depurar. Assim, quando estiver satisfeito com os resultados e o pipeline tiver sido completamente depurado, pode mudar para as pastas reais para as 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.

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.

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).

Mapear depuração de fluxo de dados

Durante a criação de Fluxos de Dados de Mapeamento, pode-se observar interativamente como as formas e transformações de dados estão sendo executadas para que se possa fazer a depuração delas. Para usar esta funcionalidade, é primeiro necessário ativar a funcionalidade "Fluxo de Dados Debug".

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 de ativar o modo de depuração, vais realmente construir o fluxo de dados com um Spark Cluster ativo. O cluster do Spark será fechado assim que a depuração estiver desativada. Você tem uma escolha quanto a qual sistema de computação 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 quiser testar o fluxo de dados num pipeline que criou, o melhor é usar o botão Debug no painel do 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 monitorizar as sessões, podes usar a vista de monitorização para a sessão de depuração para gerires as tuas sessões de depuração conforme o Data Factory que foi configurado.

Para verificar se um cluster do Spark está pronto para depuração, basta conferir a indicação de estado do cluster na parte superior da área de design. Se estiver verde, está pronto. Se o cluster não estava em execução quando entraste no modo de depuração, o tempo de espera pode ser de cerca de 5 a 7 minutos, porque os clusters precisam iniciar.

É uma boa prática que, depois de terminares a depuração, desligues o modo de depuração para que o cluster Spark termine.

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. Quando seleciona o serviço ligado ao staging, pode especificar um armazenamento de dados suportado como fonte de staging.

Se tiver parâmetros no seu Fluxo de Dados ou em qualquer um dos seus conjuntos de dados referenciados, pode especificar que valores usar durante a depuração selecionando o separador Parâmetros. Durante a depuração, os sinks não são necessários e são ignorados no fluxo de dados. Se quiser testar e gravar os dados transformados no destino, pode executar o fluxo de dados a partir de um pipeline e utilizar o modo de debug do pipeline.

Como descrito anteriormente, dentro do Azure Data Factory, é possível depurar apenas até um certo 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, por vezes é necessário testar alterações num pipeline num ambiente de teste 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 informação útil sobre o Azure Data Factory é que, como ele é cobrado principalmente apenas pelo número de execuções, um segundo Data Factory não acarreta em 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 tu quiseres obter uma visão do histórico de execuções de depuração, ou ver todas as execuções de depuração ativas, podes ir para a aba Monitor.

Uma coisa a ter em mente é que o serviço Azure Data Factory apenas mantém 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 .