![如何测试TempDB性能?](https://linux22.com/image/568060/%E5%A6%82%E4%BD%95%E6%B5%8B%E8%AF%95TempDB%E6%80%A7%E8%83%BD%EF%BC%9F.png)
关于如何最好地使用我们当前的 SAN 配置 SQL 存储,我收到了一些相互矛盾的建议。我想用几种不同的配置进行一些自己的性能测试。
我研究过使用 SQLIOSim,但它似乎无法模拟 TempDB。
有人能推荐一种测试数据、日志和 TempDB 性能的方法吗?
那么使用来自我们生产系统的 SQL 探查器跟踪文件怎么样?我如何使用它来针对我的测试服务器运行?
谢谢,马特
答案1
一个普遍的建议——甚至在安装 SQL Server 之前——就是使用 SQL IO 之类的工具测试 IO 子系统,以便了解其功能。 http://www.brentozar.com/archive/2008/11/storage-performance-testing-with-sqlio/
重放跟踪文件是个好主意,但设置起来可能相当麻烦。您最好将一些脚本放在一起,模拟不同类型的工作负载。 http://msdn.microsoft.com/en-us/library/ms189604.aspx
CheckDB 和重新索引(尤其是在线)是 TempDB 的重度用户 - 取决于配置/数据库大小等。您可能希望在新机器上对这些典型活动进行基准测试。
最后,您的 SAN 供应商可能会制作一份白皮书,专门介绍如何针对 SQL Server 进行配置。尝试找到它,如果存在,请与您的 SAN 管理员一起查看。
答案2
我可以提供的一般信息是,tempdb 通常应该在 RAID10 阵列上运行,因为它是一个高写入数据库。至于主轴数量,这完全取决于相关服务器以及 tempdb 数据库将生成多少 IO。