Параллельные вставки SQL Server с массовой вставкой - PullRequest
0 голосов
/ 13 мая 2019

У меня много проблем с процессами, заблокированными при одновременных вставках.

Пример состояния процесса - sp_who2

На самом деле у меня есть 5 сервисов для импорта данных из csv´s в таблицу (PosImport). В таблице есть ключ «idcountry» и каждый сервис импортирует данные только для одной страны.

Например:

  • Service_BR_import: для импорта данных Бразилии
  • Service_AR_import: для импорта данных Аргентины

Изображение из приложения с кодом услуги

Я прочитал несколько статей о таблице разделов (в данном случае idcountry), чтобы избежать этих блоков, но я не уверен, что это лучший способ.

ps: таблица имеет кластерный индекс хранилища столбцов

Отредактировано: Другая ситуация, которую я имею, это блоки в удалении:

Изображение блоков в параллелизме удалить

В этом случае выполняется 2 удаления для разных стран (18, 47). Я могу разделить эту таблицу на 2 таблицы, но это не совсем так.

Каков наилучший способ избежать этих блоков? Использует ли транзакция с уровнем изоляции? Разделение таблицы? Разбить таблицу на 2 таблицы?

...