测量SQL Server性能改进

我们刚获得购买新的数据库服务器的批准。 我的经理担心,在部署新的服务器之后,一些用户可能不会感觉到性能的提高。 我的任务是想出一些方法来衡量改进。 但首先,有关升级的一些细节:

旧服务器具有双Intel Xeon 3.40GHz单核处理器和4GB内存。 它运行Windows 2000 Server Standard 32位和SQL Server 2000。

新的服务器将具有双Intel Xeon 2.4GHz四核处理器和18 GB的RAM。 它将运行Windows 2008 Hyper-V裸机。 最初,我们将虚拟化Windows Server 2003 Premium(直到我们可以将我们的ERP软件升级到最新版本)和SQL Server 2000(没有足够的预算来升级SQL Server)。

从来没有做过这样的事情,我的想法是创build一个SQL查询命中一些非常大的数据库表,使查询需要一两分钟的时间运行,并通过设置两个date来衡量需要多长时间来执行/时间variables,一个在大查询之前,一个在之后。 然后,我会将这两个date/时间值存储在一个表格中,并安排这项工作在每天的活动最less且相当时运行一晚。 这应该考虑白天的负载变化。

通过比较我们目前情况下的经过时间和升级后的经过时间,可以得出节省时间的想法,所以我们可以说升级带来了x%的提升。 我的计划看起来不错,还是我在阿尔伯克基错了 ? 有什么我应该额外测量?

以下是一组关于如何使用perfmon的video,并为sql server创build一个基线,这将帮助您跟踪和比较不同的计数器。 您还可以使用IOmeter对您的磁盘进行基准testing,以获得随机和顺序IO。 还要检查出SQLIO来衡量你的新存储性能。 希望这会让你开始。

编辑:我也发现这篇文章关于存储IO基准