Sobes.tech
Junior

Veritabanları ve uygulamalar bağlamında replikasyon nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Replikasyon, bir veritabanı veya uygulama durumunun birden çok kopyasını farklı sunucularda oluşturma ve sürdürme sürecidir.

Replikasyonun amaçları:

  • Yüksek Erişilebilirlik (High Availability): Bir sunucu arızalandığında, diğer replikalar istekleri karşılamaya devam edebilir.
  • Ölçeklenebilirliğin Artırılması (Scalability): Okuma istekleri replikalar arasında dağıtılabilir, böylece ana sunucunun yükü azaltılır.
  • Coğrafi Dağıtım (Felaket Kurtarma): Replikalar, yerel arızalara karşı koruma sağlamak için farklı veri merkezlerinde bulunabilir.
  • Gecikmenin Azaltılması (Latency): Kullanıcılar, en yakın replikadan veri okuyabilir.

Replikasyon Türleri:

  • Senkrone: Değişiklikler, işlem müşteriye onaylanmadan önce tüm replikalara yazılır. Güçlü tutarlılık sağlar, ancak yazma gecikmesini artırabilir.
  • Asenkron: İşlem, ana sunucuya yazıldıktan sonra müşteriye onaylanır. Replikalar daha sonra güncellenir. Daha yüksek yazma performansı sağlar, ancak geçici veri tutarsızlıklarına neden olabilir.

Replikasyon Modları:

  • Master-Replika (veya Master-İkiz): Bir replik (master) tüm yazma işlemlerini kabul eder, diğerleri (replikalar) sadece okur ve değişiklikleri master'dan alır.
  • Çok Master: Birden fazla replik, yazma işlemlerini kabul edebilir. Çatışma çözüm mekanizması gerektirir.

Uygulama bağlamında, replikasyon, aynı amaçlar için uygulamanın (servislerin) birden çok örneğini oluşturmayı ifade edebilir: erişilebilirliği ve ölçeklenebilirliği artırmak. Örneğin, Kubernetes'te birden çok pod başlatmak, her biri aynı servisin replikasıdır.