Home / MAKALELER / Veri Tabanı / Automatic Workload Repository

Automatic Workload Repository

AWR Nedir? Nasıl çalışır ve ne tür bilgileri kontrol eder? ADDM Nedir?

 

Genel olarak Self-Tuning amaçlı, problem belirleme özelliği olan ve istatistik toplama ve saklama  özelliği olan bir altyapıdır.Her 60 dk ‘da ( default)  Database otomatk olarak SGA’dan istatistik bilgilerini alır ve AWR içerisinde Snapshot formatında saklar.  Default olarak  AWR içerisinde bu snapshotlar 8 gün saklanır. Saklanma süresini yada default snapshot aralığını değiştirebiliriz.

Oracle 11g ’de SYSAUX tablespace’ nde depolanan ve SYSMAN shemasına ait yüzlerce  tablo bulundurur. DBMS_WORKLOAD_REPOSITORY paketiyle yada Enterprise Manager Konsol ile Repository ‘ kullanabiliriz. Oracle da zaten bu iki yöntemi tavsiye etmektedir.

AWR tablolarına karşı gelen DML istekleri desteklenmez. Sadece okunur.

 

AWR yapısı ikiye ayrılır.

 

  1. Memory’ de saklanan istatistikler vardır.

Bu istatistikler performans nedenlerinden ötürü memory de saklanır. Dinamik performance view’ ler (V$ )ile memory de saklanan database istatistiklerine erişilebilir.

  1. AWR içerisinde saklanan istatistikler kalıcı olarak saklanan istatistiklerdir. İstatistikler birkaç nedenden dolayı kalıcı olarak saklanmaya ihtiyaç duyulur.
    1. Bir instance  crash(çökmesine )karşı istatistik ihtiyacı duyulur.
    2. Bazı analizler, bir Baseline karşılaştırması için Historical bir dataya ihtiyaç duyulur.

Memory Monitor (MMON) proces’i tarafından Memory’ deki Instance istatistiği kalıcı olarak saklamak için diske yazılır.

Baseline, AWR snapsotların bir kümesidir. Başlangıç ile bitiş snapshotların arası performans kıyaslamak için kullanılır.

Create Baseline:

BEGIN

DBMS_WORKLOAD_REPOSITORY.create_baseline (

start_snap_id => 200,

end_snap_id   => 220,

baseline_name => ‘Test_baseline);

END;

Delete Baseline:

BEGIN

DBMS_WORKLOAD_REPOSITORY.drop_baseline (

baseline_name => ‘test_baseline’,

cascade       => TRUE);

END;

/

Retention Period: Default 8 gündür ve sonsuza kadar saklama seçenekleri vardır.

Collection Interval:  Snapshot aralığıdır. default olarak 60 dk dır.

Collection Level: İstatistik toplama seçenekleridir. Basic seçeneğinde  ADDM fonksiyonunu kapatır. Yani Self tuning disable olacak. Typical yada All seçenekleri tavsiye edilir

Örneklerle anlatırsak.

SQLplus ‘a bağlanalım

$>sqlplus / as sysdba

SQL>Select * from DBA_HIST_WR_CONTROL;

DBID        SNAP_INTERVAL          RETENTION                      TOPNSQL

———  ——————       ——————–       ———

1272787738 +00000 01:00:00.0       +00008 00:00:00.0              DEFAULT

2189780853 +00000 01:00:00.0       +00008 00:00:00.0              DEFAULT

Sonuç olarak iki tane DB var. Ve bunların snapshot aralığı 1 saat. Retention (saklama) 8 gün olarak görünüyor.

Önemli AWR View’ leri


 View Name
 Description
V$ACTIVE_SESSION_HISTORY Displays the active session history (ASH) sampled every second.
V$METRIC  Displays metric information.
V$METRICNAME  Displays the metrics associated with each metric group.
V$METRIC_HISTORY  Displays historical metrics.
V$METRICGROUP  Displays all metrics groups
DBA_HIST_ACTIVE_SESS_HISTORY  Displays the history contents of the active session   history.
DBA_HIST_BASELINE  Displays baseline information.
DBA_HIST_DATABASE_INSTANCE  Displays database environment information.
DBA_HIST_SNAPSHOT  Displays snapshot information.
DBA_HIST_SQL_PLAN  Displays SQL execution plans.
DBA_HIST_WR_CONTROL  Displays AWR settings.

 

Automatic Database Diagnastic Monitor(ADDM),

Her bir AWR snapshot’u alındığında son iki snapshot ‘a karşılık periyodun analizini yapar.

  •        Her AWR snapshotundan sonra çalışır
  •          Instance ‘i monitor eder ve oluşacak darboğazları tespit eder.
  •          Sonuçları AWR’ da depolar.

 

ADDM tarafından belirlenen bazı ortak sorunlar şunlar olabilir.

  •   Cpu bootlenecks
  •   Lock Contention
  •   IO Kapasite sorunu
  •  High- Load SQL statements
  •   High PLSQL and JAVA
  •   Çok hızlı Checkpoint gerçekleşmesi
  •   Oracle Net Bağlantı sorunları

ADDM aşağıdaki dynamic Performance view leri yada Enterprise Manager Konsolu ile hem bulgularını

hemde tavsiyelerini görebiliriz.

ADDM Views                     

View Name Description
DBA_ADVISOR_TASKS Provides information about existing task, like – task id, name, etc.
DBA_ADVISOR_LOG Contain the current task information such as status, progress, error messages, and execution times.
DBA_ADVISOR_RECOMMENDATIONS Complete result of diagnostic task.
DBA_ADVISOR_FINDINGS Display all symptoms and specific recommendations.

 

Genel olarak ADDM tavsiyeleri(Recommendation)  şunlardır:

  • Schema Changes
  • Hardware Changes.
  • Application Changes
  • Database Configuration
  • Diğer Advisorları tavsiye eder.

 

Diğer Advisorlar ise

SQL Tuning Advisor, tek bir SQL statementi analiz eder. Bu statementin performansını arttıracak tavsiyeler verir. Instance Konfigrasyosyon değişimi, Statement’in yeniden yazılması yada SQL profile, Index Ekleme gibi tavsiyeler verir.  Daha çok tek bir SQL cümlesi yerine Tuning Setler oluşturarak performans talebinde bulunuruz.

SQL Access Advisor, perfromansı geliştirecek materialized view yada materialized log yada ilave index oluşturmamasını tavsiye eder. Verilen bir zamanda girilmiş tüm SQL statementleri analiz eder.

 Memory Advisor(SGA Advisor, PGA advisor), Instance tarafından kullanılacak toplam memory için en ayarları bulup tavsiye eder.)SGA advisorunda altında çalışan alt advisorlar vardır.(Shared Pool advisor,Java Pool Advisor, Buffer Cache Advisor, Strams pool advisor gibi)

Segment Advisor   verimsiz kullanılan alan tüketimini kontrol eder. Öneride bulunur. Shrink, Reorganize gibi tavsiyeleri vardır.

Undo data ile ilgili sorunlarda Undo Advisor

Backup – Rocovery de oluşacak sorunlarda MTTR (Mean time  to Recovery) advisor’ ı

tavsiye eder. Genel olarak Instance crash olduktan sonra bir database recovery için gerekli zaman ayarıdır.

About Muhammet Ucar

2005 Selçuk Üniversitesi Teknik eğitim Fakültesi Bilgisayar Sistemleri Öğretmenliğinden mezun olduktan sonra İstanbul 'da yaşamaya başladım. 2009 yılından beri Oracle yönetimsel anlamda çalışıp makale paylaşımı yapmaktayım. OCP 11gR2 ve OCA 11gR2 sertifikalarına sahibim. Daha çok kişisel projelerde çalıştım. Free Veritabanı Danışmanlığı ve Eğitmenliği yapıyorum.

İlginizi Çekebilir

SQL Server ile Veri Şifreleme

Bilgi teknolojilerinde verinin güvenliği çok kritik bir öneme sahiptir. Önemli verileri korumak için ekstra bir …

Bir Cevap Yazın