Що таке Replica Set?
Replica Set у MongoDB - це кластер з кількох серверів, які зберігають одну й ту саму копію даних і автоматично перемикаються при збоях, забезпечуючи високу доступність і відмовостійкість.
З чого складається Replica Set
Зазвичай до набору входять:
| Вузол | Роль |
|---|---|
| Primary | приймає всі операції запису й основні запити |
| Secondary | копіює дані з Primary й слугує резервом |
| Arbiter (опційно) | бере участь у голосуванні, але не зберігає дані |
Secondary можуть використовуватися й для читання, якщо це дозволено налаштуваннями (readPreference), що допомагає розвантажувати Primary.
Як працює відмовостійкість
- Primary виходить з ладу
- Решта вузлів запускають процедуру election
- Вони голосують і обирають нового Primary
- Кластер продовжує працювати без ручного втручання
Це називають авто-failover.
Навіщо використовується Replica Set
- Висока доступність (HA) - база не падає при відмові вузла
- Масштабування читання - можна спрямовувати read-запити на Secondary
- Захист даних - кілька копій тримають дані в актуальному стані
- Можливість геороозподілення - вузли можуть бути в різних дата-центрах
Підсумок
Replica Set - це механізм MongoDB, де кілька вузлів зберігають ідентичні дані й автоматично підтримують доступність та консистентність системи, навіть при збоях. Він лежить в основі відмовостійких і production-кластерів MongoDB.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.