我们现在有一个新的数据库服务器,除此之外我们有 128GB 的可用 RAM(以前我有 16GB)。我知道 SQL Server 非常擅长管理它的资源,但我想知道是否应该在服务器/数据库设置或处理代码(存储过程/索引等)中使用任何特殊设置或策略以确保 SS可用内存的最大优势。
数据库大约 70GB,它是一个非事务性数据库(它是一个数据仓库)。所以基本上大量的 WRITE 之后是大量的 READ 是事物的正常流程。
我们现在有一个新的数据库服务器,除此之外我们有 128GB 的可用 RAM(以前我有 16GB)。我知道 SQL Server 非常擅长管理它的资源,但我想知道是否应该在服务器/数据库设置或处理代码(存储过程/索引等)中使用任何特殊设置或策略以确保 SS可用内存的最大优势。
数据库大约 70GB,它是一个非事务性数据库(它是一个数据仓库)。所以基本上大量的 WRITE 之后是大量的 READ 是事物的正常流程。
即使您目前有空闲内存(70GB 数据库与 128GB 服务器),我仍会
maximum server memory
按照最新指南进行配置。这相当于 128GB 服务器上的 110GB。原因是数据仓库可能会继续增长,最终可能会比你想要的更多,所以现在就设置正确的限制。否则它会被遗忘。
当您的数据量超过 110GB 限制时,请密切注意服务器的可用内存。如果您始终有额外的 GB 可用,您可以考虑将限制提高几 GB。
除此之外,您唯一的其他微调选项是跟踪标志,应谨慎对待它们。测试,测试和测试更多。
我能想到的三个有意义的候选人是:
正如之前的回答中提到的,Thomas Kejser将 TF834 称为 SQL Server 唯一“运行更快”的开关。TF2301 启用了有利于 DW 类型查询的优化。TF4199 需要阅读链接文档,所以这样做。