04 Temmuz 2009 Cumartesi, 02:48

Veritabanı Replikasyonu

Etiketler:
09 Ekim 2008 Perşembe, 01:30
Bu yazı Veritabanı kategorisi altında yayımlandı, 1 Yorum aldı.

“replicate” kelimesinin Türkçe karşılığı “kopya etmek, kopyasını yapmak” olmakla birlikte veritabanları için de kullanımı benzer şekildedir. Sistem master’da depolanan verilerin slave’lerde kopyalarının(yedeklerinin) oluşturulması şeklindedir. Değişik amaçlarla kullanılabilir. Birincisi yedekleme, verilerin slave’lerde kopyalarının oluşturulması yedeklenmesi anlamına gelir. Bu sayede master sunucu çöktüğü an devreye slave sunuculardan biri anında sokulabilir. Diğeri sunucu yükünü azaltma; master sunucunun UPDATE ve INSERT gibi güncelleme işlerine ayrılması, slave sunucunun(ya da sunucuların) da SELECT ile okuma (raporlama) işlerine ayrılması şeklinde olabilir. Şöyle bir örnek verirsek; müşteri girişleri ya da güncellemesi bir satırı etkileyen INSERT ve UPDATE sorguları ile yapılabilir. Bu bir saniyeden daha az sürecek bir işlemdir, sunucuda yük yapmaz. Türkiye’nin her tarafında bayileriniz olduğunu ve gün içinde müşteri girişi yapıldığını farzedelim. Bu işlemler için master sunucuyu ayırdınız. Yönetici olarak gün içinde aylık ya da yıllık bilanço raporu alacaksınız. Nisbeten güncelleme sorgularına göre daha uzun sürecek ve daha çok satırı ilgilendiren birden fazla sorguyu veritabanı sunucusuna göndermek durumundasınız. Üstelik uzun süren transaction’lar da kullanmanız gerekecektir. Eğer bu işlemi master sunucuda yaparsanız hem aktif olarak çok kişinin kullandığı sunucuda büyük bir yük oluşturacak hem de uzun transaction’lardan dolayı bayileriniz müşteri girişi yaparken bayilerinizin deadlock hatası almasına neden olabileceksiniz. Eğer bu işlemi slave sunuculardan birinde yapsaydınız sadece o sunucu bu işlemden etkilenecek, bayileriniz bir sorun yaşamayacaklardı. Bu sadece replication kullanımı için basit bir senaryoydu. Buna benzer değişik amaçlarla da kullanılabilir.

Bir de multi-master replication vardır. Bu durumda her master aynı zamanda bir slave’dir. Böylece güncellemeler slave sunucularda(aslında master) da yapılabilir. Bu da sunucu yükünü azaltmak için kullanılacak güzel bir yönetimdir. Multi-master replication verilerin tek bir depolama alanında toplanması şeklinde olabileceği gibi her master’ın slave şeklinde konfigure edilmesi ile de yapılabilir.

Bu konu ile ilgili şimdilik yazacaklarım bu kadar…

Yorum yapabilirsiniz, veya kendi sitenizden geri izleme yapabilirsiniz.

1 Yorum “Veritabanı Replikasyonu”

  1. mbakturk
    12 Mayıs 2009, 22:26

    Gerçekten çok yararlı oldu teşekkürler.

Yorum Yapın