简要回顾一下2009年数据库技术领域。过去的一年,差不多也可以说是过度的一年,数据库技术以及数据存储产品等都都或多或少发生一些方向上的转变。
Oracle收购Sun,MySQL前途未卜
Oracle收购Sun可谓一波三折。在获得美国司法部门的批准后,欧盟委员会又开始调查,Oracle随后抛出一个"十条保证",眼看着欧盟就要点头,没想到MySQL创始人Michael Widenius(Monty)则在这个当口不失时机的搞出来一个"拯救MySQL"的抵制活动,让Oracle头疼不已。Monty这人多少也有点上纲上线,现在已经将MySQL的命运和"InternetFree"这个大话题绑在一起了。
没有人会相信Oracle会善待MySQL,谁会干放虎归山的事情呢?换了你也会把MySQL雪藏起来,毕竟商业公司就要逐利。但是,也很难说一旦收购完成后,MySQL会在短期内消失,基于MySQL众多开源分支以及解决方案也都发展的不错,我相信最终决定权还是在用户的手里。就算没有MySQL,也没准儿会有YourSQL出来的…
尽管口水战还在进行,MySQL的开发者倒是没闲着,在年底发布了5.5第二个里程碑版本,原来站点上的6.0系列的信息全部撤掉。5.5更像一个集成版本,将不少第三方贡献的功能改进(比如Google的Patch)融合了进来。
而Oracle这一年在产品上的一个标志性事件是推出了Exadata存储第二版,与***个版本不同的是,这一个版本在OLTP方面增强了许多。从这个版本开始,Oracle正式拥有自己的存储硬件(***版是和HP合作的产物)。RDBMS上,除了发布11g第二版之外,也在做功能上的调整,这一次,面向的是数据中心。
NoSQL的兴起
这是今年数据库领域最有趣的话题。NoSQL的由来大约是这样的:当时还效力于Last.FM的Johan Oskarsson(现在已经投靠Twitter了)组织了一个技术会议,话题是关于"opensource,distributed,nonrelationaldatabases",为了方便一点,想出来一个"NoSQL"的术语。然后由Rackspace的EricEvans引用,进而流传开来(refer)。NoSQL在基于Key-value的存储解决方案上提倡去SQL化,尤其避免表连接,并且通过一些变通的办法提供RDBMS的ACID功能(如果需要的话)。
NoSQL的理念能够短时间内被技术圈所接受,离不开基本的理论支撑:最终一致性、BASE、CAP这三大基石;一方面是基于Key-Value的数据存储解决方案更加成熟,
所谓NoSQL,是针对当前对关系型数据库的过度依赖与运用而言,不要将其当成***药,也没必要过于激进的推行NoSQL的模式。在我看来,NoSQL是针对争夺应用模式上的一种理念上的运用。对多数企业来说,仍属屠龙之技,没必要照搬解决方案。至于传统的RDBMS是不是已经走向末路,我认为不尽然。RDBMS依然尤其广泛的应用场景,而NoSQL如果要有更大的作为也要有来自商业上的更大支持才会有所突破。
SSD被更多企业接受
Jim Gray在2006年的那句名言:Tape is Dead,Disk is Tape,Flash is Disk,RAM Locality is King,现在正在被现实所验证。2009这一年,用户已经开始进一步试水SSD产品,包括MySpace、Last.FM等网站已经开始在关键应用上部属SSD(refer:1,2)。而国内也有很多企业对SSD进行尝试性的使用,这其中包括阿里巴巴、优酷。
更多的存储厂商已经在高端存储中兼容SSD,除了去年的EMC尝鲜之外,现在IBM、HDS、NetApp都加入了这一阵营。
随着SSD的价格迅速下降,很多存储厂商已经开始调整硬件架构,现在有个看似可行的趋势是在Cache层与磁盘层之间多构建一个SSD存储层,在成本与性能之间做一个折衷。
在去年年底的回顾中,我曾大言不惭的说"相信2009年会是SSD爆发的一年",总体来看,2009年对SSD的部属还谈不上"爆发"。中规中矩而已。
Amazon EC2对MySQL企业版的支持
尽管我不愿意谈云计算,不过Amazon这一年在云计算方面还是做了很大的突破,Amazon EC2上面现在已经可以跑MySQL企业版了,采取按照增长付费(‘Pay-as-we-Grow’)的模式让初创公司有更多的选择,这比SimpleDB可以说是前进了一大步。这种模式在国内是否可行,考虑到当前内容审查的问题,还有待商榷。
国内Key-Value产品
这一年来国内对Key-Value产品的研究与运用和国外基本没太大的距离,豆瓣网先作出了不错的表率,发布了BeansDB存储系统,这是一个豆瓣风格的Dynamo实现,采用类似Memcached的去中心化结构。而最近得到的消息说人人网也要将其内部使用的存储系统Nuclear开源。相信在新的一年可供参考的Key-Value会层出不穷。
其它方面
Hadoop过去一年中没有太大的变化,上了一点规模的网站都在用,快成了Web数据分布式计划的标准组件了。Doug Cutting出走Yahoo!还是带来了一定的影响,不知道今后Yahoo!在Hadoop方面的支持力度会如何。至于面向列的DB发展情况,在过去的一年中进展不大。SQLServer和DB2等方面似乎没什么可圈可点的大事,倒是PostgreSQL因为MySQL的不确定性而取得了不小的增长。
有一点要补充的是,假以时日,Open Data或许也将成为一个趋势。
当然,这份回顾有浓郁的个人色彩,有不同意见请留言探讨吧。