STL_NESTLOOP - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

STL_NESTLOOP

Analyse les étapes d’exécution de jointure par boucle imbriquée pour les requêtes.

STL_NESTLOOP est visible par tous les utilisateurs. Les super-utilisateurs peuvent voir toutes les lignes, tandis que les utilisateurs standard peuvent voir uniquement leurs propres données. Pour de plus amples informations, veuillez consulter Visibilité des données dans les tables et vues système.

Note

STL_NESTLOOP contient uniquement les requêtes exécutées sur les principaux clusters provisionnés. Il ne contient pas de requêtes exécutées sur des clusters de dimensionnement simultané ou sur des espaces de noms sans serveur. Pour accéder aux plans d'explication des requêtes exécutées à la fois sur les clusters principaux, les clusters de dimensionnement de la simultanéité et les espaces de noms sans serveur, nous vous recommandons d'utiliser la vue de surveillance SYS. SYS_QUERY_DETAIL Les données de la vue de surveillance SYS sont formatées pour être plus faciles à utiliser et à comprendre.

Colonnes de la table

Nom de la colonne Type de données Description
userid entier ID de l’utilisateur qui a généré l’entrée.
query entier ID de requête. La colonne de requête peut servir à joindre les autres tables système et les vues.
slice entier Numéro identifiant la tranche au cours de laquelle la requête était en cours d’exécution.
segment entier Numéro qui identifie le segment de requête.
étape entier Étape de la requête exécutée.
starttime timestamp Heure au format UTC du début de la requête. Le temps total inclut la mise en file d'attente et l'exécution avec 6 chiffres de précision pour les fractions de secondes. olpPar exemple : 2009-06-12 11:29:19.131358.
endtime timestamp Heure au format UTC de l’exécution de la requête. Le temps total inclut la mise en file d'attente et l'exécution avec 6 chiffres de précision pour les fractions de secondes. olpPar exemple : 2009-06-12 11:29:19.131358.
tasknum entier Numéro du processus de la tâche de requête qui a été assigné pour exécuter l’étape.
rows bigint Nombre total de lignes traitées.
tbl entier ID de table.
checksum bigint Information à utilisation interne uniquement.

Exemples de requêtes

Comme la requête suivante oublie de joindre la table CATEGORY, elle produit un produit cartésien partiel, ce qui n’est pas recommandé. La requête illustre ici une boucle imbriquée.

select count(event.eventname), event.eventname, category.catname, date.caldate from event, category, date where event.dateid = date.dateid group by event.eventname, category.catname, date.caldate;

La requête suivante affiche les résultats de la requête précédente dans la vue STL_NESTLOOP.

select query, slice, segment as seg, step, datediff(msec, starttime, endtime) as duration, tasknum, rows, tbl from stl_nestloop where query = pg_last_query_id();
query | slice | seg | step | duration | tasknum | rows | tbl -------+-------+-----+------+----------+---------+-------+----- 6028 | 0 | 4 | 5 | 41 | 22 | 24277 | 240 6028 | 1 | 4 | 5 | 26 | 23 | 24189 | 240 6028 | 3 | 4 | 5 | 25 | 23 | 24376 | 240 6028 | 2 | 4 | 5 | 54 | 22 | 23936 | 240