Middle+
Mi a különbség az EXPLAIN és az EXPLAIN ANALYZE parancsok között a PostgreSQL-ben?
sobes.tech MI
Válasz az MI-től
A EXPLAIN parancs PostgreSQL-ben megmutatja egy SQL lekérdezés végrehajtási tervét, vagyis hogy az adatbázis hogyan tervezi beszerezni az adatokat (használt indexek, szekvenciális szkennelés, összekapcsolások stb.). Nem hajtja végre a lekérdezést, csak elemzi.
Az EXPLAIN ANALYZE nemcsak a tervet mutatja, hanem ténylegesen végrehajtja a lekérdezést, gyűjtve statisztikákat minden lépés végrehajtási idejéről és a feldolgozott sorok számáról. Ez lehetővé teszi a valódi teljesítmény megtekintését és a szűk keresztmetszetek azonosítását.
Példa:
EXPLAIN SELECT * FROM users WHERE id = 10;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 10;
Az első megmutatja a tervet, a második — a tervet valódi mérőszámokkal.