三大主流关系数据库Oracle、DB2和SQL Server之间的比较

来源:互联网 发布:魔术师约翰逊知乎 编辑:程序博客网 时间:2024/05/17 00:05

三大主流关系数据库OracleDB2SQL Server之间的比较

甲骨文、IBM和微软是关系数据库产品的前三强,由表中数据可以看出,MS SQL Server的市场份额增长速度是最快的,Oracle的市场份额呈下滑趋势。而且根据2006Gartner的调查数据显示,SQL Server数据库在非主机市场上的市场份额从2003年以来正以18% 的速度快速增长,市场占有率达26%,位居第二位。SQL Server的市场份额增长如此快,主要归功于SQL Server 2005SQL Server 2005在中国市场创下了3倍于市场平均增长率的增长速度,市场销售额同比增长SQL Server 2005凭借其在企业级数据管理、开发工作效率和商业智能方面的出色表现赢得了众多用户的青睐,成为目前唯一能够真正胜任从低端到高端任何数据应用的企业级数据库平台。据IDC统计,中国数据库市场平均年增长率保持在10%-12%,而SQL Server 2005以惊人的增长速度,重新定义了企业级市场的格局,成为业界增长最快的数据库产品。同OracleIBM相比,微软在数据库市场只能算后起之秀,但它凭借自下而上及其低价策略,以强劲的增长势头,一点点蚕食着IBMOracle在数据库版图内的疆土。<o:p></o:p>

在价格上,SQL Server 2005的售价与IBMDB2以及Oracle基本持平,但DB2Oracle 还要收取很多额外费用。SQL Server 2005的基本产品包,加上数据管理产品、商业智能产品及多核心支持的所有费用仅为其他厂商的1/10

在功能和性能上,IBM DB2一直是高端产品,它在高端市场的地位很牢固,微软和Oracle无法与之抗衡。而在中低端市,也是最大的一块市场,被Oracle和微软所占据,两家公司竞争非常激烈。下面主要比较Oracle SQL Server 2005在功能和性能差别。

1.   平台。Oracle走的是多平台兼容的道路,Oracle的产品可以运行于各种主流的操作系统平台,而SQL Serve 2005深深植根在Widows平台上。Oracle在兼并了RDB后更是提供了对VMS环境的支持,而SQL Server仅仅支持Windows操作系统,但它与windows天衣无缝的结合,将其性能发挥到了极致,这是windows平台下的Oracle无法比拟的。

2.    操作易用性。Oracle由于有了各类Java GUI的支持,迅速弥补了这一方面与SQL Server的差距,但在易用性上仍不如SQL Server 2005SQL Server是公认最好用的数据库产品。由于SQL Server 2005操作相对简单,必然会赢得很大一部分客户的支持,这也是SQL Server 2005市场份额增长如此迅速的重要原因之一。

3.     客户端支持。在数据库连接方面,SQL Server 2005ADOOLE DBDAOODBC和新加入的ADO.NETNative Client支持;OracleJDBCODBCOLE DBOCI的支持,并且提供了NET版的Oracle Client Provider。但在前台开发工具中, SQL Server 2005Visual Studio 2005有着天衣无缝的结合,而且C#可以在SQL Server 2005开发中使用,这必然为前台开发人员提供了很大的便利。

4.    OracleJava的支持非常强大,而SQL Server 2005增加了对CLR的支持,也可以内嵌C#语言。SQL Server 2005基本上实现了一个“完整版的Hibernate”,不仅仅是存储过程、触发器、视图,而是整个SQL Server 2005环境的对象化支持。

5.    国际化、本地化方面双方的支持都非常完备,难分伯仲。

6.    对移动设备的支持。双方均有移动设备版的产品,可以嵌入到各种移动设备中使用。由于微软有自己的嵌入式操作系统Windows CE,基于该平台上的开发工具Visual Studio CE,再加上微软的嵌入式SQL Server,可以为用户得供一套高效、可靠、方便的嵌入式开发环境。

7.     增强的Reporting ServiceNotification ServiceSQL Server 2005Oracle 1Og在报表服务和通知服务两个方面平分秋色。

8.      XML的支持。SQL Server 2005XML的支持异常强大,不仅支持XML存储,而且还新增一种XML数据类型,用户可以通过XML函数可对XML数据类型进行方便的操作,同时也可以利用XQuery等来操作XML数据。在对XML的支持上,SQL Server 2005Oracle >可以说是旗鼓相当,都很强大。

9.     数据挖掘。Oracle <提供的数据挖掘工具data miner提供了多种算法,而且以API的形式提供给用户调用。SQL Server 2005提供了9大类数据挖掘算法,有Report ServiceAnalysis service作为支持,并且前台还有XML/A来显示结果,其数据挖掘功能也是异常强大。在数据挖掘方面,两者各有优势,难分高低。

10.   空间数据库的开发。Oracle中提供了一个完整的2-D3-D数据开发平台,而SQL Server 2005中没有对应的产品,这是SQL Server 2005的缺点。

总之SQL Server 2005在功能上与Oracle 不相上下,在性能上直逼Oracle SQL Server 2005凭借其操作简便,有应用平台Windows和开发工具Visual Studio 2005作为支持,必将有很好的发展前景,也将赢得更多的用户,其市场占有率必定会越来越大

四大数据库的比较(SQLServer、Oracle、Sybase和DB2)

      SQL Server
  只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量的关键业务时。
  Oracle
  能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。
  Sybase ASE
  能在所有主流平台上运行(包括 windows)。 但由于早期Sybase与OS集成度不高,因此VERSION 11.9.2以下版本需要较多OS和 DB级补丁。在多平台的混合环境中,会有一定问题。VERSION 12.0以上版本得到了一定的改进。
  DB2
  能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。
  可伸缩性,并行性
  SQL server
  并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。
  Oracle
  并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要,用户可以把数据库移到UNIX中。 Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。
  Sybase ASE
  虽然有DB SWITCH来支持其并行服务器,但由于DB SWITCH在技术层面还未成熟,且只支持版本12.5以上的ASE SERVER,因为DB SWITCH技术需要一台服务器充当SWITCH,从而在硬件开销上会有所增加。
  DB2
  具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点。
  安全性
  SQL server
  没有获得任何安全证书。
  Oracle Server
  获得最高认证级别的ISO标准认证。
  Sybase ASE
  获得最高认证级别的ISO标准认证。
  DB2
  获得最高认证级别的ISO标准认证。
  性能
  SQL Server
  多用户时性能不佳
  Oracle
  性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。
  Sybase ASE
  性能接近于 SQL Server。但在UNIX平台下的并发性要优与 SQL Server。
  DB2
  性能较高适用于数据仓库和在线事物处理。
  客户端支持及应用模式
  SQL Server
  C/S结构,只支持windows客户,可以用ADO,DAO,OLEDB,ODBC连接.
  Oracle
  多层次网络计算,支持多种工业标准,可以用ODBC,JDBC,OCI等网络客户连接。
  Sybase ASE
  C/S结构,可以用ODBC,Jconnect,Ct-library等网络客户连接。
  DB2
  跨平台,多层结构,支持ODBC,JDBC等客户
  操作简便
  SQL Server
  操作简单,但只有图形界面。
  Oracle
  较复杂,同时提供GUI和命令行,在windowsNT和unix下操作相同
  Sybase ASE
  较复杂,同时提供GUI和命令行。但GUI较差,常常无法及时状态,建议使用命令行。
  DB2
  操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同
  使用风险
  SQL server
  完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容早期产品。使用需要冒一定风险。
  Oracle
  长时间的开发经验,完全向下兼容。得到广泛的应用。完全没有风险。
  Sybase ASE
  向下兼容, 但是ct-library 程序不益移植。
  DB2
  在巨型企业得到广泛的应用,向下兼容性好。风险小。
  经过上述比较,我们不难发现,DB2是最好的数据库。

http://blog.sina.com.cn/s/blog_62b1508e0100i5zk.html