Replikasyon Nedir?
İngilizce: Replication
Yayın: · Son güncelleme:
Replikasyon Nedir? Kısaca
Replikasyon, bir veritabanındaki verilerin bir veya daha fazla sunucuya sürekli olarak kopyalanmasıdır. Sunuculardan biri arızalandığında hizmetin sürmesine ve okuma yükünün birden fazla sunucuya dağıtılmasına yardımcı olur.

Replikasyon nedir?
Replikasyon, verinin birden fazla yerde güncel kopyalarının tutulmasıdır. Ana sunucuya yazılan her değişiklik, kopya (replika) sunuculara aktarılır. Böylece aynı veri farklı makinelerde, hatta farklı veri merkezlerinde aynı anda bulunur.
Bu teknik, PostgreSQL, MySQL ve MongoDB gibi yaygın veritabanlarının neredeyse hepsinde yerleşik olarak bulunur.
Nasıl çalışır?
En yaygın yapı birincil-kopya (primary-replica) düzenidir. Yazma işlemleri birincil sunucuya yapılır, kopya sunucular bu değişiklikleri sırayla uygular. Kopyalama iki şekilde gerçekleşebilir:
| Yöntem | Nasıl çalışır? | Sonuç |
|---|---|---|
| Eş zamanlı | Kopya onay vermeden yazma tamamlanmaz | Veri kaybı riski düşük, yazma daha yavaş |
| Eş zamansız | Birincil beklemeden devam eder | Hızlı, ama kısa bir gecikme olabilir |
Örnek senaryo
Varsayımsal bir haber sitesinde okuma sayısı yazma sayısından çok daha fazla. Bir birincil ve iki kopya sunucu kurulur; editörlerin yazdığı haberler birincile kaydedilir, okurların sayfa istekleri ise kopyalardan karşılanır. Birincil sunucu arızalanırsa kopyalardan biri birincil rolüne yükseltilir ve site kısa bir kesintiyle çalışmaya devam eder.
Nelere dikkat etmeli?
Replikasyon bir yedek değildir. Birincilde yanlışlıkla silinen bir tablo, kopyalara da aynı hızla silinir. Bu yüzden düzenli ve ayrı tutulan yedekler ile bulut yedekleme gibi çözümler yine gereklidir.
Eş zamansız kopyalamada kopyadan okunan veri birkaç saniye geride kalabilir. Kullanıcı profilini güncelleyip hemen sayfayı yenileyen biri eski bilgiyi görebilir; bu tür kritik okumaları birincilden yapmak sorunu çözer.
Sıkça Sorulan Sorular
Replikasyon ile yedekleme arasındaki fark nedir?
Replikasyon veriyi sürekli ve neredeyse anlık kopyalar, hataları da kopyalar. Yedekleme ise belirli anlarda alınan ve geçmişe dönmeyi sağlayan ayrı kopyalardır. İkisi birbirinin yerine geçmez.
Replikasyon yazma performansını artırır mı?
Birincil-kopya yapısında genellikle hayır, çünkü tüm yazmalar yine birincil sunucuya gider. Okuma yükünü dağıtır ve erişilebilirliği artırır.