Могу ли я отключить индексы на мастере MongoDB, который используется только для записи? - PullRequest
0 голосов
/ 29 июня 2011

У нас есть приложение, которое использует MongoDB для ведения журнала. Запускаем пару машин в наборе реплик. Одна машина используется для записи, другая для чтения (отчеты и поиски).

Просматривая документы MongoDB, я вижу, что для набора реплик есть опция конфигурации buildIndexes. Есть ли обратная сторона в отключении индексов на машине, которая используется только для записи? Нужно ли мне «блокировать» машину в реплике, которая всегда будет главной?

http://www.mongodb.org/display/DOCS/Replica+Set+Configuration

1 Ответ

1 голос
/ 29 июня 2011

Похоже, вам нужно установить опцию buildIndexes в false для машины записи:

Если false, предотвратить вторичные индексы от создания на этом участнике. Это обычно используется на машинах которые являются чистыми "резервными" машинами, которые никогда не запрашиваются. Не имея вторичные индексы, член выполняет меньше работает над записью и требует меньше баран. Обратите внимание, что индекс _id по-прежнему создано. Может быть установлен на false, если Приоритет: 0. Это редко можно использовать опция.

Но в целом я предполагаю, что для отчетов вам нужна опция для построения индексов в фоновом режиме для обеих машин. Но кажется, что mongodb не поддерживает фоновое индексирование хорошо для набора реплик.

RavenDB сборка индексов в фоновом режиме по умолчанию (только неделю назад была добавлена ​​опция для построения синхронизации;)). Я думаю, фоновые индексы - лучшее решение для отчетов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...