Monitorare il rendimento utilizzando i contatori delle prestazioni in Mainframe Connector

Questa guida descrive come abilitare e raccogliere le tracce dei contatori delle prestazioni in Mainframe Connector.

Panoramica

I contatori delle prestazioni acquisiscono metriche di esecuzione ad alta risoluzione e dati sullo stato a livello di thread durante le operazioni di Mainframe Connector, come la transcodifica dei set di dati, i caricamenti di Cloud Storage e il caricamento dei dati di BigQuery. Puoi utilizzare le tracce dei contatori per diagnosticare i colli di bottiglia delle prestazioni, la contropressione della memoria o della coda, il blocco dei thread, i vincoli di rete o I/O e l'utilizzo delle risorse di sistema del mainframe.

Metriche chiave acquisite

Le tracce dei contatori delle prestazioni includono campioni ad alta frequenza di metriche interne, ad esempio:

  • Monitoraggio dello stato del worker: tempo trascorso negli stati active, queue_blocked, io_blocked, compressing e hashing.
  • I/O e velocità effettiva: byte di lettura e scrittura, velocità effettiva di trasferimento e velocità di transcodifica dei blocchi.
  • Dinamiche della coda: dimensioni del buffer e della coda dei worker nelle fasi della pipeline di esecuzione.
  • Metriche di sistema: tempi di operazione di basso livello correlati ai timestamp con precisione in nanosecondi.

Le tracce dei contatori delle prestazioni raccolgono solo i metadati di esecuzione e le statistiche sui tempi. Non raccolgono i contenuti dei set di dati, i record dei clienti o le informazioni che consentono l'identificazione personale (PII).

Abilitare i contatori delle prestazioni

I contatori delle prestazioni sono disabilitati per impostazione predefinita. Puoi abilitarle impostando la variabile di ambiente MFC_PERF_FILE sul percorso di output di destinazione prima di eseguire i job di Mainframe Connector.

Ambienti shell

Per abilitare i contatori delle prestazioni in un ambiente shell all'interno di Linux o dei servizi di sistema UNIX z/OS, esporta MFC_PERF_FILE prima di richiamare Mainframe Connector:

export MFC_PERF_FILE="/tmp/mfc_perf.perf"
copy binary file:/path/to/file gs://bucket/path/to/object

Per disabilitare la raccolta dei contatori delle prestazioni, annulla l'impostazione della variabile di ambiente:

unset MFC_PERF_FILE

Ambiente JCL del mainframe

Per abilitare i contatori delle prestazioni per un job JCL che esegue Mainframe Connector, definisci MFC_PERF_FILE nella procedura di Mainframe Connector o nel PARM della procedura del job. Quando fornisci il tuo PARM, mantieni sempre anche il PARM predefinito (/I+ com.google.bqsh.Bqsh).

Il seguente esempio mostra come abilitare i contatori delle prestazioni per un job JCL:

//STEP01 EXEC BQSH,PARMDD=MFCPERF
//INFILE DD DSN=HLQ.DATA.FILENAME,DISP=SHR
//COPYBOOK DD DSN=HLQ.COPYBOOK.FILENAME,DISP=SHR
//MFCPERF DD *
ENVAR("MFC_PERF_FILE=/tmp/mfc_perf.perf")/I+
com.google.bqsh.Bqsh
/*
//STDIN DD *
BUCKET=my-target-bucket-1234
gsutil cp --replace gs://$BUCKET/tablename.orc
/*

Configurare i contatori delle prestazioni

Puoi configurare la frequenza di campionamento e la dimensione massima dei file di log dei contatori delle prestazioni utilizzando le seguenti variabili di ambiente:

Variabile di ambiente Descrizione Valore predefinito
MFC_PERF_FILE Il percorso in cui verranno scritte le metriche dei contatori delle prestazioni. Se non è impostata o è vuota, la raccolta dei contatori delle prestazioni è disabilitata. Disabilitato
MFC_PREF_COLLECTION_INTERVAL_MS La frequenza di campionamento in millisecondi. Specifica la frequenza con cui le metriche vengono scaricate nel file di output. 100 (0,1 secondi)
MFC_MAX_PERF_MAX_FILE_SIZE_BYTES Il limite di dimensione massima per il file di output in byte. Una volta raggiunto, la scrittura si interrompe automaticamente per evitare di riempire lo spazio di archiviazione su disco. 67108864 (64 MiB)

Inviare i file dei contatori all'assistenza Google per l'analisi

Il file di output generato dalla funzionalità dei contatori delle prestazioni (ad esempio /tmp/mfc_performance.perf) è formattato come un set di dati binari contenente schemi di metriche strutturate e record di misurazione. Non è testo normale leggibile e non può essere valutato direttamente con i visualizzatori di log standard.

Il file di output richiede strumenti di analisi interni di Google e visualizzatori di metriche specializzati per decodificare le transizioni di stato e i grafici della profondità della coda. Per analizzare i dati sul rendimento, invia il file generato a Google Cloud Supporto o al tuo Technical Account Manager.

Quando apri una richiesta di assistenza relativa a problemi di prestazioni, velocità effettiva di transcodifica lenta o durata imprevista del job, segui questi passaggi:

  1. Imposta MFC_PERF_FILE su un percorso valido (ad esempio /tmp/mfc_perf.perf).
  2. Riproduci il problema eseguendo l'esecuzione del job durante il monitoraggio delle prestazioni.
  3. Recupera il file .perf generato dal percorso specificato.
  4. Allega il file .perf insieme ai log dei job alla tua Google Cloud richiesta di assistenza per la valutazione da parte dei tecnici di Google.