Вставка индекса кластерного хранилища столбцов SQL Server - PullRequest
1 голос
/ 14 марта 2019

Я использую SQL Server 2017. Я хочу использовать исключение группы строк кластеризованного индекса columnstore (CCI) по столбцу YearID. Ранее я строил кластеризованный индекс хранилища строк на YearID и создавал CCI с MAXDOP = 1 поверх него, но время ожидания истекло. Какие еще варианты у меня есть? Теперь я переписал свой сценарий, создав CCI с самого начала и изменив свой запрос на серию вставок, таких как:

INSERT INTO CCITable()
SELECT YearID, otherColums
FROM ...
WHERE YearID = 1

INSERT INTO CCITable()
SELECT YearID, otherColums
FROM ...
WHERE YearID = 2
...
INSERT INTO CCITable()
SELECT YearID, otherColums
FROM ...
WHERE YearID = N

Также я заметил, что 1 итерация с использованием INSERT INTO CCITable () WITH (TABLOCK) выполняется быстрее, но куча из них работает медленнее. Этот скрипт является единственным запросом, использующим CCITable. Есть идеи почему?

...