GET vs Query для ключа раздела и ключа элемента в базе данных Cosmos - PullRequest
0 голосов
/ 06 февраля 2019

Я читал документы Cosmos DB по рекомендациям по повышению эффективности запросов и обнаружил следующее неоднозначно:

В Azure Cosmos DB запросы обычно выполняются в следующих случаях:порядок от самого быстрого / самого эффективного до более медленного / менее эффективного.

  • GET для одного ключа раздела и ключа элемента
  • Запрос с предложением фильтра для одного ключа раздела
  • Запрос без условия фильтра равенства или диапазона для любого свойства
  • Запрос без фильтров

Есть ли разница в производительности или RU между "GET в одном разделе"ключ и ключ элемента "и" ЗАПРОС на один ключ раздела и ключ элемента ".Мне не совсем ясно, относится ли это к случаю №1 или №2 или находится где-то посередине.

По сути, я спрашиваю, нужно ли нам вообще когда-либо использовать GET.Документы, кажется, не проясняют это нигде.

1 Ответ

0 голосов
/ 06 февраля 2019

Прямой GET будет быстрее.Как документально подтверждено, документ 1K для получения должен стоить 1 RU.У вас будет более высокая стоимость RU для запроса, поскольку вы задействуете механизм запросов.

Одно предостережение: при прямом чтении (GET) вы получите весь документ.С помощью запроса вы можете выбрать проекцию свойств.Для очень больших документов это может привести к значительной экономии пропускной способности вашего приложения при использовании запроса.

...