Middle+
Czym różnią się polecenia EXPLAIN i EXPLAIN ANALYZE w PostgreSQL?
sobes.tech AI
Odpowiedź od AI
Polecenie EXPLAIN w PostgreSQL wyświetla plan wykonania zapytania SQL, czyli jak system zarządzania bazą danych zamierza uzyskać dane (używane indeksy, skanowanie sekwencyjne, łączenia itp.). Nie wykonuje samego zapytania, a jedynie je analizuje.
EXPLAIN ANALYZE nie tylko wyświetla plan, ale także faktycznie wykonuje zapytanie, zbierając statystyki o czasie wykonania każdego kroku i liczbie przetworzonych wierszy. Pozwala to zobaczyć rzeczywistą wydajność i zidentyfikować wąskie gardła.
Przykład:
EXPLAIN SELECT * FROM users WHERE id = 10;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 10;
Pierwszy pokaże plan, drugi — plan z rzeczywistymi metrykami wykonania.