12 Nisan 2012 Perşembe

Ne zaman Goldengate, Ne zaman Dataguard?

Goldengate, CEO 'su Türk bir şirket olarak, gelişmiş replikasyon teknolojileri
ile pazar lideri konumunda iken 2009 senesinde Oracle tarafından satın alınan
şirketin ismidir.

Peki ne işe yarar bu Goldengate?
--------------------------------

Goldengate, pek çok veritabanını(Oracle, DB2, Mysql, Sql) destekleyen bir
veritabanları arası veri aktarım çözümüdür. Primary veritabanınızdan
sizin belirlediğin tablo datalarını ve hatta DDL işlemlerini ikinci bir ayrı
veritabanına eş zamanlıya çok yakın bir şekilde işler.

Peki buna ne gerek var?
-----------------------

1) Yüksek kaynak tüketen sorgulardaki kaynak datayı barındıran
tablolar, Goldengate kullanılarak eş zamanlı olarak diğer bir veritabanına
kaydedilebilir ve burada rapor sorguları çalıştırılır. Böylece ana sistem üzerindeki
yük önemli ölçüde azalabilir.
2) Oracle BI veya benzeri bir çözüm kullanıyorsanız, raporlarınız önceki
gün datası ile değil şu anki data ile çalışabilir.
3) Önemli tablolarınızı Goldengate ile eş zamanlı olarak ikinci bir veritabanına
kaydederek backup politikanızı güçlendirebilirsiniz.
4) Bu çözümü kullanarak hiç ana veritabanınızı kapatmadan upgrade/migration mümkün olabilir.

Disaster Recovery(DR) ve Goldengate
-------------------------------------

DR durumuna kısaca veritabanınızı bir şekilde kaybetmek ve verilerimize
ulaşamaz hale gelmemiz diyebiliriz.(Donanım sorunu, kullanıcı hatası vs.)
Oracle Goldengate, DR konusunda Oracle Dataguard' ı tamamlayıcı veya destekleyici bir ürün olmakla
birlikte bana göre tek başına bu görevi üstlenmek için yeterli değil.

Çünkü;
1) Standby database Read-Write operasyonlarına açık olduğundan
birinin gidip bir şekilde verinizi değiştirme ihtimali vardır.
2) Karmaşık konfigürasyonu uzun sürer, her tablo için tek tek uğraşmak gerekebilir.
3) Oracle Dataguard gibi stabil ve bakım gerektirmeyen bir yapıya sahip değildir.
Örneğin konfigurasyonunuza bağlı olarak, primary database üzerinde
replike ettiğiniz tablolardan birisine bir alan eklersiniz ve replikasyonunuz duruverir.
Yeni bir tablo ekleyeceğiniz zaman yeniden konfigurasyon sürecine girersiniz.
4) Her türlü veri tipini ve tüm şemalardaki veriyi replike etmeyi desteklemez.
Yani database' inizin bire bir aynısını yedeklemiş olmazsınız aslında.
5) Ana veritabanınızı kaybetmeniz durumunda veritabanınızı hızlı bir şekilde
açmanız mümkün olmayabilir. (Örneğin performans ve aktarım sorunları nedeniyle constrait'leri
kapatmış olabilirsiniz veya triggerlarınız kapalı durumda olabilir.)

Buna karşın Dataguard,
1) Oracle' ın yıllardır kendini kanıtlamış, çok stabil çalışan DR çözümüdür.
2) Yukarıdaki Goldengate 'te bulunan DR dez avantajlarının hiç birisini içermez.
3) Goldengate ile kıyaslandığında çok daha performanslı çalışır çünkü aktarılan veri SQl
deyimleri değil değişen veri bloklarıdır.
4) Birkaç sql komutu çalıştırılarak standby database saniyeler içerisinde açılabilir.

Raporlama ve Dataguard
--------------------------

Oracle 11g' ye kadar, dataguard kullanılarak oluşturulan standby veritabanları kapalı durumdaydılar.
Yani primary database üzerinden değişiklikler anlık olarak geliyor ve uygulanıyordu ancak
siz standby database üzerinde sorgu çalıştıramıyordunuz. 11g ile gelen Active Dataguard özelliği,
aynı anda primary veritabanından gelen değişikler kaydedilirken, sorgulama yapmaya izin vermektedir.
Ancak Goldengate 'te olduğu gibi mesela yeni tablolar ekleyemezsiniz.


Özet;

Hem Oracle Goldengate hem de Oracle Dataguard çok güçlü özellikler barındıran ürünlerdir.
Fakat iyi sonuçlar almak için doğru ürünü doğru noktada kullanmalısınız.

Real time veri transferi konusunda GoldenGate çok başarılı bir çözüm sunmaktadır ve
DR konusunda bana göre vasat bir çözümdür. Dataguard ise Oracle to Oracle DR konusunda
çok başarılı bir çözümken raporlama konusunda ortalama bir çözümdür bence.

Goldengate kullanan arkadaşların yorumlarını bekliyorum.

İyi çalışmalar.