sql azure размер партии

Есть некоторые задачи сегментации сотрудников, которые приводят к большому количеству записей (около 2000), которые необходимо вставить в SQL Azure. Сами записи очень маленькие, около 4 целых чисел. Рабочая роль Azure выполняет задачу сегментации и вставляет результирующие строки в таблицу SQL Azure. Таких задач может быть несколько (каждая с приблизительно 1000 - 2000 строками) в очереди, и, следовательно, каждая из этих вставок должна будет выполняться довольно быстро.

Синхронизация тестов с использованием локальной машины для SQL Azure заняла значительное время (примерно 2 минуты для 1000 вставок). Это может быть вызвано задержкой в ​​сети. Я предполагаю, что вставки из рабочей роли должны быть намного быстрее.

Тем не менее, поскольку структура сущностей не позволяет выполнять пакетную вставку, мы думали об использовании SQLBulkCopy. Приведет ли использование SQLBulkcopy к снижению количества запросов, если размер пакета скажет 1000? Есть ли рекомендуемый подход?

1 ответ

Решение

Массовое копирование API должно идеально соответствовать вашим целям и значительно повысить производительность.

Я протестировал вставку 10 миллионов записей с размером пакета 2000 в базу данных Azure, и при запуске с моего локального компьютера не происходило регулирования с производительностью ~10 секунд на пакет.

Другие вопросы по тегам