随着越来越多的中小企业加大了SQL Server商业智能技术的投资,有一个问题是不容忽视的:我们能否对SQL Server BI系统实施虚拟化?
商业用户已经更加倾向于进行SQL Server虚拟化部署,以期待减少物理服务器数量从而降低了维护费用并能够提供更好的可用性、容错性。你的SQL Server BI系统对公司的成功至关重要,那么为什么不考虑将系统安装到一个虚拟机上呢?
但是谨慎是明智的,因此在进行部署之前有必要与BI厂商做好咨询工作。记住虚拟化可行的前提,是因为大多数物理服务器的计算资源没有被占用;应用程序在一天之中都没有使用。这段时间,主机可以有足够的速度进行多任务切换,让虚拟化成为可能。
目前的BI系统是一个特殊的例子。你可能不会让SQL Server BI在一天之中都处于全负载工作状态,但是只要你使用它,肯定是需要最快的响应时间。由于BI系统占用计算资源的方式特殊,因此如果它们与在一个虚拟化主机上的其他虚拟机分享资源时,就可能会出现资源不足的情况。
对于新的BI系统来说更是如此,这些系统会使用内存分析技术。与传统的BI系统特意构建一个数据仓库来进行数据存储不同,内存分析顾名思义是在联机状态下构建分析模型,并且是在服务器内存中进行。分析服务器需要很多内存资源是很正常的,通常要比高负载的数据库服务器需要的多得多。那是因为数据库服务器主要依靠硬盘来作为存储,内存只被用来处理当前查询并缓存一些小量的数据。一个拥有32GB内存的分析服务器是十分常见的。而从一个虚拟化主机要求32GB的内存就有些复杂了。
更加复杂的是,大多数SQL Server虚拟化主机都被设置成使用大量内存,这意味着一个包含64GB内存的主机将给两个虚拟数据库服务器分配16GB内存,给一个虚拟分析服务器分配32GB内存,给一些虚拟信息服务器分配8GB内存还要给其他一些相关服务器分配8GB内存。加在一起是112GB的内存总量,远远超过了物理内存的数量。再一次强调,没有一个虚拟服务器需要一瞬间分配好所有的资源,所以主机会动态地分配内存。然而一个分析服务器要走两个极端,要么使用极少的内存,要么就要使用所有分配到的内存,这导致的情况就是破坏模型,性能得不到保障。
此外,中小企业用到的BI系统还包括一个Web服务器和数据库引擎,而且还有其它的一些组件会使得这些系统在一个虚拟机内变得更加不稳定。因此总体来说,在进行SQL Server BI系统虚拟化部署的时候,一定要格外谨慎,要和厂商时刻沟通协作,并记住以上的几点注意事项。确保你的虚拟BI服务器能够得到所需要的资源。
【编辑推荐】