资源描述
SQL Server和Oracle性能相关对比1 对比概述Microsoft SQL Server 已经成为客户在Microsoft Windows平台上布署数据库应用的首选。经过长期专门针对于Microsoft Windows平台的优化,SQL Server在可信赖、生产率、连接性和经济价值等方面表现卓越。所有SQL Server版本都建立在相同的质量、安全性和可靠性的基础之上。Microsoft SQL Server已经发展为能够支持巨型数据库和应用程序,其中包括可供数百万人使用的数TB数据库。SQL Server通过在对称多处理器(SMP)系统上支持向上扩展(允许用户添加处理器、内存、磁盘、网络带宽等资源以建立单一大型节点)或向外扩展为多节点群集(允许巨型数据库在服务器群集中进行分区,每台服务器存储整套数据库的一部分并完成部分工作,同时确保数据库对外以一个整体的形式提供访问)的方式实现这种伸缩能力。通过向外扩展,SQL Server 2000在事务处理委员会基准测试C(TPC-C)中创造了以往任何平台上的任何数据库系统均未达到过的顶级性能指标。.NET服务器与SQL Server群集提供了高度可用性和自动管理机制。SQL Server通过内建的故障转移与复制技术来支持高可用性。同时,SQL Server还提供了基于用户接口、向导程序、重复性任务作业调度以及面向脚本化应用操作的SQL-DMO的强大管理模型。SQL Server的体系结构适合模块化增长、自动化配置、维护以及大型服务器区的编程实现。与其它同类数据库产品,总体上的对比:l 性能更高。在同样配置的硬件平台上,SQL的性能比同类的数据库更高。最近的TPC-C测试表明:同等价值的系统上运行于Windows 2000/2003上的SQL的性能是运行于UNIX平台的Oracle的2倍多。l 更容易使用和管理。SQL有许多管理工作是自动化的,几乎无需管理员的干预就能平滑运行。l 集成的数据仓库和数据挖掘功能。SQL 2000集成了业界最具扩展性的数据仓库和数据挖掘引擎。在处理大数据量的数据挖掘任务时性能非常优秀。l 完整的XML技术支持。SQL 2000在内部集成了对XML技术的支持。l 集成的安全性。SQL 2000获得C2级的安全认证。并可以与windows2000/2003环境集成实现单一登录。关于与Oracle数据库的对比,请参见如下URL:2 数据库性能对比以下表格中经过审核的结果证明,SQL Server 2000与Microsoft Windows Server 2003能够针对最多32颗处理器提供优异的SMP伸缩能力。事实上,其所达到的TPC-C性能与性价比优于Oracle或DB2在其它所有平台创下的SMP纪录(或群集纪录)。2.1 单机业务处理性能对比SMP在TPC-C基准测试平台*上的性能与性价比(8至64颗CPU)SQL Server、DB2及Oracle对比数据库硬件设备CPUtpmC美元/tpmC系统成本有效性SQL Server 2000企业版HP Proliant DL760-G2 8P8115,0257.69美元884,216美元2003年3月31日Oracle 9i R2企业版IBM eServer pSeries 660 - 6M18105,02523.45美元52,462,401美元2001年9月21日DB2/AS400V4 R5IBM eServer iSeries 400 - 840-2420-124163,77651.58美元8,448,137美元2000年12月15日Oracle 9i R2企业版IBM eServer pSeries 69032427,76117.75美元7,591,038美元2003年5月31日Oracle 9i R2企业版HP 9000 Superdome64423,41415.64美元6,621,072美元2002年8月26日SQL Server 2000企业版64位NEC Express 5800/1320Xc C/S32433,10812.98美元5,619,528美元2003年6月30日* 截止到2003年3月6日来自各数据库厂商的最佳SMP测试结果。上述表格显示了最新SQL Server SMP TPC-C基准测试结果,以及其它数据库厂商在8路和32路SMP服务器上的最佳对比结果。结果显示,SQL Server在8路SMP服务器上能够支持100,000 tpmC并访问容量为8 TB的数据库,SQL Srever拥有最佳8路SMP性能其性能优于所有运行DB2或Oracle的8路UNIX系统。与此同时,Microsoft解决方案的成本只有其它系统的不到三分之一。在32处理器系统上。SQL Server的性能略高于最佳Oracle测试结果。但就总体而言,SQL Server与DB2或Oracle相比具有更高的峰值性能,并且价格远远低于UNIX解决方案。2.2 群集业务处理性能对比上述表格显示了针对单节点SMP的最佳TPC-C测试结果即向上扩展性能指标。实际上,多数大型服务器是由位于群集化数据库服务器前端的Web服务器区构成的。这是一种向外扩展式设计方案,以下表格显示了这种设计方案的性能指标。SQL Server、DB2与Oracle群集在TPC-C基准测试平台上*的群集性能与性价比对比(8至64颗CPU)数据库e硬件设备CPUtpmC美元/tmpC系统成本有效性SQL Server 2000企业版HP ProLiant DL760-900-256P272(34 x 8)709,22014.96美元10,603,803美元2001年10月15日Oracle 9i R2企业版HP ProLiant DL580-PDC 32P32(8 x 4)138,36217.38美元2,404,503美元2003年3月5日SQL Server、DB2与Oracle群集在TPC-C基准测试平台上*的群集性能与性价比对比(8至64颗CPU)(续)数据库硬件设备CPUtpmC美元/tmpC系统成本有效性Oracle 9i R2企业版HP ProLiant DL580-PDC 32P32(8 x 4)137,26118.46美元2,533,095美元2002年9月6日SQL Server 2000企业版*HP Proliant DL760-G2 8P8(1 x 8)115,0257.69美元884,216美元2003年3月31日* 截止到2003年3月6日的最佳群集测试结果。* 这是一条用以作为参照的非群集测试结果。SQL Server长期位于TPC-C基准测试向外扩展类别的领先地位。正如所期望的那样,这些向外扩展测试结果远远优于通过SMP方式实现的向上扩展测试结果。SQL Server 2000在此领域保持着性能领先优势。同其它数据库产品相比,SQL Server 2000能够提供最佳性能和性价比。其性能指标比与其最为接近的竞争对手高出60%。这里提供了两套Oracle测试结果,其中一套面向Windows 2000 Server,另一套面向Linux,这两套Oracle系统几乎采用相同硬件设备(尽管两次基准测试相隔了6个月,从而使Linux在硬件上显得略具价格优势)。最佳SQL Server测试结果比最佳Oracle群集测试结果高出5倍之多;事实上,Oracle的最佳群集测试结果仅仅相当于单节点8 CPU SQL Server系统的测试结果。同样,Oracle在性价比方面也一概稍逊一筹。图3:吞吐量与CPU对比总而言之,TPC-C基准测试结果显示,与其它平台上的所有数据库产品相比,SQL Server具有最佳峰值性能与性价比。2.3 伸缩性方面的性能对比在伸缩性方面,SQL Server 2000在由运行Windows2000 Server的HP节点构成的群集上呈线性变化趋势。如图3所示,通过添加8处理器SMP系统组,数以千计的事务得以在群集上进行处理。群集从16个SQL Server节点开始,依次增加至24和32个节点。(在此过程中的实际节点数量分别为17、26和34,额外的节点充当事务处理协调器。)最大规模的系统由272颗CPU组成,为分布在3,000多块磁盘上的58 TB数据库提供服务。这种最大规模的系统应当足以适用于最为庞大的电子商务站点,即便仍然无法满足要求,亦可通过添加更多节点的方式不断扩大群集规模。以上这些性能指标已经远远超过了其它系统在各种平台上创先的纪录。在由HP DL76-9000服务器构成的群集上,随着节点的不断增加,SQL Server显示出了趋于线性化向外扩展趋势(一旦投入了最初用以设计向外扩展方案的资金)。测试数据显示了从17、26到34个8处理器SMP节点的伸缩性能(总共涉及272颗CPU)。随着系统的向上扩展,磁盘和网络带宽也将随着处理器和内存的增加而不断扩充。TPC-W基准测试负责模拟具有大量复杂事务的Web服务器应用。它所测试的主要对象为每秒Web交互次数(WIPS)这一性能指标以及每个WIPS单位的成本(美元/WIPS)这一性价比指标。迄今为止,只有IBM/DB2和SQL Server拥有此项测试结果。下表显示了目前为止两种产品的最佳测试结果。TPC-W基准测试平台上的最佳测试结果(100,000个项目)*数据库硬件设备WIPS美元/WIPS可用性SQL Server 2000企业版Unisys ES 7000010,440106.73美元2001年7月10日IBM DB2 UDB 7.2IBM eServer xSeries 4307,554136.80美元2001年6月8日Oracle无相应记录-* 截止到2003年3月6日由各厂商提供的最佳SMP测试结果2.4 决策支持方面性能对比为调节与决策支持和报表生成相关的工作负载,TPC定义了广泛的相关负载,并将其命名为TPC-H。TPC BenchmarkH(TPC-H)是一项决策支持基准测试,它定义了一套面向商务应用的特殊查询和并发数据修改操作。这项基准测试模拟通过复杂查询对大量数据进行分析的决策支持系统。通过TPC-H所得出的性能指标被称为TPC-H每小时组合查询性能指标(QphHSize)。SQL Server拥有在100 GB和300 GB两种类别上的TPC-H测试结果。下表显示了300 GB级别上的最佳测试结果。该表格中的数据没有明显的优劣之分。然而,SQL Server位于成本最低的解决方案之列,并且在配备16颗处理器的SMP服务器上具有可观的性能。SQL Server解决方案与SMP UNIX解决方案在TPC-H基准测试平台(300 GB)上对比数据库硬件设备CPUsQphH300 GB美元/QphH 300 GB系统成本有效日期Informix XPS 8.31 FD1HP Alpha Server ES40 Model 6/667162,8321,058美元2,995,034美元2001年2月14日SQL Server 2000企业版64位Unisys ES7000 Orion 130164,774219美元1,043,153美元2003年3月31日Oracle 9i R2企业版HP Alpha Server ES45 Model 68/1000165,976453美元2,706,063美元2002年6月1日IBM DB2 UDB 7.2HP ProLiant DL760 x900-64P6412,995199美元2,573,870美元2002年6月20日* 截止到2003年3月6日各厂商的最佳性能指标。2.5 第三方应用的性能对比TPC测试结果在包括SAP、PeopleSoft在内多方提供的其他基准测试中得到了验证。以下表格汇总了这些基准测试项目。从中可以看到,SQL Server在多项重要的终端用户基准测试中居于首位。应用基准测试中的最佳测试结果基准测试项目世界纪录保持者TPC-C709,220 tpmC14.96美元/tpmCSQL ServerTPC-W21,139 WIPS 10,00032.62美元/WIPSSQL ServerTPC-H27,094 QphH 3 TB240美元/QphHOracleSAP R/3 Sales & Distribution47,528并发用户IBMSAP R/3 Retail3.2亿笔销售数据线项目/小时SQL ServerGreat Plains Software2,400并发用户SQL ServerOnyx57,000并发用户SQL ServerPivotal eRelationship20,000并发用户SQL ServerCA Brightstor Backup2.6 TB/小时SQL ServerPeopleSoft eBill Pmt191,694笔支付/小时SQL ServerPeopleSoft CRM 8.425,400并发用户SQL ServerPeopleSoft Financials15,000并发用户IBMJ.D. Edwards OneWorld9,000并发用户Oracle最佳性能指标反映了应用的系统伸缩能力。您当然无法事先计算出这些指标,然而,您可以通过查看标准基准测试以及关注相关行业中类似应用的方式对其可伸缩性进行评估。2.6 性能价格比对比图:性价比与性能对比显示了截止到2002年12月为止,SQL Server在这一不断扩展的群集上所实现的性能指标,以及所有测试结果在100,000 tpmC以上的系统针对这一性能指标(tmpC)的性价比(美元/tmpC)。SQL Server在性能与性价比方面具有明显的领先优势。请注意,针对测试结果介于100,000 tpmC至700,000 tpmC之间的系统,SQL Server的性价比大约为13美元/tpmC。相比之下,UNIX系统不仅价格昂贵,而且吞吐量明显处于劣势。2.7 SQL2005的最新性能数据1. Three Is CompanyUntil now DB2 and Oracle were the only two members of the tpmC millionaires club. Now SQL Server has joined them to keep company. The details of the benchmark are as follows. Total System Cost5,820,285US $ TPC-C Throughput1,082,203Price/Performance5.38US $ Database ManagerMicrosoft SQL Server 2005 Enterprise Edition 64bit CPU:Intel Itanium2 1.6GHz # of CPUs:64Cluster:NAvailability12/07/05Note that this is also the best TPC-C (non-clustered) result on Intel Itanium processors. It is true that IBM and Oracle have published higher numbers, but they are of academic interest only. There are no known applications in the entire world that need more than 1 million transactions per minute. These benchmarks should, once and for all, put to rest the mythperpetuated by Oracle and IBMthat SQL Server cannot scale to handle high-end enterprise requirements.Faster and cheaper than Oraclefor OLTP applicationsThis benchmark also proves that on equivalent hardware, SQL Server is faster than Oracle. As shown in the graph below, SQL Server has 7% better performance and 37% lower cost than Oracle 10g. 2. Best OLTP Price/Performance on servers of all sizesSo given that SQL Server can scale up and out-perform Oracle on high-end enterprise class servers, the more interesting question is: Who offers the best value, across the entire spectrum of servers? Answer: SQL Server. As can be seen from the following table, SQL Server has better Price/Performance than Oracle for all classes of serverssmall, medium and large. Oracle vs. SQL Server - Price/Performance Comparison ($/transaction)Server Class# of CPUsSQL Servers Best $/tpmCOracles Best $/tpmCWinnerSmall Servers1$ 1.4No Result!SQL Server2$ 1.8$ 1.81SQL Server4$ 2.04$ 3.94SQL ServerMedium Servers8$ 3.96$ 5.26SQL Server16$ 4.49$ 4.98SQL ServerHigh-End Servers Oracle has a better TPC-C Price/Performance on 32-way, compared to SQL Server, primarily because our 32way benchmark is over a year old April 200464$ 5.52$ 8.33SQL Server 11
展开阅读全文