Bu Az Bilinen SQL Desenini Kullanarak Sorgu Süremizin %80'ini Kesiyoruz
İçindekiler Giriş: Bir Sorgunun Çöküş Hikâyesi Sorunun Kaynağı: Şişmiş Analitik Sorgular Battle of Queries: CTE Öncesi vs CTE Sonrası EXPLAIN ANALYZE: CTE Öncesi vs. CTE Sonrası CTE Kullanırken Dikkat Edilmesi Gereken 5 Kural Bonus: DBA’yi Mutlu Etmek İstiyorsan EXPLAIN PLAN’ı Sev Sonuç ve Çıkarımlar Giriş: Bir Sorgunun Çöküş Hikâyesi Yavaşlayan sistemler, sabırsız kullanıcılar Performans krizinin ilk sinyalleri Bir sistemi batırmanın bin bir yolu vardır, ama en sessiz ve sinsisi, yavaş yavaş şişen bir SQL sorgusudur . Başta her şey masum görünür: iki tablo join, basit bir filtre, üç-beş hesaplama. “Ne olacak canım, bu sorgu taş gibi çalışıyor” dersin. Aylar geçer… Yeni iş gereksinimleri gelir, tablolar büyür, bir join daha eklenir, “şuraya da küçük bir subquery koyayım” dersin. Sonra bir gün fark edersin ki, o sorgu artık küçük bir script değil, tek başına veri ambarını rehin alan 1.2 MB’lık bir canavar olmuş. Genç mühendisler genelde bu noktada “Aman abi, SQL’e dokunmayalım, ç...