Criar conta grátis

Monitorar e otimizar uma solução de análise

03. Monitoramento de Spark e notebooks

Um notebook pode passar muito tempo esperando uma sessão, preparando bibliotecas ou executando tarefas. A duração total não identifica qual dessas fases domina. O monitoramento Spark conecta aplicação, jobs, stages e tarefas às partições realmente processadas.

4 min de leitura40 questões para praticarRevisado em 30/09/2026

Um notebook pode passar muito tempo esperando uma sessão, preparando bibliotecas ou executando tarefas. A duração total não identifica qual dessas fases domina. O monitoramento Spark conecta aplicação, jobs, stages e tarefas às partições realmente processadas.

Da sessão à tarefa

A sessão fornece o contexto da aplicação; ações podem gerar jobs, que se dividem em stages e tarefas. Uma tarefa trabalha sobre uma partição. Essa hierarquia permite sair do notebook que parece lento e chegar ao conjunto de tarefas ou à operação responsável.

Em sessões compartilhadas, filtre os jobs do notebook investigado para não atribuir a ele o consumo de outro. Separe admissão, início da sessão e execução. Um notebook que expirou aguardando sessão não executou necessariamente a célula suspeita.

Um notebook que contém várias ações pode gerar jobs distintos, e cada job pode ter etapas separadas por shuffle. Identificar apenas a célula é insuficiente quando ela dispara trabalho complexo. Siga a hierarquia até a etapa dominante e compare tarefas equivalentes. Em uma sessão com múltiplos notebooks, use o filtro correspondente para delimitar a investigação. Sem essa separação, um pico de consumo de outro notebook pode ser atribuído à transformação errada e orientar uma alteração sem relação com a causa.

Distribuição e skew

Compare duração, volume de entrada e shuffle entre tarefas da mesma etapa. Quando poucas tarefas trabalham muito mais que as demais, pode haver skew: distribuição desigual de chaves ou partições. A maioria concluída não significa que a etapa está quase terminando se a partição restante concentra grande parte dos dados.

Quantidade de partições não é quantidade de registros. O Adaptive Query Execution pode reorganizar partições, inclusive juntar pequenas, sem descartar dados. Uma redução no número de tarefas exige examinar o plano e o volume, não presumir perda de linhas.

Continue lendo de graça

O capítulo inteiro está liberado no plano gratuito

Criar conta leva menos de um minuto e não pede cartão. Você destrava o texto completo, o mapa mental, o PDF para estudar off-line e ainda resolve questões inéditas todo dia.

Leu o resumo? Agora pratique.

São 40 questões inéditas de Monitoramento de Spark e notebooks, todas comentadas alternativa por alternativa.

Criar conta grátis e praticar

Você volta para este capítulo depois de criar a conta.

Fontes consultadas

  • https://learn.microsoft.com/en-us/fabric/data-engineering/spark-detail-monitoring
  • https://learn.microsoft.com/en-us/fabric/data-engineering/spark-monitoring-overview
  • https://learn.microsoft.com/en-us/fabric/data-engineering/spark-monitor-debug
  • https://learn.microsoft.com/en-us/fabric/data-engineering/spark-monitoring-api-overview
  • https://spark.apache.org/docs/3.5.7/sql-performance-tuning.html
  • https://learn.microsoft.com/en-us/fabric/data-engineering/spark-job-concurrency-and-queueing
  • https://spark.apache.org/docs/3.5.7/monitoring.html
  • https://spark.apache.org/docs/3.5.7/rdd-programming-guide.html
  • https://spark.apache.org/docs/3.5.7/tuning.html