2017-02-20 11 views
1

Я хочу, чтобы создать документы, какКак сделать составные индексы в DocumentDB

{ 
    age : 32, 
    name : "Alexander" 
} 

И делать запросы, как

select * from myColl where age=32 and name='Alexander' 

Так нормально, чтобы сделать эти запросы эффективно, я бы индекс с этими двумя полями , Как добиться такого же эффекта с помощью DB документа?

ответ

1

Я беспокоюсь, что этот запрос является преждевременной оптимизацией, но если вы уже определили, что вам нужно повысить производительность, тогда вы можете создать другое поле, которое является конкатенацией этих двух полей. Поскольку никто не живет дольше 999 лет, вы можете привести к нулевому возрасту (так, 32 станет строкой «032») и соединить имя после этого. Вам также придется создавать аналогичную строку для ваших запросов.

Что я предложил выше, это несколько уродливая работа для того, что DocumentDB не имеет собственных составных индексов. На практике я никогда не нуждался в нем с тех пор, как начал работать с DocumentDB, но YMMV.

+0

Спасибо за ваш ответ –