Plan cache
- SQL kursu
- Uzman
- Ders 17/45
- 5 dk
Plan önbelleğini öğrenirsin.
Plan cache
Plan cache, hazırlanmış (prepared) sorguların yürütme planını saklar. Aynı sorgu tekrar gelince iyileştirici yeniden çalışmaz; hazır plan kullanılır.
PREPARE get_order(text) AS
SELECT * FROM orders WHERE id = $1;
EXECUTE get_order('100');Bu sorgu plan cache tekrarı hızlandırır.
orders kaynağından tüm sütunlar seçilir. WHERE id = $1 koşulunu sağlamayan satırlar elenir.
Plan cache — ayrıntı
Bazı durumlarda parametrik plan yanlış olur: ilk çalıştırmada seyrek değer, sonraki çalıştırmada sık değer gelirse plan uyumsuzlaşır. Bu durumda plan yeniden derlenir.
Uygulama Plan cache
get_order(text) adında prepared sorgu oluştur: orders tablosundan id = $1 satırını seç.
Başlangıç kodu
-- plan cache
PREPARE get_order(text)Örnek çözüm
PREPARE get_order(text) AS SELECT * FROM orders WHERE id = $1;Beklenen çıktı
PREPARE
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hazırla ve çalıştır
PREPARE get_order(text) AS
SELECT * FROM orders WHERE id = ____;
PREPARE get_order(text) AS
SELECT * FROM orders WHERE id = $1;
Açıklama: $1 hazırlanmış sorgunun ilk parametresidir; değer çalıştırırken ayrı verilir.
2 Plan cache: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
prepared |
hazırlanan |
cache |
önbellek |
plan |
plan |
reuse |
yeniden |
3 Plan cache neyi saklar?
- Tetikleyici kodunu
- Kullanıcı verisini
- Yürütme planını Doğru cevap
- Yedek dosyasını
Açıklama: Plan cache yürütme planını saklar.