Cumartesi , 16 Ocak 2016
Anasayfa / MAKALELER / Veri Ambarı / Oracle Golden Gate Nedir ? -2

Oracle Golden Gate Nedir ? -2

Daha önceki yazımızda Golgen Gate genel anlamıyla tanıtmıştık.Şimdi ise bunu daha detaylandırıp yazı dizisi halinde vermeye çalışacağım.

 

Golgen Gate Performans-Ölçeklenebilirlik Yönetimi

 

Golden Gate Capture

 

Capture olaynın nasıl olduğunu tekrar hatırlayalım ;

Log tabanlı,değişikliklerin yakalanması  için yüksek hacimli ve düşük iş yükü ile çalışır.Üretimden bağımsız,ayrı  bir yapısı vardır.Çoklu CDC yapabileceği gibi  herbir tabloda bölümler oluşturarak farklı CDC gerçekleştirebilir.

Golden Gate Capture gereksiz verilerin silinmesi,filitrelenmesi ve sıkıştırılması işlemlerini yaparak performansa yardımcı olur.Bunun en güzel örneği güncellemeleri ve silme işlemlerinin default compress olmasıdır.

 

Golden Gate Delivery

 

Üretimden bağımsız ayrı bir yapısı vardır.Çoklu taşıma olaylarını işler.Ayrıca tabloları bölümleyerek paralelel işlemde  yapabilir.Küçük işlemleri gruplayarak tek bir seferde yaparak yığınların otomatik olarak düzenlenmesi ve kayıtların tek bir tablo içinde işlenmesini (gerektiğinde karıştırılarak)  sağlar.

 

Bütünlük

 

Golden Gate dosyaları trail file’lara yazılır.İşlemler sıralı bir şekilde, otomatik olarak yapılır.Kontrol noktaları ve kurtarma işlemleri sırası bozulmadan kayıt sırasına uygun şekilde süreç yönetilir.

 

Güvenilirlik

 

Golden gate otomatik olarak başlatılabilir.İşlemler başladıktan sonra network kesintileri için gerekli müdahaleyi manuel olarak ayarlayabiliriz.

Dosya taşınması veya işlenmesinde hata olduğu durumlarda recovery için capture o anda nelerin işlemden geçip nelerin geçmediğini bize söyler.Tabi burda delivery ile ortak bir çalışma söz konusudur.

 

Kontrol Noktaları

 

Aşağıdaki şekilde dosya işleme sırasında olacak bir fail durumunda neler olacağını göstermektedir.Adım adım açıklayacak olursak;

Kaynak veritabanımızda gelen bazı komutlar kuyruk yapısına girerek okunmaya başlıyor.Capture önceki yazımızda belirttiğimiz gibi okuma başladığında değişikliklerin yakalanması ve filitrelenmesi görevini yerine getiriyor.Ve sonrasında sıralı bir şekilde trail dosyalarına geliyor.Burada dosyaların formatı ve sırası düzenleniyor.Yeşil alanlar, görüldüğü gibi begin,insert,commit sırası ile düzgün şekilde sıralanmıştır.Pump dosyaları(türkçede pompalama terimi tam olarak karşılık geliyor) verileri çift yönlü pompalıyor.Yani kaynak sistemden hedef sisteme taşınıyor.Target trail de görüldüğü gibi delivery alınan bu dosyalar üzerinde işlemler yaparak hedef veritabanına kaydediyor.

Oluşacak bir hata durumda kuyrukta bekleyen işlemler tekrar sıralanıp tekrar istekte bulunularak veri kaybının önüne geçmiş oluyoruz.

g1

 

 

 

Golden Gate’de Heterojen Yapılar

 

Önceki makalemizde belirttiğimiz gibi golgen gate,hetorejen yapıda çalışabiliyordu.Golden gate core yapısı sayesinde tüm veritabanları için kullanılabilmektedir.Standart trail dosyaları ve metadata yapısı ile ortak veri türlerini otomatik olarak mappinglemektedir.Dosyalara doğrudan erişerek ,veriyi yakaladığı anda işleme sokabilen ve logunu tutabilen yapısı farklı sistemlerden gelen verilerin sorun olmasını engellemektedir.

Şimdi farklı ortamlarda capture nasıl davrandığına bakalım;

1.Oracle

 

g2

 

Yukadaki şekilde Oracle için capture olayı gösterilmektedir.Arşiv dosyalarını veya online olarak işlenen dosyaların logları capture tarafından alınarak trail dosyalarına yazılıyor.

Bu sistem;

Oracle RAC,ASM,İndex-organized tabloları,Cluster tabloları,Object tabloları,DDL operasyonlarını desteklemektedir.Ayrıca paralel capture,ALO(Arcived log only) modlarınıda desteklemektedir.

 

2.SQL Server

 

Oracle’da olduğu gibi backup’ların alınması ve işlemlerin yakalanması şekli aynıdır.Farklı olan bağlantı birimleridir.SQL Serverda ODBC kullanılması gibi.

 

g3

 

Bu sistem;

Backuplardaki verileri yakalama yeteneği vardır. SQL Server komponenetlerini kullanmak zorunda değildir.Hesaplanmış,identy kolonları destekler.

 

3.IBM DB2 LUW(Linux,Unix,Windows)

 

Online ve Arşiv loglarını okuyan kendine özgü log mekanızması vardır.Bağlantı DB2 CLI(Call Level Interface) ile olur.

Bu sistem;

Çok boyutlu kümelenmiş tabloları,Meteralized tablo query’lerini ve verilerin sıkıştırılmasını destekler.

 

g4

 

 

 

4.IBM DB2 z/OS

 

Burda diğerlerinden farklı olarak IFI IFCID 0306 log mekanızmasını görüyorsunuz.Bu mekanızma logları compress ve uncompress edebilen ve logları merge edebilen yeteneğe sahiptir.Capture ve Trail dosyaları da USS (z/OS için gerekli bir bileşen olup mainframe mimarisi için optimize edilmiş yapıdır) alanında bulunmaktadır.

 

g5

 

Bu sistem;

USS altında çalışır.Veri paylaşımını destekler.Otomatik EBCDIC/ASCII dönüşümü vardır.EBCDIC(Extended Binary Coded Decimal Interchange),ASCII ve Unicode kodlarınmış yapılarlar uyumludur.Ayrıca veri sıkıştırmayı destekler.

 

5.HP NonStop(Enscribe and SQL/MP)

 

Log mekanizmasından başlayacak olursak karşımıza TMF(Transaction Management Facility) denen bir yapı çıkıyor.İşlemlerin yönetim merkezi olarak çevirebileceğimiz bu yapıda denetim dosyaları ve denetim log’ları mevcuttur.

ARLIB(audit reading library) ile bu denetim dosyalarını okuyup AUDSERV aracılığı ile capture’a göndermektedir.Burda biraz AUDSERV yapısından bahsetmek istiyorum.Otomatik çalışan bu servis yapısında ver erişiminin sürekli olması için (nonstop) çalışmaktadır. Paralelinde başka bir kaydedici ile veritabanından gelen bilgiler değişikliklerin yakalanması ve filitrelenmesi için Capture gelir.Daha önceki yazımızda belirttiğimiz gibi Capture paralel çalışabilir.Sonrasında veriler trail dosyalarına aktarılmaktadır.

 

g6

 

 

6.Teradata

 

Teradata ile sağlanan erişim modulu sayesinde Capture veriler gelir.(TAM olarak belirtilen kısım(Teradata Access Module) bunu yapar.) TAM dinamik olarak gerçek zamanlı bir paylaşım yapılmasını sağlar.CDC olayları RSG(Relay Services Gateway)  ile çalışır.Max koruma ve max performans modu vardır.Windows ve Linux sistemlerini destekler.DDL komutlarına,LOB ve UDT datatiplerini destekler.

Capture’dan dosyalar sırasız olarak çıkar data sonrasında hedef sunucuya trail dosyalarını taşımaklar görevli olan Pump’ta sıralanarak başka bir trail dosyasında kaydedilir.

 

g7

 

Delivery

 

Hetorojen sistemlerde Capture olaylarının nasıl olduğundan bahsettik.Aynı şekilde hetorojen ortamlarda Delivery’nin nasıl çalıştığına göz atalım.Şekilde görüldüğü gibi trail dosyalarından gelen verileri hedef veritabanına kaydeder.Herbir yapıya özgü API leri kullanan bu yapıda dizi işlemleri,işlemleri gruplama ve veri ambarları sistemleri içni flat dosyaların entegrasyonu gerçekleştirilir.

 

g8

 

Bu makalemizde Capture,Delivery görevlerini daha ayrıntılı anlatmaya çalıştım.Golden gate’in özelliklerini ve hetorojen yapıda nasıl çalıştığına değindim.Bir sonraki makalemde bunlara ait örnekler ve diğer özelliklerinden bahsetmek istiyorum.

Görüşmek dileğiyle.

Kaynak: http://www.oracle.com/technetwork/middleware/goldengate/learnmore/index.html

Yusuf Arslan

Yusuf Arslan

Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerine Datawarehouse-Database Uzmanı olarak devam etmektedir Sitenin kurucusu ve yazarıdır.
yusufarslanbm@gmail.com adresinden bana ulaşabilirsiniz.
Yusuf Arslan

Latest posts by Yusuf Arslan (see all)

Hakkında Yusuf Arslan

Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerine Datawarehouse-Database Uzmanı olarak devam etmektedir Sitenin kurucusu ve yazarıdır. yus[email protected] adresinden bana ulaşabilirsiniz.

Cevapla

E-posta adresiniz yayınlanmayacak. Required fields are marked *

*