Surveiller les performances à l'aide des compteurs de performances dans Mainframe Connector

Ce guide explique comment activer et collecter des traces de compteurs de performances dans Mainframe Connector.

Présentation

Les compteurs de performances capturent des métriques d'exécution haute résolution et des données d'état au niveau des threads lors des opérations Mainframe Connector, telles que le transcodage de l'ensemble de données, les importations Cloud Storage et le chargement de données BigQuery. Vous pouvez utiliser des traces de compteurs pour diagnostiquer les goulots d'étranglement des performances, la contre-pression de la mémoire ou de la file d'attente, le blocage des threads, les contraintes réseau ou d'E/S, ainsi que l'utilisation des ressources du système mainframe.

Principales métriques capturées

Les traces de compteurs de performances incluent des échantillons haute fréquence de métriques internes, telles que :

  • Suivi de l'état des nœuds de calcul : temps passé dans les états active, queue_blocked, io_blocked, compressing et hashing.
  • E/S et débit : octets lus et écrits, débit de transfert et taux de transcodage des blocs.
  • Dynamique des files d'attente : tailles des tampons et des files d'attente des nœuds de calcul dans les étapes du pipeline d'exécution.
  • Métriques système : timings d'opération de bas niveau corrélés à des codes temporels de précision nanoseconde.

Les traces de compteurs de performances ne collectent que les métadonnées d'exécution et les statistiques de timing. Elles ne collectent pas le contenu de l'ensemble de données, les enregistrements client ni les informations personnelles.

Activer les compteurs de performances

Les compteurs de performances sont désactivés par défaut. Vous pouvez les activer en définissant la variable d'environnement MFC_PERF_FILE sur le chemin de sortie cible avant d'exécuter des jobs Mainframe Connector.

Environnements de shell

Pour activer les compteurs de performances dans un environnement de shell sous Linux ou z/OS UNIX System Services, exportez MFC_PERF_FILE avant d'appeler Mainframe Connector :

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

Pour désactiver la collecte des compteurs de performances, supprimez la variable d'environnement :

unset MFC_PERF_FILE

Environnement JCL mainframe

Pour activer les compteurs de performances pour un job JCL exécutant Mainframe Connector, définissez MFC_PERF_FILE dans votre procédure Mainframe Connector ou dans la procédure PARM du job. Lorsque vous fournissez votre propre PARM, conservez toujours le PARM par défaut (/I+ com.google.bqsh.Bqsh).

L'exemple suivant montre comment activer les compteurs de performances pour 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
/*

Configurer les compteurs de performances

Vous pouvez configurer la fréquence d'échantillonnage et la taille maximale des fichiers journaux des compteurs de performances à l'aide des variables d'environnement suivantes :

Variable d'environnement Description Valeur par défaut
MFC_PERF_FILE Chemin d'accès où les métriques des compteurs de performances seront écrites. Si elle n'est pas définie ou est vide, la collecte des compteurs de performances est désactivée. Désactivé
MFC_PREF_COLLECTION_INTERVAL_MS Fréquence d'échantillonnage en millisecondes. Spécifie la fréquence à laquelle les métriques sont vidées dans le fichier de sortie. 100 (0,1 seconde)
MFC_MAX_PERF_MAX_FILE_SIZE_BYTES Limite de taille maximale du fichier de sortie en octets. Une fois cette limite atteinte, l'écriture s'arrête automatiquement pour éviter de remplir l'espace de stockage sur disque. 67108864 (64 Mio)

Envoyer des fichiers de compteurs à l'assistance Google pour analyse

Le fichier de sortie généré par la fonctionnalité des compteurs de performances (par exemple, /tmp/mfc_performance.perf) est mis en forme en tant qu'ensemble de données binaires contenant des schémas de métriques structurés et des enregistrements de mesure. Il ne s'agit pas de texte brut lisible par l'homme et il ne peut pas être évalué directement avec des visionneuses de journaux standards.

Le fichier de sortie nécessite des outils d'analyse Google internes et des visualisateurs de métriques spécialisés pour décoder les transitions d'état et les graphiques de profondeur de file d'attente. Pour analyser les données sur les performances, envoyez le fichier généré à Google Cloud l'assistance ou à votre Responsable de compte technique.

Lorsque vous ouvrez une demande d'assistance concernant des problèmes de performances, un débit de transcodage lent ou une durée de job inattendue, procédez comme suit :

  1. Définissez MFC_PERF_FILE sur un chemin d'accès valide (par exemple, /tmp/mfc_perf.perf).
  2. Reproduisez le problème en exécutant le job sous surveillance des performances.
  3. Récupérez le fichier .perf généré à partir du chemin d'accès spécifié.
  4. Joignez le fichier .perf ainsi que les journaux de votre job à votre Google Cloud demande d'assistance pour que les ingénieurs Google puissent l'évaluer.