← К оглавлению занятия

📖 Теория

📁 Блок: MongoDB / повторение репликации и CAP ⏱️ Время изучения: ~60 мин 🎯 Сложность: Повторение

⚡ Кратко: суть занятия

Summary session 18 повторяет репликацию, цели репликации, синхронный и асинхронный подходы, CAP и ACID.

Репликация нужна для надёжности, отказоустойчивости и распределения нагрузки чтения.

Синхронная репликация держит копии актуальными, но добавляет задержку.

Асинхронная репликация быстрее для записи, но допускает отставание копии.

CAP описывает ограничение распределённых систем: Consistency, Availability, Partition Tolerance.

ACID описывает свойства транзакций: Atomicity, Consistency, Isolation, Durability.

В домашке 18 разбираются Hawaii в sample_airbnb и фильмы imdb > 8 за 2015–2023.

Топ-3 ошибки: путать Consistency CAP и ACID, считать $out индексом, забывать $match перед $group.

Разбор темы

Репликация

Источник определяет репликацию как способ обеспечения надёжности и отказоустойчивости базы данных.

Цели

Репликация помогает пережить отказ основного узла и распределять нагрузку на чтение между несколькими узлами.

Синхронная репликация

Данные в копиях идентичны, но основное приложение может замедляться из-за ожидания передачи данных.

Асинхронная репликация

Запись быстрее, потому что primary не ждёт репликацию secondary, но возможны задержка записи и потеря части данных при сбое primary.

CAP

Consistency, Availability и Partition Tolerance задают рамку выбора свойств распределённой системы.

ACID

Atomicity, Consistency, Isolation, Durability описывают надёжность и целостность транзакций.

Проверить по документации: дополнительные практические формы MongoDB и поведение стадий агрегации могут зависеть от версии сервера, Atlas или Compass. Перед использованием в проекте сверяйте синтаксис с официальной документацией.