Dataflow fornisce una scheda Dettagli esecuzione nella sua interfaccia utente di monitoraggio basata su web. Utilizza le informazioni in questa scheda per ottimizzare le prestazioni dei tuoi job e diagnosticare il motivo per cui il job potrebbe essere lento o bloccato. Dopo aver avviato il job, puoi visualizzare la scheda Dettagli esecuzione utilizzando la proprietà UI di monitoraggio di Dataflow. Per ulteriori informazioni, consulta Accesso all'interfaccia di monitoraggio di Dataflow.
Questa funzionalità non causa un utilizzo aggiuntivo della CPU o della rete per le VM. I dettagli dell'esecuzione vengono raccolti dal backend Dataflow sistema di monitoraggio, che non influisce sulle prestazioni del job.
Questa pagina fornisce un riepilogo generale della funzionalità dei dettagli di esecuzione e delle relative layout dell'interfaccia utente. Per ulteriori informazioni sulla risoluzione dei problemi, vedi Risoluzione dei problemi e debug della pipeline.
Quando utilizzare i dettagli dell'esecuzione
Di seguito sono riportati scenari comuni per l'utilizzo dei dettagli di esecuzione quando dei job Dataflow in esecuzione:
- La pipeline è bloccata e vuoi risolvere il problema.
- La pipeline è lenta e vuoi ottimizzarla.
- Non è necessario sistemare nulla, ma vuoi visualizzare i dettagli di esecuzione del tuo per comprendere il job.
Terminologia
Per utilizzare i dettagli di esecuzione in modo efficace, è utile capire come i seguenti concetti si applicano ai job Dataflow.
Terminologia di Dataflow
- Ottimizzazione della fusione: il processo di fusione di più passaggi o trasformazioni di Dataflow. Questo processo ottimizza le pipeline inviate dagli utenti. Per ulteriori informazioni, vedi Ottimizzazione della fusione.
- Fasi: l'unità dei passaggi raggruppati nelle pipeline Dataflow.
- Ultima fase: il nodo finale delle pipeline Dataflow. Una pipeline può avere più nodi finali.
Terminologia batch
- Percorsi critici: la sequenza di fasi di una pipeline che contribuiscono al
runtime complessivo del job. Ad esempio, questa sequenza esclude i seguenti
fasi:
- Rami della pipeline terminati prima del job complessivo.
- Input che non hanno ritardato l'elaborazione downstream.
- Worker: istanze VM di Compute Engine che eseguono un Dataflow lavoro.
- Attività: le unità di lavoro corrispondenti a un bundle selezionato da Dataflow.
Terminologia relativa allo streaming
- Aggiornamento dei dati: il periodo di tempo tra il tempo reale e il watermark di output. Per saperne di più, consulta Aggiornamento dei dati.
Utilizzare la scheda Dettagli esecuzione
La scheda Dettagli esecuzione include quattro visualizzazioni: Avanzamento fase, Riquadro informativo sulla fase (all'interno di Avanzamento fase), Flusso di lavoro della fase e Avanzamento del worker.
La visualizzazione Flusso di lavoro delle fasi viene attivata automaticamente per tutti i job batch e streaming. I job batch e streaming hanno anche la visualizzazione Avanzamento fase e i job batch hanno un'ulteriore visualizzazione Avanzamento dei worker.
Questa sezione illustra ogni visualizzazione e fornisce esempi di job Dataflow riusciti e non riusciti.
Avanzamento della fase per i job batch
La visualizzazione Avanzamento fase per i job batch mostra le fasi di esecuzione del job, organizzate per i relativi orari di inizio e di fine. La durata è rappresentata da una barra. Per Ad esempio, puoi identificare visivamente le fasi più lunghe di una pipeline trovare la barra più lunga.
A ciascuna barra, uno sparkline mostra l'avanzamento la fase del ciclo nel tempo. Evidenziare le fasi che hanno contribuito al tempo di esecuzione complessivo. del job, fai clic sul pulsante di attivazione/disattivazione Percorso critico. Inoltre, puoi utilizzare Filtra fasi per selezionare solo le fasi che ti interessano.
Avanzamento della fase per i job in modalità flusso
La visualizzazione Avanzamento fase per i job di streaming può essere suddivisa in due sezioni. La prima metà della visualizzazione mostra un grafico che rappresenta l'aggiornamento dei dati per ogni fase di esecuzione del job. Se passi il mouse sopra il grafico, viene visualizzato il valore dell'aggiornamento dei dati in quel preciso istante di tempo.
La seconda metà della visualizzazione mostra le fasi di esecuzione del job, organizzate in nell'ordine topologico. Le fasi senza fasi discendenti vengono mostrate per prime, followed by their descendants. Questa visualizzazione consente di identificare più facilmente le fasi di una pipeline che richiedono più tempo del previsto. Le dimensioni delle barre sono basate l'aggiornamento dei dati più lungo per l'intero dominio del tempo.
I job di streaming vengono eseguiti finché non vengono annullati, svuotati o aggiornati.
- Utilizza il selettore dell'ora mostrato con il grafico per limitare l'ambito del dominio a un intervallo di tempo più utile.
- Utilizza il menu Filtra fasi per selezionare le fasi che ti interessano.
La visualizzazione Avanzamento fase ti aiuta a identificare quando il job di streaming è lento o bloccato in due modi diversi:
Il grafico Aggiornamento dei dati per fase include il rilevamento di anomalie, che, visualizza automaticamente le finestre temporali quando l'aggiornamento dei dati non è integro. Il grafico evidenzia potenziali blocchi quando l'aggiornamento dei dati supera la soglia 99° percentile per la finestra temporale selezionata. Analogamente, il grafico evidenzia potenziali rallentamenti quando l'aggiornamento dei dati supera il 95° percentile.
Rileva i colli di bottiglia passando il mouse sopra un punto temporale del grafico che mostra quelli imprevisti. che consentono di analizzare i dati e visualizzare i risultati. Le barre più lunghe indicano fasi più lente. In alternativa, fai clic sull'asse x del per visualizzare i dati in quell'istanza di tempo. Un approccio comune per trovare la fase che causa interruzioni o rallentamenti è trovare la fase più a monte (in alto) o più a valle (in basso) che causa un picco di aggiornamento dei dati. Questo approccio non è adatto a tutti gli scenari e potresti eseguire un ulteriore debug per individuare la causa esatta.
Riquadro informazioni sulla fase
Il riquadro Informazioni fase mostra un elenco di passaggi associati a una fase unita. classificati in base al tempo totale di esecuzione decrescente. Per aprire il riquadro, posiziona il cursore del mouse su una delle barre nella visualizzazione Avanzamento fase e fai clic su Visualizza dettagli.
Flusso di lavoro fase
Il flusso di lavoro della fase mostra le fasi di esecuzione del job, rappresentate da del flusso di lavoro di Google Cloud. Per mostrare solo le fasi che hanno contribuito direttamente alla creazione runtime del job, fai clic sull'opzione di attivazione/disattivazione Percorso critico.
Avanzamento worker
Per i job batch, Avanzamento worker mostra i worker per una determinata fase. Questa visualizzazione non è disponibile per i job di streaming.
Ogni barra corrisponde a un elemento di lavoro pianificato per un worker. Uno sparkline che monitora la CPU di lavoro di un worker si trova insieme a ciascun worker, semplificando l'individuazione problemi di sottoutilizzo.
A causa della densità di questa visualizzazione, devi filtrare questa vista preselezionando una fase. Innanzitutto, identifica una fase nella visualizzazione Avanzamento fase. Tieni il cursore sopra la fase e fai clic su Visualizza i lavoratori per accedere alla visualizzazione Avanzamento dei lavoratori.
Passaggi successivi
- Scopri di più sulla risoluzione dei problemi relativi ai job lenti o bloccati.
- Scopri i diversi componenti dell'interfaccia utente del monitoraggio basato su web di Dataflow.