Hurriyet

24 Haziran 2012 Pazar

SGA ve PGA

SGA (System Global Area)

SGA kısmı hafızadaki yapının büyük bir kısmını oluşturur. O yüzden bu kısmı ciddi bir şekilde incelememiz lazım.SGA içinde 8 kısım bulunmaktadır. Bunlar sırasıyla:

1-Shared Pool: İçinde data dictionary cache,library cache ve sql ve pl/sql result cache  bulundurmaktadır. Buradaki data dictionary veritabanında bulunan veritabanı referans bilgisini içeren tablo ve view bir birleşimidir. Oracle sql ifadelerini çözümlerken bu tablolara o kadar çok erişim yapmaktadır ki bununla birlikte bir de library cache ve Data Dictionary cache bulunur. Bu  da yukarıda belirttiğimiz tabloların verilerini içermektedir. Shared Pool içerisinde bulunan başka bir yapı da Result Cache'dir burada da SQL sorguları ve PL\SQL fonksiyonları yer almaktadırç

2- Database Buffer Cache: Veritabanından okunan bilgilerin, daha doğrusu data bloklarının kopyalarını tutar. Bir bilgi arandığı zaman ilk olarak bu bilgi database buffer cache içinde aranır. Eğer orada bulunuyorsa ordan direk çekilir. Bulunamadıysa da veritabanından data bloğu çekildikten sonra kopyalanıp  database buffer cache'e kopyalanır. Eğer process veriyi burada buluyorsa "cache hit" olur. Bulunamaz ise "cache miss" olur. Data'ya cache hit ile ulaşmak daha hızlıdır. Buffer Cache LRU yapısınına göre çalışır. En geç hangi veri kullanıldıysa o silinir. Bu cache'in yönetiminde DBWn process'leri yer alır. DBWn process'leri buffer cache'deki dirty(değiştirilmiş) buffer'ları disk'e yazar.

3- Keep Buffer Pool: Database buffer cache içinde bazı bilgilerin normal algoritmanın izin verdiğinden daha uzun tutulmasını sağlayan buffer cache'dir.

4- Recycle  Buffer Pool: Silinen veya kaybedilen verilerin daha çabuk geri getirilmesini sağlayan  buffer cache'dir.

5- Redo Log Buffer : Veritabanında yapılan değişikliklerle ilgili verilerin tutulduğu yerdir. Bu bilgiler DML,DDL veya iç operasyonlar sonucunda gerçekleşmiş değişikliklerle ilgilidir.(Bu operasyonlar Insert,Update,Delete,Create,Alter,Drop). Bunlar sayesinde veritabanında geri dönüşler, zamanda başka başka bir pozisyon veya zaman aralığına dönüşler sağlanır.  Değişiklikler Redo Log Buffer'ında toplandıktan sonra Redo Log dosyalarına asenkron olarak yazılırlar. LGWR Process'i bu işlerle ilgilidir.

6- Large Pool: Opsiyonel bir hafıza alanıdır. Bu alan sayesinde büyük hafıza alanı gerektiren işlemler için yer ayrılır. Bu işlemler ise Oracle veri yedekleme ve kurtarma  veya büyük veri giriş ve çıkış işlemleri olabilir.

7- Java Pool: Java işlemleri için gereken hafıza alanın tahsis edildiği yerdir.

8- Streams Pool: Oracle Streams için gereken hafıza alanın tahsis edildiği yerdir.


PGA (Program Global Area)

  PGA ise server processleriyle ilgili bilgilerin tutulduğu hafıza alanıdır. Başka hiçbir mekanizmanın buraya erişimi yoktur. İçinde cursor area depolama bilgileri , kullanıcının session'u ile ilgili veriler ve sql ifadelerinin çözümlemeleriyle ilgili çalışma alanları bulunur.
  PGA'de UGA diye adlandırılan User Global Area bulunur. UGA hafıza kısmı  paylaşımlı bir server ortamında SGA alanına kaydırılır. Bu durumda PGA'de sadece stack space kalır.

Hiç yorum yok:

Yorum Gönder