Junior
Verilənlər bazaları və tətbiqlər kontekstində replikasiya nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Replikasiya verilənlər bazasının və ya tətbiqin vəziyyətinin müxtəlif serverlərdə çoxsaylı nüsxələrinin yaradılması və saxlanılması prosesidir.
Replikasiyanın məqsədləri:
- Yüksək Mövcudluq (High Availability): Bir server nasaz olsa, digər replikalar sorğuları davam etdirə bilər.
- Skalabilliyin artırılması: Oxuma sorğuları replikalar arasında paylana bilər, bu da əsas serverə yükü azaldır.
- Coğrafi paylanma (Fəlakətdən sonra bərpa): Replikalar müxtəlif məlumat mərkəzlərində yerləşə bilər, yerli nasazlıqlardan qorunmaq üçün.
- Gecikmənin azaldılması: İstifadəçilər ən yaxın replikadan məlumat oxuya bilərlər.
Replikasiya növləri:
- Sinxron: Dəyişikliklər bütün replikalara yazılır, müştəriyə tranzaksiya təsdiqlənməzdən əvvəl. Güclü tutarlılığı təmin edir, lakin yazma gecikməsini artıra bilər.
- Asinxron: Tranzaksiya müştəriyə yazıldıqdan sonra təsdiqlənir. Replikalar sonra yenilənir. Daha yüksək yazma performansı təmin edir, lakin müvəqqəti məlumat uyğunsuzluğu ola bilər.
Replikasiya rejimləri:
- Master-Replika (və ya Master-Slave): Bir replik (master) bütün yazma əməliyyatlarını qəbul edir, digər replikalar isə yalnız oxuyur və dəyişiklikləri master-dan alır.
- Multi-Master: Bir neçə replik yazma əməliyyatlarını qəbul edə bilər. Münaqişələrin həlli mexanizmi tələb edir.
Tətbiqlər kontekstində, replikasiya tətbiqin bir neçə nüsxəsini yaratmağa istinad edə bilər, məqsədlər: mövcudluğu və skalabililiyi artırmaq. Məsələn, Kubernetes-də bir neçə pod işə salmaq, hər biri eyni xidmətin replikasıdır.