MongoDB: sharding

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

storm2005
Сообщения: 136

MongoDB: sharding

Сообщение storm2005 »

ОС: centos 6.6, mongodb 3.0.3.
Поднял конфигурацию с шардингом.
1. Поднял два шарда, три конфиг-сервера и один mongos.
2. При помощи mongoimport загнал csv файл.
3. Сделал индекс по полю и указал, для коллекции использовать второй шард.

Все инфа размазалась по двум шардам. теперь делаю запрос через mongos и что я вижу?
1. Работает только одно ядро. Остальные ничего не делают.
2. Запрос в единицу времени идет только в один шард. То есть отрабатывает селект то в одном, то в другом шарде _последовательно_. В итоге на нескольких запросах оказалось, что конфигурация с двумя шардами оказалась в 4 раза медленнее чем с одним.
При этом должен упомянуть, что все было поднято на одном тестовом сервере и это видимо тоже в некоторой степени повлияло на результаты.

Но в данном случае у меня следуюшие вопросы:
1. как заставить юзать все ядра
2. как заставить выполнять операции параллельно?
3. Можно как-то маршрутизировать запрос через mongos? Если выбираем такое значение в поле, то чтобы запрос шел на один шард, а если другое, то на другой.
4. как уменьшить занимаемое место. Импортнул 1,5 Gb, а на диске заняло больше 10 гиг при одном шарде и где-то 14, и 7 гиг соответственно при двух.
Спасибо сказали: