PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 06/10/2018 00:08:01

TheMatrix
Membre

L'ordre de la lecture d'un plan d'exécution dans PostgreSQL

Bonjour,


Je voulais poser une question concernant les plans d'exécution dans PostgreSQL. En fait au chapitre 14.1 de la documentation en ligne (14.1. Using EXPLAIN) il y a la présentation des éléments liés à ce sujet comme par exemple différents types de scan et les coûts, etc.


Ce que je voulais savoir, c'est l'ordre de la lecture de l'arbre d'un plan d'exécution qui est imprimé sous forme d'une table quand l'on fait un EXPLAIN. Sous oracle, voici comment je procède:


Dans la table du plan d'exécution, je regarde la ligne la plus décalée à droite et s'il y en a plusieurs qui sont au même niveau le plus décalées à droite alors je prends la première (en lisant les lignes du haut vers le bas). J'évalue l'opération. Ensuite j'évalue son parent et je répète exactement la même procédure jusqu'à épuiser l'ensemble des opérations (= noeuds de l'arbre du plan d'exécution) et arriver finalement à la première ligne qui est la requête principale.


Ma question est donc la suivante: est-ce que la lecture du plan d'exécution sous PostgreSQL, se fait de la même manière décrite ci-dessus? Car dans la documentation je n'ai rien trouvé concernant ce sujet.


Merci d'avance,

Dernière modification par TheMatrix (06/10/2018 00:09:30)

Hors ligne

#2 06/10/2018 09:43:50

gleu
Administrateur

Re : L'ordre de la lecture d'un plan d'exécution dans PostgreSQL

Ça se fait de la même façon en effet. Tout d'abord le plus à droite, puis on remonte.


Guillaume.

Hors ligne

#3 06/10/2018 12:41:50

TheMatrix
Membre

Re : L'ordre de la lecture d'un plan d'exécution dans PostgreSQL

Ok. Merci de l'avoir confirmé.

Hors ligne

Pied de page des forums