Найти - Пользователи
Полная версия: mongodb при сорздании индекса вписать суловие для выборки документов
Начало » Базы данных » mongodb при сорздании индекса вписать суловие для выборки документов
1
alexandre
Есть колекция создаю там индекс но как проверить что часть документов с нужными значениями полей попадает а часть не попадает.

Например у меня есть коллекция doc в ней названия полей одинаковые все например
{"_id":"123","descr":"aaa","type":"comment"}
а значение поля type различается. Как проверить при создании индекса что type == “comment” к примеру, чтоб исключить часть документов данной коллекции из индекса.

Сейчас создание индекса выглядит примерно так:
db.doc.ensure_index ( [ ('descr', "text" )], default_language="russian")

o7412369815963
alexandre
чтоб исключить часть документов данной коллекции из индекса.
Это partial indexes (https://jira.mongodb.org/browse/SERVER-785) этого в монге ещё нет.
Но можно сделать через sparce индексы (в индекс попадут только нужные документы), но функционал скромен.

alexandre
Как проверить при создании индекса что type == “comment”
Фильтрацию нужно задавать в запросах “db.doc.find({ ‘type’:'command' })”

Либо раскидать типы по разным коллекциям, особенно желательно это, если используется много индексов для (общей) коллекции, т.к. каждый индекс несет нагрузку при записи.
o7412369815963
Кстати такого параметра у ensure_index, нет:
alexandre
default_language=“russian”
reclosedev
o7412369815963
С полнотекстовым поиском появился
http://docs.mongodb.org/manual/tutorial/specify-language-for-text-index/
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB