В составных индексах вам просто нужно указать пути, которые вы хотите проиндексировать, а не значения, поэтому для вашего примера:
"compositeIndexes":[
[
{
"path":"/type",
"order":"ascending"
},
{
"path":"/data/field3",
"order":"descending"
}
]
]
Просто укажите тип заказа, который вам нужен для ваших запросов ( Я просто использовал их в качестве примера).
Для разных документов, которые имеют разные свойства под вашим свойством данных, я полагаю, вам придется добавлять каждый составной индекс для каждого случая использования, который вам нужен, так как составные индексы не поддерживают подстановочные знаки, поэтому вам нужно добавить:
/data/field1 /data/field2 etc etc
Надеюсь, это поможет.