Репликация MongoDB - это решение высокой доступности (см. Примечание в конце публикации для получения более подробной информации о репликации). Репликация не является решением для повышения производительности.
Производительность запросов MongoDB зависит от различных факторов: размера коллекции, размера документа, дизайна базы данных, определения запроса и индексов. Недостаточное оборудование (память, жесткий диск, процессор и сеть) может повлиять на производительность запроса. Количество операций в данный момент времени также может повлиять на производительность.
Для более быстрой обработки запросов основное внимание уделяется использованию индексов. Индексы напрямую влияют на фильтр запросов и операции сортировки. Чтобы определить, выполняется ли ваш запрос оптимально и с использованием правильных индексов, сгенерируйте план запроса , используя explain
с режимом «executeStats»; изучить план. Объяснение может быть запущено в MongoDB для поиска, обновления, удаления и агрегирования запросов. Все эти запросы могут извлечь выгоду из индексов. См. Оптимизация запросов .
Добавление возможностей к существующему оборудованию называется вертикальным масштабированием; и репликация не является вертикальным масштабированием.
Репликация:
Это настроено как набор реплик - первичный узел и несколько вторичных узлов. Первичная является основной точкой контакта для приложения - все записи происходят на первичной (и считываются по умолчанию). Данные, записанные на первичный сервер, копируются на вторичный сервер. Таким образом достигается избыточность данных. Когда первичный сервер выходит из строя, один из вторичных серверов становится первичным и поддерживает работу системы через процесс восстановления после сбоя. Надежность данных, высокая доступность, избыточность и отказоустойчивость - основные понятия репликации. В MongoDB кластер с набором реплик может иметь до пятидесяти узлов.