MongoDb индексы с $ Существуют фильтра
У меня есть массив в документах, но разные запросы используют его по-разному. Это может быть $exists
запрос или поиск по полям элемента вложенного массива. Какие индексы я должен сделать в этих случаях?
Также я использую MongoDb v. 3.0.2
& Official c# driver v. 2.0
1 ответ
Если вы хотите осуществлять поиск по полям элементов вложенного массива, вам потребуются отдельные индексы для разных полей или комбинаций полей, по которым вы запрашиваете. Какие отдельные или составные индексы имеют здесь смысл, зависит от того, какие именно запросы вы выполняете.
MongoDB не имеет "подстановочных индексов", которые индексируют все поля данного поддокумента. Однако иногда вы можете эмулировать это поведение, заменив поддокумент массивом { key:"key", value:"value" }
объекты.