Мы строим наш первый MongoDB, и в настоящее время мы пытаемся выбрать правильный ключ осколка.Выбор правильного ключа осколка в MongoDB
Каждый документ в нашей основной коллекции содержит около 40 voice call
связанных полей, а основное поле, которое мы используем в запросах, - это поле UserId. Вот почему мы думаем о сложном осколочном ключе userid
и CallStartTime
.
Они не уверены в отношении второго поля, так как StartTime
всегда продвигается, и можно утверждать, что он не является случайным. Это заставило нас заменить его на UserId
и hashed _id
(внутренний идентификатор манго после хэша).
Это первый вариант, или мы лучше используем последний?
Вы можете использовать хэшированные индексы на том, что: http://docs.mongodb.org/manual/core/sharded-clusters/#sharding-hashed-sharding – Sammaye
Кроме того, это больше похоже на вопрос системного администрирования ... –
Я также рассмотрел хеш-ключи: «... заменить это с UserId + hashed _id (mongo internal id after hash) ... " – Alon1980