Если вы посмотрите на BlogPost здесь: http://azure.microsoft.com/blog/2015/01/27/performance-tips-for-azure-documentdb-part-2/
Индексация политики Совет № 3: Укажите индекс пробегу тип для всех путей , используемый в запросах диапазона
В настоящее время DocumentDB поддерживает два типа пути индекса: хеш и диапазон. Выбор типа индексного пути Hash обеспечивает эффективное равенство запросов. Выбор типа индекса диапазона позволяет интервальные запросы (с использованием >, <, >=, <=)
.
Это дает пример в C#, чтобы добавить индекс диапазона, чтобы сделать сопоставимым путь, но есть подобная функциональность в node.js library.
When вы создаете коллекцию, вы можете передать IndexingPolicy через параметр тела. IndexingPolicy
имеет несколько членов. Одним из них является IncludedPaths, где вы можете определить индексы.
var policy = {
Automatic: true,
IndexingMode: 'Lazy',
IncludedPaths: [
{
IndexType: "Range",
Path: "path to be indexed (c.lat)",
NempericPrecission: "1",
StringPrecission: "1"
}
],
ExcludedPaths: []
}
client.createCollection(
'#yourdblink',
{
id: 10001,
indexingPolicy: policy
});
Можете ли вы разместить образец данных, которые вы запрашиваете? Я предполагаю, что пользователи не сопоставимы. Вы уверены, что они не струны? –
{ "ш": -65,6583190150559, "долгота": -74,98864685185254, "возраст": 45,79291892424226, "кошки": 32, "идентификатор": "f6a82cae-8f57-a9a4-d741-6c9054b2c4ec" } – user2402622
, которые не индексируются по диапазону? возможно, следует добавить специальные опции? Я использую nodejs require ('documentdb'). DocumentClient, options: {masterKey: {authKey}} – user2402622