Структура документа

Игорь, здравствуйте! Я хотел бы уточнить по поводу nested типов. В документации написано, что использование nested типов может снижать скорость поиска в десятки раз. С чем у меня возник вопрос, допустим, в большинстве кейсов поиска мне не требуется использовать вложенные типы, стоит ли мне продублировать эти поля в документе (без nested) и искать по нему для ускорения поиска? Или это делает незначительные оптимизации?

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

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.