更新 25/03/2011:
我已将这个问题标记为已回答,虽然我还没有具体的答案来帮助改进系统,但我认为等到我做到那一步才公开是不公平的。这个问题很广泛,而答案给了我很多指导,帮助我走上正确的道路。当我有更具体的问题需要问时,我会再回来的。不幸的是,我只能选择一个答案作为最佳答案,但我想感谢每个人的贡献,谢谢你们的时间。
原问题:
提前道歉,因为这个问题可能会相当广泛!
我刚刚要着手进行一个项目,在这个项目中,我们的另一个开发人员已经基于SQL Server 2008企业版、报告服务和存储过程构建了一个大型系统。在VM系统上(即SQL Server运行在由VMWare1 ESXi托管的Windows Server 2008 R2系统上),在性能测试中我们发现它似乎不能利用额外的内存或核心。
当我开始这个项目时,我正在寻求一些初步概述问题的指导:
什么是优化利用更多内存和处理器核心的SQL Server 2008的机会?
是否有关于调用、结构、开发程序的规则等方面的规定,这些规定将影响SQL Server如何并行化存储过程?
此外,我想问下一个显而易见的点是 - 我需要注意哪些代码方面,这些代码可能为他人提供更多关于它结构的见解,让我提供更具体的例子?系统中有很多行代码,但是显然理想的情况是尝试找到一个简明的示例或模式,演示用法。
我相信存储过程是由报表服务调用的。
在我们的测试中,几乎似乎是线性执行 - 即如果我们使用2个内核、2GHz CPU分配和4GB内存配置VM运行1个报告需要2分钟,那么2个报告将需要近4分钟(即两个报告时间加倍),虽然不完全是线性的,但足够接近了 - 一切都变得更慢,就好像它们根本没有并行运行。
难道SQL Server Reporting Services只是单独运行报告或与此有关吗?
所有存储过程都是用Transact-SQL开发的。
再次道歉,问得太广泛了。如果有人能帮助我教育在这个领域更深层次、更具知识的话,那将不胜感激!
原问题:
提前道歉,因为这个问题可能会相当广泛!
我刚刚要着手进行一个项目,在这个项目中,我们的另一个开发人员已经基于SQL Server 2008企业版、报告服务和存储过程构建了一个大型系统。在VM系统上(即SQL Server运行在由VMWare1 ESXi托管的Windows Server 2008 R2系统上),在性能测试中我们发现它似乎不能利用额外的内存或核心。
当我开始这个项目时,我正在寻求一些初步概述问题的指导:
什么是优化利用更多内存和处理器核心的SQL Server 2008的机会?
是否有关于调用、结构、开发程序的规则等方面的规定,这些规定将影响SQL Server如何并行化存储过程?
此外,我想问下一个显而易见的点是 - 我需要注意哪些代码方面,这些代码可能为他人提供更多关于它结构的见解,让我提供更具体的例子?系统中有很多行代码,但是显然理想的情况是尝试找到一个简明的示例或模式,演示用法。
我相信存储过程是由报表服务调用的。
在我们的测试中,几乎似乎是线性执行 - 即如果我们使用2个内核、2GHz CPU分配和4GB内存配置VM运行1个报告需要2分钟,那么2个报告将需要近4分钟(即两个报告时间加倍),虽然不完全是线性的,但足够接近了 - 一切都变得更慢,就好像它们根本没有并行运行。
难道SQL Server Reporting Services只是单独运行报告或与此有关吗?
所有存储过程都是用Transact-SQL开发的。
再次道歉,问得太广泛了。如果有人能帮助我教育在这个领域更深层次、更具知识的话,那将不胜感激!