У меня есть коллекция mongo db для ресторанов. , например. {_id: uniquemongoid, Оценка: 3, город: «Berlin» }Индексы для mongodb
Рестораны перечислены города и упорядочены по рангу (целое число) - я должен создать индекс по городу и ранга, или город/ранг? (Я запрашиваю по городу и сортирую по рангу)
Кроме того, существует несколько полей с булевыми элементами, например. {hasParking: true, familyFriendly: true} - следует ли создавать индексы для ускорения запросов для этих фильтров? составные индексы? Для меня это не ясно, если я должен создавать составные индексы, так как запросы могут иметь только один логический набор или более булево значение.
Все зависит от того, сколько данных у вас есть и какие у вас есть вопросы. – Thilo
Обратите внимание, что вы можете использовать метод '' explain() 'cursor) (http://docs.mongodb.org/manual/reference/method/cursor.explain/), чтобы проверить, какой индекс использовался для выполнения запроса. Поэтому, когда вы не уверены, помогает ли данный индекс конкретному запросу, вы можете попробовать его и проверить. – Philipp
Моя коллега поговорила об этом: http://www.youtube.com/watch?v=AVNjqgf7zNw Он использует mysql в качестве примера, но применяются те же принципы. Возможно, это поможет вам разработать свои индексы. – leif