Tous les produits
Search
Centre de documentation

E-MapReduce:Query profile

Dernière mise à jour :Aug 19, 2026

Un Query profile capture les informations d'exécution de tous les nœuds worker impliqués dans une requête. Grâce à une analyse visuelle, le Query profile vous permet d'identifier rapidement les goulots d'étranglement liés aux performances des requêtes au sein d'une instance StarRocks.

Enable query profile

Pour activer le Query profile sur votre instance, définissez la variable enable_profile sur true.

SET enable_profile = true;
Remarque
  • Si votre instance utilise une version du noyau 2.5.13 ou ultérieure (série 2.x) ou 3.1.5 ou ultérieure (série 3.x), vous pouvez activer globalement le Query profile sans impacter les performances des requêtes.

  • Pour les versions du noyau antérieures à celles indiquées ci-dessus, mettez à niveau le noyau avant d'activer le Query profile afin d'éviter toute dégradation des performances des requêtes.

Structure du Query profile

Un Query profile se compose des cinq éléments suivants :

  • Fragment : arbre d'exécution. Une requête comprend un ou plusieurs fragments.

  • Instance de fragment : un fragment peut comporter plusieurs instances, appelées instances de fragment. Chacune s'exécute sur un nœud de calcul différent.

  • Pipeline : chaîne d'exécution. Un pipeline est constitué d'une série d'opérateurs. Une instance de fragment se décompose en un ou plusieurs pipelines.

  • Pilote de pipeline : un pipeline peut comporter plusieurs instances, appelées pilotes de pipeline, afin d'exploiter pleinement plusieurs cœurs.

  • Opérateur : composant d'un pilote de pipeline. Un pilote de pipeline est composé de plusieurs opérateurs.

Visualiser un Query Profile

StarRocks Manager représente le Query Profile sous forme d'arborescence, où chaque nœud correspond à un opérateur agrégé. Cliquez sur un opérateur pour afficher ses détails dans les onglets situés à droite de la page. Si aucun opérateur n'est sélectionné, la partie droite affiche l'aperçu de la requête (Query overview).

Aperçu de l'exécution

La page Execution Details affiche un plan d'exécution visuel sous forme d'arbre à gauche. Chaque nœud d'opérateur indique son temps d'exécution et le pourcentage correspondant. Les nœuds gourmands en temps, tels que HASH_JOIN, sont mis en évidence en rouge. Les lignes reliant les nœuds indiquent le nombre de lignes traitées. À droite, la section supérieure présente une liste triée des nœuds par pourcentage de temps, tandis que la section inférieure fournit un aperçu des métriques récapitulatives.

La page Execution Details affiche les principales métriques récapitulatives, notamment le temps d'exécution, les performances des E/S et le volume de transfert de données réseau.

  • Total

    Metric

    Description

    Total

    Temps total consommé par la requête. Cette durée inclut les phases de planification, d'exécution et d'analyse.

    PlannerTotalTime

    Temps de planification. Cela comprend l'analyse syntaxique du code SQL, l'analyse, l'optimisation et la génération du plan d'exécution.

    ExecutionWallTime

    Temps d'exécution de la requête et temps d'exécution côté BE (temps horloge réel de l'exécution).

    CollectProfileTime

    Temps de collecte du profil. Il s'agit du temps consacré à la collecte des métriques de profil auprès des BE.

  • Execution time

    Metric

    Description

    ExecutionWallTime

    Temps total consommé par l'exécution de la requête.

    CumulativeCpuTime

    Somme du temps CPU pour tous les nœuds BE. Cette valeur reflète la consommation totale des ressources CPU.

    CpuUtilization

    Utilisation du CPU = CumulativeCpuTime / ExecutionWallTime. Cette valeur indique le nombre moyen de cœurs CPU utilisés.

    CumulativeWaitTime

    Temps d'attente cumulé du pipeline. Cela inclut le temps d'attente de planification (ScheduleTime) et le temps de blocage (PendingTime) dus à des conditions telles qu'une file d'entrée vide, une file de sortie pleine ou des dépendances non prêtes.

    OperatorCumulativetime

    Somme des temps d'exécution de tous les opérateurs. Cela inclut les E/S, le réseau et le calcul.

    IO

    Temps d'E/S cumulé pour tous les opérateurs Scan. Cela inclut les lectures sur disque local, les lectures distantes et l'accès au cache de données.

  • I/O

    Metric

    Description

    RawRowsRead

    Nombre total d'enregistrements analysés par tous les nœuds SCAN.

    DiskReadBytes

    Volume total de données compressées lues par tous les nœuds d'exécution SCAN.

    LocalDiskReadBytes

    Taille totale des données compressées lues depuis le cache local par tous les nœuds d'exécution Connector Scan. Cette métrique s'applique uniquement aux instances à données partagées.

    RemoteReadBytes

    Taille totale des données compressées lues depuis OSS par tous les nœuds d'exécution Connector Scan. Cette métrique s'applique uniquement aux instances à données partagées.

    ResultRows

    Nombre total d'enregistrements produits par tous les nœuds d'exécution SCAN.

    ResultBytes

    Volume total de données lues par tous les nœuds d'exécution SCAN.

  • Network

    Metric

    Description

    Bytes sent over network

    Nombre total d'octets transférés par tous les nœuds d'exécution Exchange. Cela correspond à la métrique BytesSent.

Opérateur

Cliquez sur un opérateur pour afficher les informations suivantes à droite de la page :

  • Onglet CoreMetrics : affiche les métriques principales de l'opérateur.

  • Onglet NodeMetrics : affiche toutes les métriques de l'opérateur.

  • Onglet Pipeline : affiche les métriques du pipeline contenant l'opérateur. Ces métriques concernent uniquement la planification et ne nécessitent pas une attention particulière.

Remarque
  • Plus la proportion de temps passée par un opérateur est élevée, plus sa couleur est foncée. Les trois nœuds ayant les temps d'exécution les plus longs sont codés par couleur. Cela vous aide à identifier facilement les goulots d'étranglement des requêtes.

  • Faites défiler la molette de la souris ou cliquez sur les boutons de zoom pour agrandir ou réduire l'arborescence du profil.

Métriques clés

Niveau de la requête

  • Métriques récapitulatives

    Metric

    Description

    Total

    Durée totale écoulée de la requête, y compris le temps passé dans les phases de planification (Planning), d'exécution (Executing) et de profilage (Profiling).

    QueryCpuCost

    Temps CPU cumulé consommé par la requête. Cette valeur correspond à la somme du temps CPU de tous les processus simultanés ; elle peut donc dépasser le temps d'exécution réel.

    QueryMemCost

    Mémoire totale consommée par la requête.

    Variables

    Variables associées à la requête.

  • Niveau du pipeline

    Metric

    Description

    ActiveTime

    Temps d'exécution du pilote.

    DriverTotalTime

    Temps total consommé par le pilote.

    PendingTime

    Temps pendant lequel un pilote attend ses entrées et prérequis.

Niveau de l'opérateur

  • Métriques générales des opérateurs

    Metric

    Description

    OperatorTotalTime

    Temps d'exécution total de l'opérateur.

    PushRowNum

    Nombre total de lignes produites par l'opérateur.

    PullRowNum

    Nombre total de lignes reçues en entrée par l'opérateur.

    PullChunkNum

    Nombre total de chunks reçus en entrée par l'opérateur.

    PushChunkNum

    Nombre total de chunks produits par l'opérateur.

    PeakMemoryUsage

    Utilisation mémoire maximale de l'opérateur.

  • Opérateur OLAP Scan

    Metric

    Description

    Table

    Nom de la table.

    ScanTime

    Temps total consacré aux opérations de scan, effectuées dans un pool de threads d'E/S asynchrones.

    TabletCount

    Nombre de tablets analysés.

    PushdownPredicates

    Nombre de prédicats poussés vers le bas (pushed-down).

    BytesRead

    Volume de données lues.

    CompressedBytesRead

    Volume de données compressées lues.

    IOTime

    Temps d'E/S total.

    BitmapIndexFilterRows

    Nombre de lignes filtrées par les index bitmap.

    BloomFilterFilterRows

    Nombre de lignes filtrées par le filtre Bloom.

    SegmentRuntimeZoneMapFilterRows

    Nombre de lignes filtrées par la zone map d'exécution (runtime zone map).

    SegmentZoneMapFilterRows

    Nombre de lignes filtrées par la zone map.

    ShortKeyFilterRows

    Nombre de lignes filtrées par la clé courte (short key).

    ZoneMapIndexFilterRows

    Nombre de lignes filtrées par l'index de zone map.

  • Opérateur Connector Scan

    Ces métriques s'ajoutent à celles de l'opérateur OLAP Scan et s'appliquent aux instances utilisant la séparation du calcul et du stockage.

    Metric

    Description

    CompressedBytesReadLocalDisk

    Volume de données compressées lues depuis le cache local sur le nœud de calcul.

    CompressedBytesReadRemote

    Volume total de données compressées lues depuis OSS.

    IOTimeLocalDisk

    Temps consacré aux opérations d'E/S lors de la lecture des données depuis le cache local.

    IOTimeRemote

    Temps consacré aux opérations d'E/S lors de la lecture des données depuis OSS.

  • Opérateur Exchange

    • Sink

      Metric

      Description

      PartType

      Mode de distribution des données. Valeurs valides : UNPARTITIONED, RANDOM, HASH_PARTITIONED et BUCKET_SHUFFLE_HASH_PARTITIONED.

      BytesSent

      Volume de données envoyées.

      OverallThroughput

      Débit global de transfert de données.

      NetworkTime

      Temps consacré à la transmission des paquets, hors temps de traitement post-réception.

      WaitTime

      Temps d'attente dû au remplissage de la file d'attente côté émetteur.

      NetworkBandwidth

      Bande passante réseau calculée pendant le transfert de données.

    • Source

      Metric

      Description

      SenderWaitLockTime

      Temps total pendant lequel l'émetteur a attendu un verrou.

      BytesReceived

      Volume de données reçues.

      DecompressChunkTime

      Temps total consacré à la décompression des chunks de données.

      DeserializeChunkTime

      Temps total consacré à la désérialisation des chunks de données.

      SenderTotalTime

      Temps total consacré par l'émetteur.

  • Opérateur Aggregate

    Metric

    Description

    GroupingKeys

    Colonnes utilisées dans la clause GROUP BY.

    AggregateFunctions

    Fonctions d'agrégation appliquées.

    AggComputeTime

    Temps consacré au calcul des fonctions d'agrégation.

    ExprComputeTime

    Temps consacré au calcul des expressions.

    HashTableSize

    Taille de la table de hachage utilisée pour l'agrégation.

  • Opérateur Join

    • Probe

      Metric

      Description

      DistributionMode

      Mode de distribution des données.

      JoinType

      Type de jointure.

      OtherJoinConjunctEvaluateTime

      Temps consacré à l'évaluation des autres conjonctions de jointure.

      ProbeConjunctEvaluateTime

      Temps consacré à l'évaluation des conjonctions de probe.

      SearchHashTableTime

      Temps consacré à la recherche dans la table de hachage.

      WhereConjunctEvaluateTime

      Temps consacré à l'évaluation des conjonctions WHERE.

    • Build

      Metric

      Description

      JoinPredicates

      Prédicats utilisés dans la condition de jointure.

      JoinType

      Type de jointure.

      BuildBuckets

      Nombre de buckets dans la table de hachage de la jointure.

      BuildHashTableTime

      Temps consacré à la construction de la table de hachage pour la jointure.

      RuntimeFilterBuildTime

      Temps consacré à la construction du filtre d'exécution (runtime filter).

      RuntimeFilterNum

      Nombre de filtres d'exécution (runtime filters).

      DistributionMode

      Mode de distribution des données.

  • Opérateur Window Function

    Metric

    Description

    ComputeTime

    Temps consacré au calcul des fonctions de fenêtrage.

    PartitionKeys

    Clés utilisées pour partitionner la fenêtre.

    AggregateFunctions

    Fonctions d'agrégation appliquées.

  • Opérateur Sort

    Metric

    Description

    SortKeys

    Clés de tri.

    SortType

    Méthode de tri utilisée, telle que le tri complet ou le tri top-N.

    MergingTime

    Temps consacré à la fusion des runs de données triées.

    SortingTime

    Temps consacré au tri des données.

  • Opérateur TableFunction

    Metric

    Description

    TableFunctionExecTime

    Temps consacré au calcul de la fonction de table.

    TableFunctionExecCount

    Nombre d'exécutions de la fonction de table.

  • Opérateur Project

    Metric

    Description

    ExprComputeTime

    Temps consacré au calcul des expressions.

    CommonSubExprComputeTime

    Temps consacré au calcul des sous-expressions communes.

  • Opérateur LocalExchange

    Metric

    Description

    Type

    Type d'échange local. Valeurs valides : Passthrough, Partition et Broadcast.

    ShuffleNum

    Nombre de shuffles. Cette métrique s'applique uniquement lorsque Type est Partition.