Blog ' da Ara

Loading

27 Ağustos 2012

Oracle Performans Troubleshooting 2 (Ash Reports)



ASH (Active Session History) aktif olan session bilgilerinin performans istatistiklerinin tutulduğu rapordur. Mevcut session bilgileri v$session ve v$session_wait_history eventlerinden gözlemlenebilir. Örneğin aşağıdaki sql veritabanında o an en fazla gözlemlenen eventleri gösterir.
   SELECT event, COUNT (*)
    FROM v$session_wait_history
GROUP BY event
ORDER BY 2 DESC
Ancak bu viewlar aktif sessionlara ait performans bilgilerini gözlemlemek, sorun tespit etmek ve çözüm geliştirmek için yeterli historic (geçmişe dönük) bilgiye sahip değildir. Sessionlar hakkındaki historic performans dataları için ASH raporları kullanılabilir. ASH aktif sessionlara ait saniyelik sample(örnek veri) elde ederek istatistiksel yorum yapılabililinmesini sağlayan very koleksiyonudur.  İşte bu yazımızda ASH raporlarını tanıtmaya çalışacak, ASH raporları ile neler yapılır ve ASH raporları nasıl yorumlanmalıdır anlatmaya çalışacağız.
Aktif Session Nedir?
ASH raporlarındaki aktif session ile v$session.state ‘ACTIVE’ değeri karıştırılmamalıdır. ASH raporlarında çıkan sessionlar Oracle RDBMS ‘e (Relational Database Management System) çağrı yollayan sessionlardır. Bu sessionlar hakkında toplanan datalar;
·         Parse, Execute ve Fetch Operasyonları
·         I/O işleminin tamamlanması için meydana gelen bekleme
·         Rac Sistemlerde remote instanceden mesaj yada buffer beklemeleri
·         Cpu üzerindeki beklemeler
·         Tekrarlanan sesionlar için beklememe
·         Paralel işlemler
·         Idle Wait (Boş bekleyen session) dışındaki digger tüm bekleme olayları’ dır.