Роль ключа раздела в Cosmos DB Sql API Вставить? С массовым исполнителем? - PullRequest
0 голосов
/ 01 сентября 2018

Я пытаюсь многократно вставить около 850 документов размером от 100 до 300 Кб в коллекцию космоса. У меня все они в одном ключе раздела.

Оценщик предполагает, что при 50 тыс. RU должны обрабатывать это в короткие сроки, но при более чем 100 тыс. Его среднее значение составляет около 20 минут на набор, а не что-то более разумное.

Нужно ли иметь уникальные ключи разделов для каждого документа? Проблема в том, что, когда все документы идут по одному и тому же ключу раздела, они обрабатываются последовательно, а емкость не выравнивается? Исправит ли это использование массового исполнителя?

1 Ответ

0 голосов
/ 03 сентября 2018

Нужно ли иметь уникальные ключи разделов для каждого документа? Проблема что все документы идут на один и тот же ключ раздела, они обрабатываются последовательно, а емкость не выравнивается по нагрузке?

Вы можете найти ниже заявление из этого doc .

Для полного использования пропускной способности, предусмотренной для контейнера или набора контейнеры, вы должны выбрать ключ раздела, который позволяет равномерно Распределить запросы по всем различным значениям ключа раздела.

Итак, я думаю, что определение ключа раздела полезно для вставки или запроса. Однако выбор ключа раздела действительно стоит потраченного времени. Пожалуйста, обратитесь к этому doc , чтобы выбрать ключ раздела.

Исправит ли это использование массового исполнителя?

Да, вы можете использовать токен продолжения при массовой вставке. Дополнительные сведения см. В моем предыдущем случае: Как получить токен продолжения для массовой вставки в базе данных Azure Cosmos DB? .

Надеюсь, это поможет вам.


Просто для краткости, нам нужно оценить индексы по умолчанию для коллекции. Это может занять в 100-1000 раз больше RU, чем на самом деле запись файла.

...