Yаяу SQL суроо бар. Кантип аныктоо керек?
sobes.tech AI
AIден жооп
Yavaş SQL sorğusunu diaqnoz etmək üçün adətən aşağıdakı addımları izləyirəm:
-
İcra planını analiz et (EXPLAIN / EXPLAIN ANALYZE) — verilənlər bazası sisteminin sorğunu necə planlaşdırdığını, hansı indekslərin istifadə olunduğunu, tam cədvəl skanlarının olub-olmadığını yoxlayıram.
-
İndeksləri yoxla — mecburiyyətlə, filtr və join-lərdə iştirak edən sütunların uyğun indekslərə sahib olduğundan əmin oluram.
-
Resursların profilini çıxar — sorğu icra edilərkən CPU, disk, yaddaş istifadəsini izləyirəm.
-
Sorğunu optimallaşdır — sorğunu sadələşdirir, bölüşdürür, artıq join və ya alt sorğuları çıxarıram.
-
Statistikaları və onların aktuallığını yoxla — statistikalar köhnədirsə, plan səmərəsiz ola bilər.
-
Verilənlər bazası parametrləri və konfiqurasiyası — bəzən yaddaş və ya cache ayarları performansa təsir edir.
-
Fərqli məlumat həcmləri ilə test et — sorğunun necə miqyaslandığını anlamaq üçün.
PostgreSQL-də plan analiz üçün nümunə əmr:
EXPLAIN ANALYZE
SELECT * FROM orders WHERE customer_id = 123;
Bu, icra vaxtı və istifadə olunan əməliyyatlar haqqında ətraflı məlumat verəcək.