SQL tuning araçları otomatik veya manueldir. Bu bağlamda, veritabanının kendisi tanı, tavsiye veya düzeltici eylemler sağlayabilirse, bir araç otomatik hale getirilir. Manuel bir araç, bu işlemlerin tümünü gerçekleştirmenizi gerektirir.
Tüm ayarlama araçları, veritabanı örneğinin topladığı dynamic performance view lerinin, istatistiklerin ve metriklerin temel araçlarına bağlıdır. Veritabanının kendisi, SQL ifadelerini ayarlamak için gereken verileri ve meta verileri içerir.
Otomatik SQL Tuning Araçları
Oracle Database, SQL tuningile ilgili birçok advisor sunar.
Ek olarak, SQL plan management performans gerilemelerini önleyebilen ve SQL performansını iyileştirmenize yardımcı olabilecek bir mekanizmadır.
Tüm otomatik SQL tuning araçları, SQL tuning setlerini giriş olarak kullanabilir. SQL tuning set (STS), execution istatistikleri ve execution context ile birlikte bir veya daha fazla SQL ifadesi içeren bir veritabanı nesnesidir. Otomatik sql tuning araçları aşağıdakiler gibidir.
- Automatic Database Diagnostic Monitor (ADDM)
- SQL Tuning Advisor
- SQL Access Advisor
- SQL Plan Management
- SQL Performance Analyzer
Automatic Database Diagnostic Monitor (ADDM)
ADDM, Oracle Veritabanına yerleşik kendi kendine diagnostic (teşhis) yazılımıdır.
ADDM, performans sorunlarının kök nedenlerini otomatik olarak bulabilir, düzeltme önerileri sağlayabilir ve beklenen faydaları ölçebilir. ADDM ayrıca hiçbir işlem yapılmayan alanları da belirler.
ADDM ve diğer advisorlar, istatistikleri toplamak, sürdürmek ve kullanmak için veritabanı bileşenlerine hizmet sağlayan bir altyapı olan Automatic Workload Repository (AWR) kullanır. ADDM, yüksek yüke neden olan SQL de dahil olmak üzere olası performans sorunlarını belirlemek için AWR’deki istatistikleri inceler ve analiz eder.
Örneğin, ADDM’yi gece çalışacak şekilde yapılandırabilirsiniz. Sabahları, soruna neyin neden olduğunu ve önerilen bir düzeltme olup olmadığını görmek için en son ADDM raporunu inceleyebilirsiniz. Rapor, belirli bir SELECT ifadesinin çok miktarda CPU tükettiğini gösterebilir ve SQL Tuning Advisor’ı çalıştırmanızı önerebilir.
ADDM analizi yukarıdan aşağıya doğru yapılır, önce semptomları tanımlar ve sonra performans problemlerinin kök nedenlerine ulaşmak için analizi inceler. ADDM, performans sorunlarını tanımlamak için DB time statistic (zaman istatistiğini) kullanır. Veritabanı zamanı (DB) zamanı, boşta olmayan tüm kullanıcı oturumlarının bekleme süresi ve CPU zamanı da dahil olmak üzere, kullanıcı isteklerini işlemede veritabanının harcadığı kümülatif zamandır.
Performans sorunlarını tanılamanın yanı sıra, ADDM olası çözümleri de önerir. Uygun olduğunda, ADDM, içinden seçim yapabileceğiniz birden fazla çözüm önerir.Örneğin;
- Donanım değişiklikleri
- CPU ekleme veya I/O sisteminin konfigurasyonu
- Veri tabanı yapılandırması
- Başlatma parametresi ayarlarının değiştirilmesi
- Şema değişiklikleri
- Bir tablo veya indexi bölümlere ayırma ya da automatic segment space management kullanma karma
- Uygulama değişiklikleri
- Indexler için önbellek seçeneğini kullanma veya bind variable kullanma
- Diğer danışmanları kullanmak