数据库技术领域盘点及发展趋势
2010年即将过去,在期待新的一年的同时,让我们一起回顾一下2010年数据库市场及相关领域的风云变幻。
就关系数据库技术而言,今年是一个比较平淡的小年。微软发布的Microsoft SQLServer2008 R2版本已经可以看作是本年度的一次重量级发布了,而Oracle则挟收购Sun的余威像一个不甘平静的新贵一样四处出击和挑衅,一向成熟稳重的IBM公司忍无可忍则针锋相对的展开了对Oracle的“破甲行动”,SAP公司收购Sybase一案并没有给波澜不惊的数据库市场掀起多少微澜。
关系数据库发展到今天,主要的技术已日趋成熟,产品的完善将会不断朝着更自动化、更全面的数据支持、更优越的性能等方向发展,持续并购后的技术和市场的融合也需要一个进一步消化的过程。2009年开始兴起的NoSQL在这一年有喜有忧,一方面是NoSQL的概念逐步得到接受并继续不断推广,另一方面一些NoSQL的先驱者却退出了这场运动。
微软SQL Server 2008 R2版本的发布
微软公司于2010年4月21日宣布推出Microsoft SQL Server 2008 R2。微软公司努力将SQL Server打造为一个信息平台,而不再仅仅是一个数据库,并在商业智能、可扩展性和平台集成性方面做了进一步增强,具体如下:
Ø 报表及分析服务的可管理自助式商业智能
Ø 企业级的可扩展性和更高的IT效率
Ø 平台集成性——扩展数据中心至云服务
报表及分析服务的可管理自助式商业智能
微软在最新发布的SQL Server 2008 R2中加入了全新、强大的可管理自助式BI功能,并通过用户熟知的工具——如Microsoft Excel 2010和Microsoft SharePoint Server 2010,消除了IT专家和一般最终用户之间的障碍。使用名为PowerPivot的最新BI技术,最终用户几乎可以从任何地点引入数据,并轻松操纵大型数据集;而IT仍然可以对用户创建的BI解决方案实施监控和管理。
R2版本还提供了主数据服务、Report Builder3.0等与商业智能相关的新功能。
企业级的可扩展性和更高的IT效率
在R2版本中,微软继续将重点放在对关键数据中心需求的关注,为企业提供更加安全且易于管理的高度可用的基础设施。随着SQL Server 2008 R2数据中心版的推出,如果与Windows Server 2008 R2结合使用,用户现在可以在系统上使用多达256个逻辑处理器运行数据库,并可通过Hyper-V和Live Migration的支持,将其迁移到虚拟数据中心。这两个版本可以帮助用户将数据库迁移到可用性更高、稳定、虚拟化、可根据需求扩展的内部云设施上。
此外R2版本还提供了一个崭新的功能StreamInsight,StreamInsight是微软新的复杂事务处理引擎的名称,它是一组.Net类的合集。StreamInsight能够分析运行中的数据流,快速执行对信息流的查询,这样你可以做出更快的响应。
SQL Server 2008 R2并行数据仓库也即将推出,R2并行数据仓库采用MPP架构,具备很强的可伸缩性,以很低的成本实现很高的性能,为数据仓库从几十个TB扩展到几百个TB提供一套可伸缩的平台。
平台集成性——扩展数据中心至云服务。
SQL Server 2008 R2也体现了微软对于云服务的进一步承诺。SQL Server的功能通过Microsoft SQL Azure扩展至云服务,该应用不仅能提供一致的编程模式、常见的功能和工具,更重要的是,能够通过分布式云数据服务提供新的企业机遇、高度可用性、自助式管理和大规模处理能力。
四面出击的Oracle
经过艰难的博弈,Oracle终于在2010年1月27日正式宣布对Sun的并购的完成,总价值超过70亿美金。这次并购也促成了Oracle从数据库和商业软件领域跨入硬件供应领域。通过这次并购,Oracle将在服务器、海量存储设备、处理器等领域与其他公司形成更直接的竞争,其中包括HP,CISCO,EMC等等。这次并购必将对业界产生深远影响。
狼烟四起
并购之后的Oracle似乎一直热衷于四处挑起战后,当然交恶的背后是利益的冲突。首先是Oracle和HP这两大全业务巨头,一个由软向硬,一个由硬向软,从曾经的盟友到展开了全面的竞争,而惠普前CEO马克赫德改换门庭被延揽至Oracle,险些引发官司,更加剧了双方的矛盾。2010年11月24日,美国加州联邦法院作出裁决,要求SAP就侵犯甲骨文知识产权一案向甲骨文支付13亿美元作为赔偿。这一次判决和天价赔偿会使SAP受到重创,但不会影响SAP继续运营的能力。这也势必将加强SAP整合Sybase的决心和速度。Oracle突然发起对Google的诉讼,理由是Android系统侵犯到Oracle所拥有的专利和著作权。可以预料这场诉讼将会是一场艰难的马拉松赛跑,这场诉讼对于整个Java体系是弊大于利的,也不会真正的赢家。在甲骨文收购Sun满一年之后,甲骨文对Sun各项整合工作也从扑朔迷离开始转为日益清晰。告别免费成为本次新策略的主轴,甲骨文先后放弃开源项目Open Solaris、Open Office等等。
Oracle Patch 11.2.0.2
就数据库产品而言,本年度Oracle并没有推出重量级的新版本和功能,2010年9月份,Oracle再次发布了数据库版本的重要更新,推出了11.2.0.2.0,这也是11gR2的第一个Patchset,同时从11.2.0.2.0开始,今后Oracle数据库所有的patchset将以完整安装包形式发布。其改变原因是因为Oracle认为Out-of-place upgrade是最佳实践,比较安全。在11.2.0.2补丁版本中主要增强Oracle Automatic Storage Management Cluster File System (ACFS)功能、Quality of Service Management功能、Database Replay功能和Management功能。
Oracle Open World
但在旧金山举办的Oracle Open World 2010大会上,Oracle推出了一系列硬件和软件产品,我们可以看出oracle的发展趋势。
Oracle宣称“Exadata是Oracle有史以来发布的最成功的产品”,在OOW上新推出的Exadata X2-8包括性能更强大的处理器、更高内存(2TB)、增强的安全性、基于闪存的缓存、Solaris或者Oracle Unbreakable Linux的安装选择,其性能可达到100万IOPS。这是基于SUN的推出的最新产品,也是和SUN的完美融合。
Oracle在这次大会上推出了被称为是全球首款集成中间件设备的Exalogic Elastic Cloud;Oracle还推出Sun ZFS Storage Appliances这样一个新产品线,这款产品采用了一个混合存储池架构,并提供三种数据保护解决方案;发布16核Sparc T3服务器为Sun SPARC服务器赋予了新生;并试图把Oracle VM打造成虚拟化标准的有利候选者
MySQL5.5正式版
MySQL于2010-10-8发布了MySQL Cluster NDB 7.1.8版本。2010年12月,Oracle又宣布发布MySQL 5.5正式版,这次版本升级,使用户能跨Windows、Linux、Oracle Solaris、Mac OS X等多种操作环境改进Web应用的性能和可扩展性。其社区版按照GNU通用公共许可证(GPL)的规定提供许可,包括作为默认存储引擎的InnoDB在内。
但总的来说,MySQL5.5正式版并没有太多新亮点
Oracle的产品线的整合任重而道远
从Oracle9i推崇的高级复制,到Oracle10g主打的stream技术,2009年Oracle又收购了GoldenGate,并整合到产品中。GoldenGate功能强大,可以跨平台,跨数据库。其性能优于Stream,原理和Stream也差不多,区别是捕获后生成的文件是完全独立于数据库的。GoldenGate的应用场景很多:可以做数据库同步;容灾备份;从主数据库抽取部分数据到其他数据库,从而将查询功能(报表功能等)与生产系统相分离。看来Oracle公司今后的方向将是主推GoldenGate,Stream也将重蹈高级复制的命运,今后将提供支持,不再开发。
关于OWB和ODI,ODI是Oracle从Sunopsis收购而来,完善Oracle的数据集成方案,加强Oracle的BI,SOA和MDM产品,这两种产品是都是使用E-LT的理念设计出来的数据抽取/数据转换工具,因此他们既是竞争关系,也是相互补充关系。从目前的状况来看,Oracle将会主推和完善ODI产品,而抛弃OWB。
甲骨文最早于2005年底收购了Siebel的BIEE,接着又在2007年以30亿美元收购Hyperion公司,该收购随后引发了连串的收购案,SAP收购了BO,IBM则收购了Cognos。但随后Hyperion一直处于蓄势待发阶段。在BI工具上BIEE和Hyperion产生了竞争关系,在OLAP工具上,Analytic workspace manager又和Essbase产生了竞争关系,到底何去何从,Oracle如何更深层次的整合和消化自己的产品,让我们拭目以待。
IBM展开“破甲行动”
为了应对Oracle咄咄逼人的挑衅,IBM这个内敛的企业于2010年初展开了“破甲行动”。
尽管IBM尚未推出类似于甲骨文Exadata数据库机那样的软硬件打包出手的产品,但其在2009年末推出的PureScale集群功能已经被业界誉为Exadata杀手,据称能够帮助用户在不牺牲性能的前提下“向外扩展”,并具有系统无限扩展、持续可用、应用程序透明等多项特征。在DB2相继推出了9.7、9.8版本,这是一个“向甲骨文要市场”的版本,该版本为常用的语法规则和PL/SQL语言提供了全面支持,并实现了97%的应用程序与甲骨文兼容;对于另外3%的兼容性问题,IBM成立了专家团队SME;这使得从Oracle数据库迁移到DB2变得比以往更加轻松。
根据Gartner公司5月份的公布数据,IBM服务器的出货量和销售额是Sun的5倍多。显然IBM此次“破甲”行动的要点在于借助Sun服务器客户流失的机会,在数据库市场也从Oracle那里夺取一些份额。
DB2和ORACLE交锋的主战场目前其实已经不在技术,更多在于如何取悦应用开发机构(企业内部开发力量或ISV),而对技术标准的把控很可能成为下一步撬动市场杠杆的砝码。对于ISV们来说,如果看不到IBM平台带来的收益和商业机会,绝对不会为了移植而移植。甲骨文目前的优势是后端和数据仓库的积累,而IBM在商业智能和业务分析领域不断巩固和开创新局面。
没落的贵族Sybase
2010年7月27日SAP公司正式完成了对Sybase的收购完成。
虽然在数据库市场,Sybase排在甲骨文、IBM和微软的后面居第四位,Sybase的Adaptive Server Enterprise数据库在全球数据库市场仅占3.1%的份额。市场份额不足10%,根本无法与甲骨文、微软和IBM竞争,相信SAP收购Sybase应该不会对整个数据库市场的格局产生太大影响。
尽管如此,Sybase还是于2010年1月,推出了最新版本——ASE 15.5,其新功能主要包括对内存数据库的支持,Adaptive Server备份服务器和TSM的集成,增加了多Tempdb组的支持,提供更有效的备份压缩功能。此外还发布Sybase IQ 15.2,增强了全文检索、联合查询以及Web分析功能
Sybase在移动商务领域具备一定的优势,同时通过将SAP Business Objects产品组合和Sybase技术的优势互补,SAP能够提供一个完整且最优化的高效能业务分析基础架构。SAP Business Objects商务智能解决方案已在Sybase IQ 15.0和Sybase ASE 15.0上经过认证。客户可以获得一套完整的解决方案——从业务分析应用程序到报表、记分卡和仪表板,再到数据整合和数据质量控制,进一步到交易存储、数据集市和数据仓库。
喜忧参半的NoSQL
NoSQL,指的是非关系型的数据库,是一项全新的数据库革命性运动,在2009年出现井喷效应。不可否认NoSQL的拥护者们提倡运用非关系型的数据存储,相对于目前铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入。
随着互联网大规模Web2.0应用的兴起,云计算需要的大规模分布式服务和分布式存储的发展,传统的关系数据库面临着诸多全新挑战。例如在应对高并发的读写的需求,对海量数据的高效率存储和访问需求,对数据存储的无缝扩展和横向扩展,传统关系数据库已经显得力不从心,暴露出很多难以克服的问题。
像谷歌、雅虎、Facebook、Twitter、亚马逊这些在互联网行业处于领袖地位的公司,早就把精力投入到了NoSQL的研发,国内的淘宝、盛大也逐步投向了NoSQL的研发;国内众多的SNS网站和新兴网站也在利用各种开源的NoSQL技术和方案上取得不少的成效。
但NoSQL只是一场运动和反关系数据库的各种技术的统称。
比如在满足高性能读写需求的Key-Value的方案有Radis、Tokyo Cabinet和Tokyo Tyrant、Flare、BeansDB、Nuclear、TCDatabase;在满足海量存储需求和访问面向文档的数据库方案则有MongoDB、CouchDB;在满足高可扩展性和可用性的面向分布式计算的数据库方案则包括Cassandra、Voldemort等等不一而足。
此外还有大名鼎鼎的Hadoop,Hadoop是项目的总称,主要是由HDFS、MapReduce和Hbase组成。
HDFS是Google File System(GFS)的开源实现。
MapReduce是Google MapReduce的开源实现。
HBase是Google BigTable的开源实现。
所以NoSQL只是非关系型数据存储的广义定义。如Google的BigTable与Amazon的Dynamo是非常成功的商业NoSQL实现。一些开源的NoSQL体系,如Facebook的Cassandra,Apache的HBase,也得到了广泛认同。但从这些NoSQL项目的名字基本上看不出什么相同之处。
2010年7月9日,Twitter在一篇官方技术博客Cassandra at Twitter Today提到暂停使用Cassandra来代替MySQL存储feed的计划,究其原因是因为Cassandra仍然缺少大并发海量数据访问的案例及经验,Cassandra代码也存在不少问题缺乏稳定性。
Cassandra来源自Facebook,即使在Facebook内部Cassandra目前只用在inbox search产品上,容量大约有100-200T。且Inbox Search在Facebook的基础架构中也并非核心应用。
CouchDB也宣布自己不再是NoSQL的一份子,理由是NoSQL标签只是让一些项目获得了更多曝光率;目前的NoSQL项目中也鱼龙混杂,还需要时间的考验。
关系数据库的趋势
传统关系数据库的技术发展至今,已日趋成熟,关系数据库的竞争也不仅仅是单纯的技术竞争,早已扩展到了商业智能、一体化解决方案和服务等更广阔的层面。
IBM在一体化解决方案和服务上表现的更为成熟,但在技术上缺乏突破,略显保守;Oracle携收购Sun的成功咄咄逼人,但对各种已并购产品的融合仍需要一个漫长的消化过程,平心而论Oracle数据库的每一个版本都会带来一些新的突破和亮点;SQL Server尽管在数据库的技术突破上也不少,终囿于Windows平台的局限,缺乏海量数据库的应用案例,给人一种中低端的印象。
关于关系数据库的发展方向:
一、继续增强关系数据库本身的功能,提供更快更高效的事务处理机制,加强横向和纵向扩展能力,更加智能和友好的管理和维护功能,这仍是今后关系数据库发展和竞争的重点。
二、继续增强商业智能和数据仓库的功能,比如海量存储技术、海量数据处理效率、OLAP技术、数据挖掘技术,提供一体化的综合解决方案和服务能力。
三、为了应对NoSQL的挑战,也许在将来关系数据库会主动吸收和引入NoSQL技术的优点,并融入到关系型数据库中来了;任何一种技术都有其优点和缺点,有其特殊的应用场景,从这个角度来看NoSQL和关系数据库更像是相互补充的关系。