Monitorizar Fluxos de Dados

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

Depois de concluir a criação e a depuração do fluxo de dados, você deseja agendar o fluxo de dados para ser executado em uma agenda dentro do contexto de um pipeline. Você pode agendar o pipeline usando Triggers. Para testar e depurar o fluxo de dados de um pipeline, você pode usar o botão Depurar na faixa de opções da barra de ferramentas ou a opção Disparar agora do Pipeline Builder para executar uma execução única para testar o fluxo de dados dentro do contexto do pipeline.

Ao executar o pipeline, você pode monitorar o pipeline e todas as atividades contidas no pipeline, incluindo a atividade de Fluxo de Dados. Selecione o ícone do monitor no painel esquerdo da interface do usuário. Você pode ver uma tela semelhante à que se segue. Os ícones realçados permitem detalhar as atividades no pipeline, incluindo a atividade Fluxo de Dados.

Screenshot shows icons to select for pipelines for more information.

Você também vê estatísticas nesse nível, incluindo os tempos de execução e o status. A ID de Execução no nível de atividade é diferente da ID de Execução no nível de pipeline. O ID de execução no nível anterior é para o pipeline. A seleção dos óculos fornece detalhes profundos sobre a execução do fluxo de dados.

Screenshot shows the eyeglasses icon to see details of data flow execution.

Quando você está na visualização de monitoramento de nó gráfico, você pode ver uma versão simplificada somente visualização do seu gráfico de fluxo de dados. Para ver a visualização de detalhes com nós gráficos maiores que incluem rótulos de estágio de transformação, use o controle deslizante de zoom no lado direito da tela. Você também pode usar o botão de pesquisa no lado direito para encontrar partes da sua lógica de fluxo de dados no gráfico.

Screenshot shows the view-only version of the graph.

Exibir planos de execução de fluxo de dados

Quando o fluxo de dados é executado no Spark, o serviço determina os caminhos de código ideais com base na totalidade do fluxo de dados. Além disso, os caminhos de execução podem ocorrer em diferentes nós de expansão e partições de dados. Portanto, o gráfico de monitoramento representa o design do seu fluxo, levando em conta o caminho de execução de suas transformações. Ao selecionar nós individuais, você pode ver "estágios" que representam o código que foi executado em conjunto no cluster. Os tempos e contagens que você vê representam esses grupos ou estágios, em oposição às etapas individuais em seu design.

Screenshot shows the page for a data flow.

  • Quando você seleciona o espaço aberto na janela de monitoramento, as estatísticas no painel inferior exibem o tempo e as contagens de linhas para cada Coletor e as transformações que levaram aos dados do coletor para a linhagem de transformação.

  • Ao selecionar transformações individuais, você recebe feedback extra no painel direito que mostra estatísticas de partição, contagens de colunas, assimetria (quão uniformemente os dados são distribuídos entre partições) e curtose (quão espetados são os dados).

  • A classificação por tempo de processamento ajuda você a identificar quais estágios do seu fluxo de dados levaram mais tempo .

  • Para descobrir quais transformações dentro de cada estágio levaram mais tempo, classifique o maior tempo de processamento.

  • As *linhas escritas também são classificáveis como uma forma de identificar quais fluxos dentro do seu fluxo de dados estão gravando mais dados.

  • Ao selecionar o Coletor na visualização do nó, você pode ver a linhagem da coluna. Há três métodos diferentes que as colunas são acumuladas ao longo do fluxo de dados para pousar no coletor. Eles são:

    • Computado: você usa a coluna para processamento condicional ou dentro de uma expressão em seu fluxo de dados, mas não a coloca no coletor
    • Derivada: A coluna é uma nova coluna que você gerou no seu fluxo, ou seja, ela não estava presente na Fonte
    • Mapeado: a coluna se originou da origem e você a está mapeando para um campo de coleta
    • Status do fluxo de dados: o status atual da sua execução
    • Tempo de inicialização do cluster: quantidade de tempo para adquirir o ambiente de computação JIT Spark para a execução do fluxo de dados
    • Número de transformações: quantas etapas de transformação estão sendo executadas em seu fluxo

Screenshot shows the Refresh option.

Tempo Total de Processamento de Sinks vs. Tempo de Processamento de Transformações

Cada estágio de transformação inclui um tempo total para que esse estágio seja concluído com cada tempo de execução de partição totalizado juntos. Quando você seleciona o coletor, você vê "Tempo de processamento do coletor". Esse tempo inclui o total do tempo de transformação mais o tempo de E/S necessário para gravar seus dados no armazenamento de destino. A diferença entre o tempo de processamento do coletor e o total da transformação é o tempo de E/S para gravar os dados.

Você também pode ver o tempo detalhado para cada etapa de transformação de partição se abrir a saída JSON da sua atividade de fluxo de dados na visualização de monitoramento de pipeline. O JSON contém temporização de milissegundos para cada partição, enquanto a visualização de monitoramento de UX é uma temporização agregada de partições adicionadas:

 {
     "stage": 4,
     "partitionTimes": [
          14353,
          14914,
          14246,
          14912,
          ...
         ]
}

Tempo de processamento do coletor

Quando você seleciona um ícone de transformação do coletor no mapa, o painel deslizante à direita mostra um ponto de dados extra chamado "tempo de pós-processamento" na parte inferior. Esse é o tempo gasto na execução do trabalho no cluster do Spark depois que os dados foram carregados, transformados e gravados. Esse tempo pode incluir o fechamento de pools de conexões, o desligamento do driver, a exclusão de arquivos, a coalescência de arquivos, etc. Quando você executa ações em seu fluxo como "mover arquivos" e "saída para um único arquivo", você provavelmente verá um aumento no valor do tempo de pós-processamento.

  • Duração do estágio de gravação: o tempo para gravar os dados em um local de preparo para Synapse SQL
  • Duração da operação de tabela SQL: o tempo gasto movendo dados de tabelas temporárias para a tabela de destino
  • Duração pré SQL & Duração pós SQL: O tempo gasto executando comandos SQL pré/pós
  • Duração dos pré-comandos & duração dos comandos pós: o tempo gasto na execução de quaisquer operações pré/pós para fontes/coletores baseados em arquivos. Por exemplo, mover ou excluir arquivos após o processamento.
  • Duração da mesclagem: O tempo gasto mesclando o arquivo, mesclar arquivos são usados para coletores baseados em arquivo ao gravar em um único arquivo ou quando "Nome do arquivo como dados de coluna" é usado. Se for gasto um tempo significativo nessa métrica, você deve evitar usar essas opções.
  • Tempo de estágio: quantidade total de tempo gasto dentro do Spark para concluir a operação como um estágio.
  • Estável de preparo temporário: nome da tabela temporária usada pelos fluxos de dados para preparar dados no banco de dados.

Linhas de erro

A habilitação da manipulação de linhas de erro no coletor de fluxo de dados será refletida na saída de monitoramento. Quando você define o coletor como "relatar sucesso no erro", a saída de monitoramento mostra o número de linhas de sucesso e falha quando você seleciona o nó de monitoramento do coletor.

Screenshot shows error rows.

Quando você seleciona "relatar falha no erro", a mesma saída é mostrada apenas no texto de saída do monitoramento de atividade. Isso ocorre porque a atividade de fluxo de dados retorna falha para execução e a exibição de monitoramento detalhada não está disponível.

Screenshot shows error rows in activity.

Ícones do monitor

Esse ícone significa que os dados de transformação já estavam armazenados em cache no cluster, portanto, os tempos e o caminho de execução levaram isso em consideração:

Screenshot shows the disk icon.

Você também vê ícones de círculo verde na transformação. Eles representam uma contagem do número de coletores para os quais os dados estão fluindo.