Monitora la scalabilità automatica di Dataflow

Puoi visualizzare i grafici di monitoraggio con scalabilità automatica per i job di elaborazione in modalità flusso all'interno dell'interfaccia di monitoraggio Dataflow. Questi grafici mostrano le metriche relative alla durata di un job di pipeline e includono le seguenti informazioni:

  • Il numero di istanze worker utilizzate dal job in qualsiasi momento
  • Scalabilità automatica dei file di log
  • Il backlog stimato nel tempo
  • Utilizzo medio della CPU nel tempo

I grafici sono allineati verticalmente in modo da poter correlare le metriche di backlog e di utilizzo della CPU con gli eventi di scalabilità dei worker.

Per ulteriori informazioni su come Dataflow prende decisioni in merito alla scalabilità automatica, consulta la documentazione relativa alle funzionalità di ottimizzazione automatica. Per ulteriori informazioni sul monitoraggio e sulle metriche di Dataflow, consulta Utilizzare l'interfaccia di monitoraggio di Dataflow.

Accedi ai grafici di monitoraggio con scalabilità automatica

Puoi accedere all'interfaccia di monitoraggio di Dataflow utilizzando la console Google Cloud. Per accedere alla scheda delle metriche Scalabilità automatica:

  1. Accedi alla console Google Cloud.
  2. Selezionare il tuo progetto Google Cloud.
  3. Apri il menu di navigazione.
  4. In Analytics, fai clic su Dataflow. Viene visualizzato un elenco di job Dataflow insieme al relativo stato.
  5. Fai clic sul job che vuoi monitorare e poi sulla scheda Scalabilità automatica.

Monitora le metriche di scalabilità automatica

Il servizio Dataflow sceglie automaticamente il numero di istanze worker necessarie per eseguire il job di scalabilità automatica. Il numero di istanze worker può cambiare nel tempo in base ai requisiti del job.

Puoi visualizzare le metriche di scalabilità automatica nella scheda Scalabilità automatica dell'interfaccia di Dataflow. Ogni metrica è organizzata nei seguenti grafici:

La barra delle azioni di scalabilità automatica mostra lo stato attuale della scalabilità automatica e il numero di worker.

Scalabilità automatica

Il grafico di scalabilità automatica mostra un grafico delle serie temporali del numero attuale di worker, del numero target di worker e del numero minimo e massimo di worker.

Una visualizzazione di dati che mostra il numero di worker in una pipeline.

Per visualizzare i log di scalabilità automatica, fai clic su Mostra log di scalabilità automatica.

Per visualizzare la cronologia delle modifiche alla scalabilità automatica, fai clic su Più cronologia. Viene visualizzata una tabella con informazioni sulla cronologia dei worker della pipeline. La cronologia include gli eventi di scalabilità automatica, incluso se il numero di worker ha raggiunto il numero minimo o massimo di worker.

Tabella che mostra la cronologia dei worker di una pipeline.

Motivazione per la scalabilità automatica (solo Streaming Engine)

Il grafico Motivazione della scalabilità automatica mostra perché il gestore della scalabilità automatica ha fatto lo scale up, lo scale down o non ha intrapreso alcuna azione durante un determinato periodo di tempo.

Una visualizzazione dati che mostra la motivazione della scalabilità automatica.

Per visualizzare una descrizione della motivazione in un determinato punto, tieni il puntatore sul grafico.

Una visualizzazione dati che mostra una descrizione della motivazione della scalabilità automatica.

Nella tabella seguente sono elencate le azioni di scalabilità e i possibili motivi di scalabilità.

Azione di scalabilità Motivazione Descrizione
Nessuna modifica nella scalabilità Raccogliere più dati per prendere decisioni Il gestore della scalabilità automatica non dispone di indicatori sufficienti per fare lo scale up o lo scale down. Ad esempio, lo stato del pool di worker è cambiato di recente oppure le metriche relative al backlog o all'utilizzo fluttuano.
Nessuna variazione nella scalabilità, indicatori stabili Raggiungi il limite non correlato alle risorse La scalabilità è limitata da un limite come il parallelismo delle chiavi o il numero minimo e massimo di worker configurati.
Backlog ridotto e utilizzo elevato dei worker La scalabilità automatica della pipeline è convergente in un valore stabile in base al traffico e alla configurazione attuali. Non è necessaria alcuna modifica alla scalabilità.
Scale up Backlog elevato Fare lo scale up per ridurre il backlog.
Elevato utilizzo worker Fare lo scale up per raggiungere l'utilizzo target della CPU.
Raggiungi un limite non relativo alle risorse Il numero minimo di worker è stato aggiornato e il numero attuale di worker è inferiore al minimo configurato.
Scalabilità verso il basso Basso utilizzo del worker Fare lo scale down per raggiungere l'utilizzo target della CPU.
Raggiungi un limite non relativo alle risorse Il numero massimo di worker è stato aggiornato e il numero attuale di worker è superiore al massimo configurato.

Utilizzo CPU worker

L'utilizzo della CPU è la quantità di CPU utilizzata divisa per la quantità di CPU disponibile per l'elaborazione. Il grafico Utilizzo medio della CPU mostra l'utilizzo medio della CPU per tutti i worker nel tempo, il suggerimento sull'utilizzo dei worker e se Dataflow ha utilizzato attivamente il suggerimento come destinazione.

Una visualizzazione dati che mostra l'utilizzo medio della CPU per tutti i worker Dataflow.

Backlog (solo Streaming Engine)

Il grafico Backlog massimo fornisce informazioni sugli elementi in attesa di essere elaborati. Il grafico mostra una stima della quantità di tempo in secondi necessaria per utilizzare il backlog attuale se non arrivano nuovi dati e la velocità effettiva non cambia. Il tempo di backlog stimato viene calcolato sia in base alla velocità effettiva sia ai byte di backlog dell'origine di input che devono ancora essere elaborati. Questa metrica viene utilizzata dalla funzionalità di scalabilità automatica dei flussi di dati per determinare quando fare lo scale up o lo scale down.

I dati per questo grafico sono disponibili solo per i job che utilizzano Streaming Engine. Se il job di flusso dei dati non utilizza Streaming Engine, il grafico è vuoto.

Una visualizzazione dati che mostra il grafico del backlog massimo in una pipeline in modalità flusso.

Suggerimenti

Ecco alcuni comportamenti che potresti osservare nella tua pipeline e suggerimenti su come regolare i parametri di scalabilità automatica:

  • Ridimensionamento eccessivo. Se l'utilizzo della CPU target è impostato su un valore troppo elevato, potresti visualizzare un pattern in cui Dataflow fa lo scale down, il backlog inizia ad aumentare e Dataflow fa nuovamente lo scale up per compensare, invece di convergere su un numero stabile di worker. Per limitare questo problema, prova a impostare un suggerimento per l'utilizzo dei worker inferiore. Osserva l'utilizzo della CPU nel punto in cui il backlog inizia a crescere e imposta il suggerimento sull'utilizzo su quel valore.

  • Scala troppo lenta. Se l'upscaling è troppo lento, potrebbe subire un ritardo rispetto ai picchi di traffico, con conseguenti periodi di maggiore latenza. Prova a ridurre il suggerimento per l'utilizzo dei worker, in modo che Dataflow faccia lo scale up più rapidamente. Osserva l'utilizzo della CPU nel punto in cui il backlog inizia ad aumentare e imposta il suggerimento di utilizzo su quel valore. Monitora la latenza e i costi, poiché un valore del suggerimento inferiore può aumentare il costo totale della pipeline, se viene eseguito il provisioning di più worker.

  • Aumento eccessivo delle dimensioni. Se noti un aumento eccessivo, con un conseguente aumento dei costi, ti consigliamo di aumentare il suggerimento per l'utilizzo dei worker. Monitora la latenza per assicurarti che rimanga entro limiti accettabili per il tuo scenario.

Quando sperimenti con un nuovo valore di suggerimento sull'utilizzo dei worker, attendi alcuni minuti affinché la pipeline si stabilizzi dopo ogni modifica.

Passaggi successivi