Эффективный способ вернуть список предметов из лазурного космоса - PullRequest
0 голосов
/ 01 октября 2018

Я хочу хранить данные следующей формы в Azure Cosmos db:

{
  "id": "guid",
  "name": "a name"
  "tenantId": "guid",
  "filter1": true,
  "filter2": false,
  "hierarchicalData" :{}
}

Каждый документ будет иметь размер до нескольких мегабайт.

Мне нужно иметь возможностьвернуть {id, name} список (100

Из документации видно, что я могу выполнить SQL-запрос спроекция, но я не уверен, что есть лучший способ.

Есть ли идеальный способ сделать это при эффективном использовании RU?

1 Ответ

0 голосов
/ 01 октября 2018

Существует ли идеальный способ выполнения вышесказанного при эффективном использовании RU?

Может быть, трудно сказать, что существует лучший способ эффективного использования RU и улучшенияпроизводительность запросов.

Конечно, в зависимости от вашей ситуации, вы можете использовать SQL-запрос для получения данных с определенными фильтрами.Я просто предлагаю несколько способов улучшить производительность вашего запроса, как показано ниже:

1.Добавьте ключ раздела.

Если ваши данныесекционирован, то, когда вы предоставляете ключ секционирования с помощью sql, он может сканировать только определенный раздел, чтобы сохранить RU.Пожалуйста, обратитесь к документу .

2.Используйте последние SDK.

SDK Azure Cosmos DB постоянно обновляются.улучшено, чтобы обеспечить лучшую производительность.См. Страницы SDK Azure Cosmos DB, чтобы определить самый последний SDK и просмотреть улучшения.

3. Исключить неиспользуемые пути из индексации для более быстрой записи.

Политика индексирования Cosmos DB также позволяет вам указать, какие пути документов включать или исключать из индексации, используя пути индексации (IndexingPolicy.IncludedPaths и IndexingPolicy.ExcludedPaths). Использование путей индексирования может повысить производительность записи и снизить объем хранилища для сценариев.в котором шаблоны запросов известны заранее.

4.Используйте маркер продолжения, если данные слишком велики.

Пейджинг данных с продолжениемтокен для повышения производительности запросов. Документ: https://www.kevinkuszyk.com/2016/08/19/paging-through-query-results-in-azure-documentdb/

Подробнее, пожалуйста, обратитесь к здесь .Надеюсь, это поможет вам.

...