CodeBlanks Logo Icon CodeBlanks

İyileştirici nedir?

Sorgu iyileştirici görevini öğrenirsin.

İyileştirici nedir?

İyileştirici (optimizer), bir SQL sorgusunu alıp en ucuz yürütme planını seçen veritabanı bileşenidir. Aynı sorgu için birden fazla plan üretir ve maliyet karşılaştırması yapar.

EXPLAIN SELECT * FROM orders
WHERE customer_id = 5;

Bu sorgu iyileştirici plan üretir ve seçer.

orders kaynağından tüm sütunlar seçilir. WHERE customer_id = 5 koşulunu sağlamayan satırlar elenir.

İyileştirici nedir? — ayrıntı

İyileştirici, rule-based (eski) veya cost-based (modern) olarak çalışır. Modern veritabanları cost-based'tir; istatistiklere dayanarak en iyi planı seçer.

Uygulama İyileştirici nedir?

EXPLAIN ile orders tablosunda customer_id = 5 sorgusunun planını gör.

Başlangıç kodu

query.sql
-- planı gör
EXPLAIN

Örnek çözüm

query.sql
EXPLAIN SELECT * FROM orders WHERE customer_id = 5;

Beklenen çıktı

Seq Scan on orders

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 İyileştirici ne seçer?

  • Kullanıcı adını
  • Tablo adını
  • Yürütme planını Doğru cevap
  • Sütun türünü

Açıklama: İyileştirici yürütme planını seçer.

2 Planı gör

Soru
____ SELECT * FROM orders WHERE customer_id = 5;
Cevap
EXPLAIN SELECT * FROM orders WHERE customer_id = 5;

Açıklama: EXPLAIN doğru cevap.

3 İyileştirici nedir: kavramları eşleştir

Kavram Anlamı
optimizer iyileştirici
plan plan
cost maliyet
rule kural

Uzman bölümündeki tüm dersler