2016-01-13 3 views
2

Пусть говорят, что я shards- shard0000, shard0001, shard0002, shard0004Как я могу включить сбор Балансировка только между двумя конкретными осколками в MongoDB, которые, содержащие более 2 осколка

теперь я хочу, чтобы сохранить некоторый тип данных только shard-shard0000 и shard0003 и хотите включить балансировку между ними. мои другие осколки тоже хранят данные того же типа, но они основаны на некотором диапазоне, и я не хочу включать их балансировку.

+0

Что вы подразумеваете под «типом данных»? Те же данные, разные коллекции? –

+0

Да означает, что тот же тип документа в том же сборнике –

+0

Итак, я прав: у вас есть одна коллекция на 4 разных осколках и только хотите, чтобы эта коллекция была сбалансирована между этими осколками? Не могли бы вы объяснить идею этого? Потому что мы должны найти другое решение вашей проблемы, если это правильно. –

ответ

0

Вы должны использовать tag aware sharding - по существу, вы отмечаете диапазоны ключей осколков (они должны быть основаны на клавише осколка), чтобы указать, какие осколки вы хотите использовать.

Например, вы можете сказать, что shard0000 и shard0003 являются «shard-set1» на tagging them как таковые. Затем вы определяете, какие диапазоны данных принадлежат этому набору и tag those ranges соответственно. Затем балансир будет уважать эти теги и соответствующим образом перемещать данные, а также балансировать куски в помеченном наборе.

+0

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

+0

Я также использовал привязку, основанную на тегах, которая хранит данные на основе тега range.but. Я не хочу балансировать данные между двумя разными тегами осколка. Я хочу только балансировать данные между теми же метками осколков .. и я не знаю, как сделать это. –

+0

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

 Смежные вопросы

  • Нет связанных вопросов^_^