В MongoDB индекс по тэгам будет выполняться с использованием функции многоключевого режима, благодаря которой база данных пытается сопоставить документы с каждым элементом массива.Вы могли бы проиндексировать этот атрибут тегов данного документа, который бы создал btree, созданный из диапазонов тегов в этом массиве.
Вы можете узнать больше о мультиключах здесь и получить большеинформация об индексировании в MongoDB при просмотре этой презентации: MongoDB Internals
Хранит ли вторичный индекс только идентификатор элемента / объекта или более?
Индексы состоят из индексированного поля (допустим, в вашем случае это массив тегов, тогда поле будет одним тегом) и смещения, используемого для эффективного размещения документа в памяти.Он также имеет некоторые отступы + другие издержки, как описано здесь
Если запрос содержит k тегов, выполняется ли k подзапросов - по одному для каждого тега, и k частичных результатов объединяютсяодин инициирующий узел?
Это зависит, но если, например, запрос использовал $ или поле тега, я думаю, что запросы выполняются параллельно, каждый в O (log n)время, и результаты объединяются в набор результатов, но я не уверен в этом.