Partager via


Activer les statistiques d’analyse pour les requêtes

Important

Azure HDInsight sur AKS a été mis hors service le 31 janvier 2025. En savoir plus avec cette annonce.

Vous devez migrer vos charges de travail vers Microsoft Fabric ou un produit Azure équivalent pour éviter l’arrêt brusque de vos charges de travail.

Important

Cette fonctionnalité est actuellement en préversion. Les Conditions d’utilisation supplémentaires pour les préversions Microsoft Azure incluent des termes juridiques supplémentaires qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou qui ne sont pas encore publiées en disponibilité générale. Pour plus d’informations sur cette préversion spécifique, consultez informations sur Azure HDInsight sur AKS en préversion. Pour des questions ou des suggestions de fonctionnalités, envoyez une demande sur AskHDInsight avec les détails et suivez-nous pour plus de mises à jour sur Communauté Azure HDInsight.

Souvent, les équipes de données sont tenues d’examiner les performances ou d’optimiser les requêtes pour améliorer l’utilisation des ressources ou répondre aux besoins de l’entreprise.

Une nouvelle fonctionnalité a été ajoutée dans Trino pour HDInsight sur AKS qui permet à l’utilisateur de capturer les statistiques d’analyse pour n’importe quel connecteur. Cette fonctionnalité fournit des insights plus approfondis sur le profil de performances des requêtes au-delà de ce qui est disponible dans les statistiques produites par Trino.

Vous pouvez activer cette fonctionnalité à l’aide de propriété de sessioncollect_raw_scan_statistics, et en suivant la commande Trino :

SET SESSION collect_raw_scan_statistics=true

Une fois activés, les opérateurs sources de la requête comme TableScanOperator, ScanFilterAndProject etc. ont des statistiques sur les analyses de données, la granularité est par instance d’opérateur dans un pipeline.

Pourboire

Les statistiques de scan sont utiles pour identifier les goulots d'étranglement lorsque le cluster ou la requête n'est pas limité par le processeur et que les performances de lecture de la requête doivent être étudiées. Il permet également de comprendre le profil d’exécution de la requête du point de vue du niveau fractionné.

Note

Actuellement, le nombre de fractionnements capturés par worker est limité à 1 000 en raison des contraintes de taille des données générées. Si le nombre de fractionnements par worker pour la requête dépasse cette limite, les 1 000 fractionnements les plus longs en cours d’exécution sont retournés.

Comment accéder aux statistiques d’analyse

Une fois la propriété de session définie, les requêtes suivantes de la session commencent à capturer des statistiques à partir d’opérateurs sources chaque fois qu’elles sont disponibles. Il existe plusieurs façons pour les utilisateurs de consommer et d’analyser les statistiques d’analyse générées pour une requête.

Requête JSON

L’onglet Json de la page détails de la requête fournit la représentation JSON de la requête, qui inclut des statistiques sur chaque étape, le pipeline de la requête. Lorsque la propriété de session est définie, le json inclut un nouveau champ appelé scanStats dans queryStats.operatorSummaries[*]. Le tableau contient un objet par instance d’opérateur.

L'exemple suivant montre un JSON pour une requête utilisant hive connector avec les statistiques d'analyse activées.

Note

Le résumé des statistiques d'analyse inclut splitInfo, lequel est rempli par le connecteur. Cela permet aux utilisateurs de contrôler les informations sur le magasin qu’ils souhaitent inclure dans leurs connecteurs personnalisés.

capture d’écran montrant le résumé des performances des requêtes.

Interface de statistiques de balayage

Vous trouverez un nouvel onglet appelé Scan Stats dans la page, Détails de la requête, qui visualise les statistiques produites par cette fonctionnalité et fournit des aperçus sur les performances en grains subdivisés de chaque worker. La page permet aux utilisateurs d’afficher le profil d’exécution de trino pour la requête avec des informations telles que les lectures simultanées au fil du temps et du débit.

Capture d’écran montrant l’ajout de l’état de l’analyse.

L’exemple suivant montre une page pour une requête avec les statistiques d’analyse activées.

capture d’écran montrant l’onglet État de l’analyse.

Utilisation de l’enregistreur d’événements Microsoft Query**

Microsoft Journal des requêtes a une prise en charge intégrée pour cette fonctionnalité. Lorsque cette fonctionnalité est activée, le plug-in d’enregistreur de requêtes remplit une table appelée operatorstats ainsi que la table des événements de requête, cette table est dénormalisée afin que chaque instance d’opérateur soit une ligne pour chaque requête.