Depurar pipelines de data factory
Os requisitos e as expectativas dos clientes estão mudando em relação à integração de dados. A necessidade de fazer com que os usuários desenvolvam e depurem seus fluxos de trabalho de ETL (extração/transformação/carregamento) e ELT (extração/carregamento/transformação) iterativamente está, portanto, se tornando mais imperativa.
O Azure Data Factory pode ajudá-lo a criar e desenvolver pipelines do Data Factory de depuração iterativos ao desenvolver sua solução de integração de dados. Ao criar um pipeline usando a tela do pipeline, você pode testar suas atividades e pipelines usando a funcionalidade de Depuração.
No Azure Data Factory, não há necessidade de publicar alterações no pipeline ou atividades antes da depuração. Isso é útil em um cenário em que você deseja testar as alterações e ver se elas funcionam conforme o esperado antes de realmente salvá-las e publicá-las.
Às vezes, você não deseja depurar todo o pipeline, mas testar uma parte dele. 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
Conforme você cria ou modifica um pipeline que está em execução, pode ver os resultados de cada atividade na guia Saída da tela do pipeline.
Depois que uma execução de teste for realizada com sucesso e você estiver satisfeito com os resultados, poderá adicionar atividades ao pipeline e continuar a depuração de maneira iterativa. Quando você não estiver satisfeito ou desejar interromper a depuração do pipeline, poderá cancelar uma execução de teste enquanto ela estiver em andamento. Saiba que, ao selecionar o controle deslizante Depurar, ele de fato executará o pipeline. Portanto, se o pipeline contiver, por exemplo, uma atividade Copy, a execução de teste vai copiar dados da origem para o destino.
Uma prática recomendada é usar pastas de teste nas atividades Copy e outras atividades ao depurar de modo que, quando você estiver satisfeito com os resultados e tiver depurado o pipeline, passará para as pastas reais para suas operações normais.
Para depurar o pipeline, selecione Depurar na barra de ferramentas. Você verá o status da execução do pipeline na guia Saída na parte inferior da janela.
Depois que o pipeline for executado corretamente, na barra de ferramentas superior, selecione Publicar tudo. Esta ação publica as entidades (conjuntos de dados e pipelines) criadas por você anteriormente no Data Factory.
Aguarde até que você veja a mensagem de publicado com êxito. Para ver 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, você pode observar interativamente como as formas e as 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 do Spark ativo. O cluster do Spark será fechado quando a depuração estiver desativada. Você tem a opção de qual computação usar. Quando você usa um cluster de depuração existente, ele reduz o tempo de inicialização. No entanto, para cargas de trabalho complexas ou paralelas, talvez você queira criar o próprio cluster Just-In-Time.
As práticas recomendadas para depurar fluxos de dados, é manter o modo de depuração ativado, verificar e validar a lógica empresarial incluída no fluxo de dados. A visualização visual das transformações e formas de dados ajuda você 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 do pipeline. Embora a visualização de dados não grave dados, uma execução de depuração dentro do fluxo de dados gravará dados, assim como depurar de um pipeline, para o destino do coletor.
Configurações de depuração
Conforme já mencionado, cada sessão de depuração iniciada na interface do usuário do Azure Data Factory é considerada uma sessão nova com o próprio cluster do Spark. Para monitorar as sessões, você pode usar o modo de exibição de monitoramento para sessão de depuração para gerenciar sessões de depuração por Data Factory 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 estiver verde, estará pronto. Se o cluster não estava em execução quando você entrou no modo de depuração, o tempo de espera poderá ser de cerca de 5 a 7 minutos porque os clusters precisam ser ativados.
É uma melhor prática que, depois de concluir a depuração, você desligue o modo de depuração para que o cluster Spark seja encerrado.
Quando estiver depurando, você poderá editar a visualização dos 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 origem 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 origem.
Se você tiver parâmetros em seu Fluxo de Dados ou 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 você quiser testar e gravar os dados transformados em seu coletor, poderá 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, é possível depurar apenas até um determinado ponto ou uma atividade. Para fazer isso, você pode usar um ponto de interrupção na atividade até o qual deseja testar e, depois, 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é, ele é alterado para um círculo vermelho preenchido para indicar que o ponto de interrupção está habilitado. O Azure Data Factory verificará se o teste só é executado até essa atividade de ponto de interrupção no pipeline. Esse recurso é útil quando você quer 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 as alterações em um pipeline em um ambiente de área restrita clonada. Um caso de uso para fazer isso pode ser quando você tiver pipelines de ETL e queira testar como seus parâmetros se comportariam quando dispararem uma chegada de arquivo versus pela janela de tempo em cascata. Nesse caso, a clonagem de um ambiente de área restrita pode ser mais adequada.
Sobre o Azure Data Factory, é bom saber que, como é apenas cobrado o número de execuções, um segundo Data Factory não precisa gerar cobranças adicionais.
Monitorar execuções de depuração
Para monitorar as execuções de depuração, você pode verificar a guia de saída, mas apenas para a execução mais recente que ocorreu na sessão de navegação, já que ela não mostrará o histórico. Se você quiser obter uma exibição do histórico de execuções de depuração ou ver todas as execuções de depuração ativas, poderá ir para a guia Monitor.
Algo a levar em conta é que o serviço do Azure Data Factory somente mantém o histórico de execuções 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 vai para a guia Monitor.