Разделенная таблица - вставьте напрямую или сначала создайте промежуточную таблицу и включите? - PullRequest
1 голос
/ 13 февраля 2012

То же самое относится и к производительности (или можно пренебречь разницей)?Все данные для вставки находятся в новом разделе.

1 Ответ

1 голос
/ 13 февраля 2012

Зависит от текущей нагрузки на таблицу, индексов на нее - (если существует индекс, который не секционирован, может вызвать проблемы). На самом деле - зависит. Попробуйте в своем тесте имитировать нагрузку среды.

Токовая нагрузка влияет:

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

Также это может вызвать взаимные блокировки, когда вы попытаетесь прочитать подмножество данных с фильтром, отличным от кластерного индекса / первичного ключа (поскольку у вас нет никаких индексов в таблице, кроме кластеризованного) - это приведет к сканированию кластерного индекса, и если во время этого сканирования будет вставлена ​​/ обновлена ​​запись - это может привести к взаимоблокировке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...