【IT168 专稿】根据以往的调查,我们知道数据库服务器在选型时具备以下五个原则:高性能、高可靠、高可扩展、安全性以及可管理性等(详见:数据库服务器选型原则及实例解说)。而实际上,不同的数据库程序对服务器硬件的需求也有所不同。从本期开始,我们将针对目前最流行的几个数据库(Oracle/DB2/MySQL等),分析其对服务器硬件的具体需求以及市面上的解决方案。
对于任何企业而言,部门级数据库已经是必不可少的重要IT组份之一了,而这些数据库多数都采用的是Oracle出品的数据库软件。因此我们首先就Oracle最新的Database 11g R2对服务器的需求做一个简单的分析。
1、Oracle 11g数据库组件对服务器的要求
Oracle 11g R2支持非结构化数据,其二进制XML大大改进了存储效率并且XML索引的速度较以前提高了15倍。另一方面,Oracle增加了服务器和客户端的结果缓存技术,使得PL/SQL性能提高了两倍,JAVA性能提高了11倍。但是这一切都意味着原有设备已经不足以承载新版本数据库带来的性能提升。有经验的Oracle数据库管理员都清楚,同Oracle产品打交道时,整个升级过程不仅需要将软件升级到最新版本,硬件的升级也需要同时进行。
由于Oracle 11g R2具有RAC(真正应用集群)技术,可以分布式的将数据库部署在众多服务器中以避免单台服务器效率补足并保证冗余。但这一方面造成了数据库同步和管理上的问题,另一方面也对DBA本身的专业素质提出了额外需求。相比之下,管理员更愿意用虚拟化技术来部署Oracle数据库,这可以得到更好的容灾、快速备份、便携性以及业务连续性等性能。这同样带来了对数据库服务器的需求:虚拟化性能高、内存容量大、可靠性好。
然而一般情况下,大多数IT部门还是遵循那条“铁律”,即系统设计生命周期(SDLC),原有的技术还是要保持,除非维护费用超出了更换新产品的费用。我们在后面对Oracle数据库专家的采访中也发现,他们认为升级服务器的时候往往第一考虑的是成本问题,之后才会考虑性能和稳定性。
说到成本,就要分别说采购成本和运营成本,后者也越来越多的被企业IT部门所重视。采购成本上来看,自然是RISC平台更贵,x86平台占据了得天独厚的低价高性能优势。另一方面,就运营成本来看,RISC由于其闭源环境和专有平台,所需要的人力成本、运维、软件解决方案都需要额外的支出,而x86平台由于开放的环境和通用平台特性,成本更加低廉。
从这方面来看,就不奇怪现在很多关键业务正在从RISC+UNIX平台向X86+Linux平台迁移。但是x86平台一直以来在性能上给人的感觉都不如RISC平台强悍,而且稳定性也被人们诟病。究竟是这样的么?
2、至强7500横空出世 TCP-E数据库测试名列榜首
随着英特尔Nehalem-EX至强7500处理器的发布,x86平台在性能上和稳定性上已经到达了又一个巅峰(详见:至强7500发布)。相比传统RISC平台,至强7500的8核16线程以及优秀的RAS特性使其具有了冲击关键业务领域市场的能力。
前面提到Oracle数据库管理员更希望将数据库部署在虚拟服务器上,这意味着更多的内存容量以及更高的稳定性。
至强7500集成了内存控制器,并拥有4条QPI直连总线,使其每个处理器最多支持16条四通道DDR3 1333Mhz内存,这使得一个四路服务器最高支持256GB内存(4G*16条*4路),达到了x86平台有史以来的巅峰。另一方面,英特尔在至强7500中加入了22条RAS特性,并首次在至强平台上实现了IA64上才有的MCA恢复功能,提供更强的可靠性。因而无论是在性能、可扩展性和可靠性上,都已经逼近RISC,甚至在某些指标上有所超越。
(目前TCP-E测试使用的是SQL Server 08R2数据库,这也是由于TPC-E并没有对操作系统和数据库类型做限制,只是对业务逻辑和模型进行了规定,而这里的测试结果,对于数据库应用具有适普性。Oracle作为TCP组织的正式成员,相信不久之后也会尽快加入测试队列的)
从Oracle数据库的市场来看,各企业与应用环境差异较大,软硬件系统也不尽相同。因此,我们很难用一个公共的衡量标准来确定部署Oracle最新的数据库应该使用什么服务器,而这恰恰是用户所需要的结论。因此TPC组织(交易处理性能委员会,Transaction Processing Performance Council)推出了全新的TPC-E测试,取代了已有15年历史的TPC-C测试。而在目前的最新测试结果榜单上,采用了至强7500系列处理器的NEC Express 5800(八路)和IBM x3850 X5(四路)分别名列前两名。
这里笔者列出TPC-C与TPC-E的主要不同:
可见,模型更新和成本降低让我们看到了TPC-E新标准的魅力:更加逼近现实,更有代表性,会更具广泛性。而至强7500也以其优异的成绩证明了x86平台冲击RISC的实力。
3、专家谈x86平台部署Oracle数据库
在刚刚结束的《DTCC 2010数据库技术大会》上(详见:大会官网),我们采访了演讲人张乐奕先生和杨向勇先生,请他们就Oracle数据库部署在x86平台与RISC平台的区别做了简单的阐述。
据Oracle公司前高级顾问/资深DBA张乐奕先生介绍,目前中小企业数据库市场是x86平台的主要市场所在。“一方面,这些企业更加的看重成本,RISC小型机是用不起的;另一方面,x86平台的通用性和灵活性符合他们数据库的伸缩性特征。”
Oracle公司前高级顾问/资深DBA 张乐奕先生
张乐奕认为,RISC-UNIX相比x86-Linux,性能优势并不明显,但稳定性是主导用户选择的关键因素。“x86-Linux架构在高压力和大规模Oracle数据库应用的情况下,本身系统的指令优先级会下降,造成一定的不稳定因素。这是用户普遍的一个认知,因此一些大型的金融数据库和石油等都采用RISC-UNIX平台也是除此考虑。”不过,英特尔刚刚发布的至强7500所具有的RAS特性有效的从硬件层面遏制了Linux核心架构上的不足,补全了x86平台本身的劣势,因而在张乐奕看来是一个新突破。
“我个人认为至强7500的性能和新特性,将动摇高端企业数据库部署的平台选择。因为这些企业现在越来越务实,第一考虑的是成本,只要性能和稳定性符合要求,转向x86平台只是时间问题。”张乐奕说道。
杨向勇先生是国内知名猎头网站51job.com的首席DBA,也曾担任过知名网游公司第九城市的数据库管理员。在他看来,至强7500对于中型企业来说是一个令人兴奋的产品。因为相对来说中小企业业务起伏性较大,数据库需要灵活的调整,而小型机在这方面不如x86平台灵活。
51job.com的首席DBA 杨向勇先生
“另一方面,Oracle数据库本身给x86服务器留了很大的空间自由发挥。”杨向勇表示,“因此很多大型企业我们都可以看到x86与小型机混搭的情况,都跑得是Oracle的服务器,加载到一个应用集群中,只不过小型机跑得是关键任务。”
这种情况在每次升级的时候都会给DBA带来巨大的烦恼。杨向勇表示,混合架构平台并不是每个企业都有技术条件维护的,因而必然会面临迁移的情况。“x86平台发展迅速,至强7500这样的处理器必然会推动很多企业将原有的Oracle数据库从小型机上迁移过来,从成本考虑也是如此。”