C/MSPT : Microsoft SQL Server Performans ve Tuning

4 gün (24 saat) Orta Sınıf / Online Veritabanı Yönetimi


Bu eğitim, SQL Server üzerinde çalışan sorguların nasıl daha verimli hale getirileceğini, execution plan analizinden indeks stratejilerine, memory yönetiminden parameter sniffing çözümlerine kadar birçok başlıkla ele almaktadır. Eğitim boyunca performansa doğrudan etki eden yazım teknikleri, kaynak tüketimi, paralellik, TempDB optimizasyonu ve Query Store kullanımı gibi ileri düzey konular detaylı şekilde işlenmektedir. Katılımcılar; yavaş çalışan sorguların nedenlerini anlamayı, execution plan okumayı, indeksleri verimli kullanmayı, locking ve deadlock yönetimi gibi eşzamanlılık sorunlarını çözmeyi, sistem kaynaklarını daha verimli kullanmayı ve otomatik tuning araçlarından maksimum faydayı elde etmeyi öğrenecekler. Eğitim sonunda katılımcıların, performans problemlerine sistematik yaklaşabilen, root-cause analizleri yapabilen ve kalıcı çözümler üretebilen uzmanlar haline gelmesi hedeflenir.


Eğitim İçeriği

Module 1: Performans Odaklı Sorgu Yazımı

  • Sorgu yazımında temel prensipler
  • WHERE, JOIN, GROUP BY, HAVING kullanımında dikkat edilmesi gerekenler
  • Gereksiz DISTINCT, UNION, TOP kullanımı
  • Yanlış veri tipi eşleşmeleri
  • Scalar function, subquery ve derived table kullanımı
  • Sorgu sadeleştirme ve yeniden yazım teknikleri
  • Parametreli sorgularda performans tuzakları
  • Normalize (OLTP) vs Denormalize (OLAP) yapıların performansa etkileri

Module 2: Parameter Sniffing ve Çözümleri

  • Parameter sniffing nedir?
  • OPTIMIZE FOR, RECOMPILE, OPTION (PARAMETERIZATION)
  • Plan sabitleme ve dinamik SQL kullanımı (exec, sp_executesql)

Module 3: Geçici Yapılar ve Kodlama Yaklaşımları

  • Temp table vs. Table variable karşılaştırması
  • CTE kullanımı ve performans etkileri
  • Cursor kullanımı ve alternatif çözümler
  • Memory ve I/O etkileri

Module 4: Execution Plan Analizi

  • Execution plan türleri (Estimated vs. Actual)
  • Operator’lerin anlamı ve maliyet analizi
  • Missing index, key lookup, sort, spool gibi uyarılar
  • Plan cache, reuse ve plan sabitleme
  • Ad hoc sorguların plan cache'e etkisi
  • Query Store ile plan değişikliklerinin izlenmesi

Module 5: Query Store Kullanımı

  • Query Store nedir ve nasıl etkinleştirilir?
  • Sorgu geçmişi ve plan değişikliklerinin izlenmesi
  • Forced plan kullanımı
  • Regressed query analizi

Module 6: İndeksleme Stratejileri

  • İndeks türleri (Clustered, Non-Clustered, Columnstore, XML, Full-Text)
  • İndekslerin performansa etkisi ve izlenmesi
  • Doğru indeks seçimi ve tasarımı
  • Covering index ve filtreli index kullanımı
  • İndeks fragmentasyonu ve bakım stratejileri (Rebuild vs. Reorganize)
  • Otomatik ve manuel istatistik güncellemeleri

Module 7: Locking, Blocking ve Deadlock Yönetimi

  • Lock türleri ve izolasyon seviyeleri
  • Blocking tespiti ve çözüm yolları
  • Deadlock analizi ve Extended Events ile izleme

Module 8: Bellek ve Kaynak Yönetimi

  • Memory Grant nedir ve nasıl izlenir?
  • Wait Stats analizi
  • Resource Governor ile CPU ve bellek sınırlamaları

Module 9: Paralellik ve TempDB Optimizasyonu

  • MAXDOP ve Cost Threshold for Parallelism ayarları
  • TempDB yapılandırması (dosya sayısı, izleme)
  • TempDB contention sorunları ve çözümleri

Module 10: I/O Performansı ve Donanım Etkileri

  • Disk mimarisi ve veri yerleşimi
  • I/O bottleneck tespiti
  • Filegroup ve partitioning stratejileri
  • Buffer Pool Extention ve InMemory OLTP etkisi

Module 11: Otomatik Tuning ve İzleme Araçları

  • Activity Monitor, DMV/DMF kullanımı
  • SQL Server Profiler kullanımı
  • Database Tuning Advisor kullanımı
  • Peformance Monitor kullanımı
  • Query Store ile sorgu geçmişi analizi
  • Extended Events ile detaylı izleme
  • Otomatik öneriler ve risk değerlendirmesi

Öncesinde Önerilenler

Sonrasında Önerilenler