我一直在一个环境中工作,其中每个索引创建都在单个核心上进行。大或小的索引/表。即使当我在创建中强制 maxdop 时,它仍然会忽略它并在单核上运行。
MaxDop 设置为 0。可用核心为 24。成本阈值设置为 5。索引创建成本超过 1000。SQL 配置内存为:160GB,即使最大 128GB。
运行的 SQL 服务器:Microsoft SQL Server 2019 (RTM-CU18) (KB5017593) - 15.0.4261.1 (X64) 2022 年 9 月 12 日 15:07:06 版权所有 (C) 2019 Windows Server 2019 上的 Microsoft Corporation 标准版(64 位)标准 10.0(内部版本 17763:)(管理程序)
为什么不能并行呢?
这是因为您使用的是标准版。仅企业版支持索引创建的并行性。SQL Server 2019 的版本和支持的功能 - “并行索引操作”的 RDBMS 可管理性文档中对此进行了说明。
CREATE INDEX文档中也指出了这一点:
在配置并行索引操作文档中: