Veri Tabanı Yönetim Sistemleri 2 Ders 8 Veritabanı Birleştirme (Consolidation) Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü Multitenant Mimarisi • Oracle 12c'den önce bir bilgisayarda yaratılan her veri tabanı ayrı bir instance ile ilişkilendiriliyordu. Dolayısıyla her veritabanına ait ayrı bir SGA alanına yer tahsisi gerekmekteydi. • Oracle 12c ile gelen "Multitenant: Çok-kiracılı" Mimarisi ile birçok veritabanı tek bir instance tarafından idare edilebilmektedir. • CDB (Container Database): PDB'lere ev sahipliği yapan instance'ın asıl sahibidir • PDB (Pluggable Database): Bir CDB altında yer alan yerel şemalara ve şema nesnelerine sahip, 11g sürümündeki veritabanı gibidir. 4 elemanlı bir CDB: Kök, Çekirdek ve 2 adet PDB • Kök (CDB$ROOT): Oracle metadata'sını ve genel kullanıcıları içerir. • Çekirdek PDB (PDB$SEED): CDB'nin yeni PDB'ler yaratmak için kullandığı şablondur. • Kullanıcı tarafından eklenen PDB'ler aynı SGA ve arkaplan işlemlerini paylaşır. Multitenant Mimarisinin Faydaları • Büyük işletmelerde genellikle her biri farklı fiziksel sunucularda bulunan (işletim sistemleri de farklı olabilir) yüzlerce veritabanı kullanılabilmektedir. • Günümüzde üretilen çok işlemcili sunucuların gücü düşünüldüğünde, her veritabanını idare etmek için kullanılan yüzlerce farklı sunucunun her birinin %10 kapasite ile çalışması kaynak israfı olarak düşünülebilir. VT Birleştirmesiz Yapı • Problemi küçük ölçekte göstermek için 11 farklı veritabanının kendi uygulamalarının ve sunucularının olduğunu düşünelim. • 2 veya 3 veritabanı ile ilgilenen farklı DBA'lar ve onların takım lideri olan bir yönetici (Head DBA) olsun. • Bu veritabanlarının her biri fiziksel olarak kaynak israfına neden olacağı gibi, veriyi mantıksal olarak sanal veritabanlarına paylaştırmada da idari, güvenlik ve taşınabilirlik sorunları olabilecektir. VT Birleştirmeli (Consolidation) Yapı • Daha düşük maliyet • Veri ve kodun daha kolay ve hızlı taşınabilmesi • Fiziksel veritabanının daha kolay yönetimi ve izlenmesi • Performance Tuning işleminin tek SGA üzerinde çalışıldığı için kolay olması • Yerel ve genel kullanıcı mantığı ile kolay yetkilendirme işlemleri CDB Yaratma • Eğer veritabanı yaratılırken ENABLE PLUGGABLE DATABASE kullanılırsa CDB türünde veritabanı yaratılır. CREATE DATABASE ... ENABLE PLUGGABLE DATABASE • Kök (CDB$ROOT) ve Çekirdek PDB (PDB$SEED) otomatik olarak yaratılmış olur: PDB Yaratma • PDB yaratmak için ise CREATE PLUGGABLE DATABASE ifadesi kullanılır. Bu PDB otomatik olarak kökte yer alan, metadata ve sistem nesnelerini içeren veri sözlüğünün tamamına sahip olur. • Bir PDB sadece bir CDB içinde yer alabilir başka bir PDB içinde olamaz. • PDB yaratmanın değişik yöntemleri vardır: Detaylı bilgi için: 12c Pluggable Database Hands-On sunusuna bakınız