Есть ли какие-либо преимущества / недостатки при запуске нескольких сегментов MongoDB на одном сервере? - PullRequest
5 голосов
/ 11 ноября 2010

В настоящее время я использую традиционный MySQL Master / Slave, настроенный для хранения около 90 ГБ данных.Трафик в нашем приложении быстро растет, и уже эта настройка демонстрирует признаки замедления.Я бы очень хотел попробовать MongoDB, и меня особенно порадовала функция автоматического разделения.

Однако в настоящее время у меня есть только 2 (выделенных) сервера БД, и определенно один из них должениспользоваться для репликации.Итак, вот мой вопрос:

Если я буду запускать несколько экземпляров MongoDB в качестве сегментов на одном и том же сервере, смогу ли я на самом деле воспользоваться преимуществами меньших наборов сегментированных данных?Или это вместо этого приведет к снижению производительности из-за повышенных требований к нагрузке / памяти?

Ответы [ 3 ]

6 голосов
/ 11 ноября 2010

Кристина Чодоров из MongoDB опубликовала серию постов в блоге о наборе шардинга и реплик в MongoDB .Она упоминает, что вы почти никогда не хотите использовать шардинг, по крайней мере, пока вы не попробовали наборы реплик.Читайте ее серию о наборах реплик тоже: часть 1 , часть 2 , часть 3

2 голосов
/ 11 ноября 2010

Почему бы не запустить shard на двух серверах и иметь на каждом сервере второй экземпляр mond, который реплицирует другой сегмент? Это дало бы вам шардинг и избыточность. Если один сервер выйдет из строя, у другого сервера будет реплика.

Разделение может быть полезно, если каждая папка данных экземпляров mongod находилась на отдельном диске, или если весь набор данных помещается в память и у вас несколько ядер.

1 голос
/ 11 ноября 2010

Начните с набора реплик из 2 узлов и посмотрите, не дает ли Mongo лучшую скорость вставки / обновления. Если запись будет быстрее (что может быть), тогда вы сможете справиться с большей нагрузкой. Обработка большей нагрузки вполне может быть всем, что вам нужно с точки зрения повышения производительности.

Единственная причина, по которой необходимо для шардинга на сервере , заключается в том, что вам нужно как-то увеличить количество операций записи, и вы еще не исчерпали свой IO (это довольно редко).

Я бы предложил начать с перехода к наборам реплик Монго (ведущий / ведомый поддерживается, но "менее хорошо").

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