Comprendre le format d'heure de la commande EXPLAIN - Postgres


14

Lorsque j'exécute la commande EXPLAIN ANALYZE sur une requête donnée, j'ai du mal à interpréter la valeur de temps sortie. Par exemple (heure réelle = 8163.890..8163.893). Les décimales internes représentent-elles des caractères répétitifs ?? Désolé, cela peut être une question noobish, mais je veux m'assurer que j'interprète correctement les résultats.

   ->  GroupAggregate  (cost=2928781.21..2929243.02 rows=1 width=27712) (actual time=8163.890..8163.893 rows=1 loops=1)

Réponses:


19

actual time=8163.890..8163.893 veux dire

L'initialisation de cette étape ("démarrage") a pris 8163.890ms L'
exécution de l'étape entière a pris 8163.893ms

Donc, dans ce cas, presque tout le travail a été effectué dans la phase de démarrage de cette étape.

Modifier :
la même logique est "appliquée" aux informations de coût

cost=2928781.21..2929243.02 veux dire:

Le coût pour initialiser cette étape a été estimé à: 2928781.21
Le coût pour exécuter l'étape a été estimé à: 2929243.02

(notez que le "coût" n'a pas d'unité - c'est une valeur arbitraire)

Ceci est également expliqué ici: http://www.postgresql.org/docs/current/static/using-explain.html


Merci pour l'information et le lien - J'ai aussi trouvé ce document utile, quoique quelque peu dépassé
— Jmoney38

Merci pour le lien. Le document n'est pas vraiment dépassé. Les versions plus récentes de PostgreSQL affichent plus d'informations dans le plan, mais les principes de base s'appliquent toujours.
— a_horse_with_no_name

Comment interprétez-vous une analyse expliquer avec cela dans une boucle imbriquée: (actual time=0.002..0.002 rows=0 loops=119878)? Je suppose que la moyenne par boucle a arrondi à zéro lignes, ce qui n'est pas utile, mais ces temps signifient-ils vraiment que le coût d'exécution est si trivial qu'il se compose entièrement de coût de démarrage?
— Davos

5

Le premier nombre est le temps qu'il a fallu pour renvoyer la première ligne de cette étape. Le deuxième nombre est le temps qu'il a fallu pour retourner la dernière ligne.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.