GOLDENGATE ARCHITECTURE (CLASSIC AND MICROSERVICE)

GOLDEN GATE NEDİR?

Golden Gate bir Midlleware (Orta Katman) yazılımıdır. GoldenGate Master Veritabanındaki değişimleri yakalayarak diğer veritabanlarına (yedek, raporlama vb..) anlık olarak işler. Aslında bu yönüyle sanki data guard teknolojisini andırsa da bir çok farkları vardır en önemlisi farkı ise birçok veritabanı teknolojisi arasında senkronizasyonu sağlayabilir.

Golden Gate (OGG) kaynak veritabanı üzerinde yapılan işlemerin istersek anlık olarak istersek gecikmeli olarak aktarıp işleyebiliriz. Aktarım ise tüm veritabanı olabileceği gibi sadece bir tablo da olabilir.

Oraclle Golden Gate geçen Oracle kaynakların da bir çok yerde Zero Down Time ifadesi ile karşılaşırsınız. Peki ne demek bu zero down time, çok şey sayılabilir ama iki temel kullanım yeri vardır; biri Upgrade işlemlerinde (Database, OS veya uygulamalar) diğeri ise migration (Veri tabanı göçü) işlemlerinde hiç kesinti yapmadan işlemlerinizi yapmanızı sağlayacak bir yapıdır. Oracle GoldenGate’in diğer yaygın kullanımlar ise Disaster Recovery, Raporlama, Data Warehouse (DSS) için kullanılmasıdır.

GoldenGate İle yapılabilecek Replicasyon Türleri

  • Souce – Target (One to One)
  • One Source Many Target (One to Many)
  • Many Source One Target
  • Cascading
  • Active – Active
  • Active – Passive

Oracle Golden Gate Source (Kaynak) ve Target (Hedef) Veritabanlarına ayrı ayrı kurulumu yapılır. Klasik mimaride kurulum adımları birbirinden farklıdır. Yine Klasik Mimaride Kaynak ve Hedefte çalışan servisler birbirinden farklıdır. Kaynak Veritabanın da Extract ve Pumper adı verilen servisler çalışırken, Hedef Veritabanında Collector ve Replicate dediğimiz servisler çalışır. Her iki taraftada Manager servisi hizmet verir. Peki bu servisler ne iş yapar kısaca bakalım. (Mikroservis Mimaride durum farklılaşıyor)

Manager:  Hem source hemde target veritabanlarında bulunur ve diğer servislerin yönetiminden sorumludur. Bu servis çalışmadan diğer servisler çalışmaz.

Extract : Sadece Source Veritabanların da çalışır ve veritabanındaki tüm transaction log larını yakalamaktan sorumludur.

Pumper : Bu servis ise Extract servisinin yakaladığı kayıtlardan oluşan trail dosyalarını Target database tarafına Manager üzerinden göndermektir.

Replicate : Replicate servisi Target veritabanında çalışır ve Source database den gelen trail dosyalarının işlenmesinden sorumludur. Gelen trail dosyaları geldiği an işleme alınabileceği gibi gecikmeli olarak ta işleme alınabilir.

Colector :  Target Database üzerinde çalışır ve trail dosyalarının düzenlenmesi ve raplicate servisinin bu dosyaları kullanabileceği formata getirmekle görevli bir servistir.

Yapılandıracağımız GoldenGate kaynak veritabanı çok büyük olabilir, klasik extract yöntemi ile dataların taşınması uzun sürebilir. Initial Load yöntemi olarak GoldenGate yöntemleri dışında bir çok yöntem ile bu data taşıması yapılabilir (Transport Tablespace, Data Pump , RMAN vs). GoldenGate kullanarak ise 4 Farklı metot ile Initial Load yapılabilir.

  • File To Replicate (Trail) –> Yavaş
  • File to DB Utility
  • Direc Load (Specilal) –>Hızlı
  • Direct Bulk Load (SQL *Loader API) –En Hızlı

MICROSERVICE Mimari

Oracle Golden Gate 12.3 sürümünden sonra yeni bir GoldenGate Mimarisi çıkardı bu mimarinin ismi Microservices GoldenGate bu golden gate sadece Oracle database sürümleri arasında işlem yapabiliyor  ve REST API kullanıyor ayrıca bir Web ara yüzü üzerinden yönetilebiliyor. Veritabanlarımız Homojen yapıda, yanlızca Oracle varsa , Oracle Microservices Mimarisini kullanmamızı tavsiye ediyor.

Serive Manager :  Service Monitor diğer tüm servislerin takibinden sorumludur.

Administration Server : Klasik mimarideki Manager ne iş yapıyorsa bu mimaride bu aynı işi yapacaktır.

Distiribution Server : Veri ve Komutların dağıtılmasını sağlar. Klasic Mimarideki Pump’ın görevini yapar.

Receiver Server: Tüm Dosyaların yönetimini sağlayan yapıdır.

Bir Sonraki Yazımızda Microservice GoldenGate Kurulumunu Göreceğiz.