到底该不该继续使用MySQL数据库?

日期: 2013-11-07 作者:孙瑞 来源:TechTarget中国

2009年,当Oracle收购Sun的时候,最受欢迎的开源数据库MySQL也归入Oracle帐下。从此,人们关于MySQL命运的讨论就没有停止过,MySQL的创始人Michael “Monty” Widenius也弄出MariaDB来对抗MySQL。事情过去了几年,现在Oracle还在不断地为MySQL投入人力物力,MySQL也得到了进一步完善。然而与此同时,MySQL的衍生版以及NoSQL数据库技术的发展也在不断提速。业界的讨论话题变成了该不该继续使用MySQL。对此,我们整理了来自两个阵营的声音,给出了继续使用和放弃MySQL的五个考虑因素。

正方:继续使用MySQL

1. MySQL上的投资和创新比以往更多了

开源社区的传统认识是Oracle需要MySQL是为了减少对于他们的关系型数据库业务的威胁。 如果微软是被谴责的对象,那么这种谴责是对的,但这里是Oracle。 它的旗舰级数据库显然要高级得多,而MySQL做到最好也只能沾到它的一点边。

自从收购以来,Oracle已经扩大了MySQL团队并且给予他们一个更加成熟的开发过程。相比于传统开源项目由分散在这个星球上的人们协作完成,MySQL的开发和计划更多地由Oracle驱动。

在这段时间里,正如一位开发者所说的那样,这家公司已经在使代码更加模块化。这意味着短期的工作,但却有着长期的回报。在MySQL 5.6中,他们拆分了一个MySQL Server中的重要的锁,也就是说,锁开了(the LOCK_open),而这将带来超过一倍的顶级性能提升。

更何况,MySQL的主存储引擎是InnoDB,而Oracle在2005年收购了InnoDB 。这些同样位于Oracle的InnoDB的开发者们,正在为了更好的集成性能和MySQL与Oracle的数据库团队共同工作。

2. MySQL产品依然稳固.

MariaDB和开源倡导者抱怨说:新的代码在MySQL 5.5没有测试用例,一些企业版5.5内的特性是闭源的。这是一个开源纯度的问题,当然,一个所有用户都关心的事情。

而且,自二月份新版本发布以来,MySQL5.6被认为是一个坚实的、性能良好的产品,包含一些新的特性功能。Oracle花了两年时间将这个里程碑版本放到MySQL社区中测试及获取反馈。

MySQL 5.6从之前的4个CPU线程到现在的64 CPU线程,并发连接的数量较之前几乎增加了两倍,体现出来的是读速度4倍的提升,除此之外还有很多的改进需要花段时间来列出。

数据库集群和复制组的主席Robert Hodges说:他对MySQL的活力毫不质疑,他甚至还遇到一个担忧Mysql会被 Oracle毁掉的经理人,现在的情况是 Oracle正在将MySQL变成一个企业级的数据库管理系统。

3. MySQL被设计着眼于Web开发、云计算及大数据

Oracle在计算发展趋势上没有瞎,并把重点放在网络,云计算和大数据等项目上。侧重点在MySQL和MySQL cluster上,旨在提供伸缩扩展的高性能、高可用性、自愈性和数据的完整性、配置、监控及资源管理、开发的敏捷性和安全性等方面的改进。

为了支持云服务,MySQL通过GTIDs(全球的的交易标识符)这个新特性使得复制功能大大增强。 GTIDs使主从服务器之间的复制进度跟踪和变得简单,可以更容易的从故障中恢复,同时提供灵活配置和多层复写的持续管理。

2013四月,Oracle宣布发布Hadoop的MySQL插件。该插件实现了MySQL到Hadoop/Hive/HDFS间事件发生时的复制,补充了现有的基于批处理的Apache Sqoop连接。

诺基亚是在大数据环境拥抱MySQL的第一个公司,它运维着一个集中的PB级别的Hadoop集群,这个集群和规模100TB的Teradata企业级数据仓库关联着,大量的Oracle和MySQL数据节点及可视化技术使诺基亚世界各地60000+的用户使用大规模数据存储。而MariaDB呢,好像找不到大数据相关的任何事情。

4.MySQL企业版

MySQL企业版在甲骨文收购之前就推出了,但甲骨文已经显着提高了产品。5.6版增加了高可用性功能,如复制,Oracle VM模板,DRBD,甲骨文的Solaris集群,MySQL的Windows故障转移。它还引入了新的方法为新的和现有的应用程序执行基于策略的合规审计。

还有的企业监控器,它持续监控你的数据库,并提供给您最佳实践来实施。它还提供了查询分析器来监视应用程序的性能和Workbench,它提供了数据建模,SQL开发,服务器配置,用户管理和综合管理工具。

5. 现在较之前有更多的MySQL项目

在MySQL AB被收购之前,它在在25个国家有400名员工,其中有70%在家里办公。是否在一定要在一个地方工作一直存在争议。雅虎首席执行官Marissa Mayer说:她结束了在雅虎远程工作的允许,做事情需要合作,即同一建筑物里。

一位Oracle的MySQL架构师在自己的博客上说,Oracle已经变了,整个团队协同工作,尽管有些在红木海岸的巨塔、加利福尼亚或其他的地方,但都在为MySQL特定的项目工作。整个项目组在集群上工作,其中一个工作组负责可管理性,一个优化团队致力于数据库算法的优化,另一个团队解决复制(至关重要云、大数据等),整个团队使项目更具扩展性。

反方:放弃使用MySQL

1. MySQL不像其他关系数据库管理系统般成熟.

MySQL开始时并不是作为一个RDBMS,但后来改变了方向包括进了更多的功能。随着时间的发展,一些成熟的RDBMS被认为比MySQL具有更丰富的功能。如果你想要一个功能丰富的数据库,你可以试一下PostgreSQL或闭源的选项,如Oracle或微软的SQL Server。

PostgreSQL的贡献者Selena Deckelmann说Postgres的被视为Web开发者对关系数据库有需求的新项目的正确选择。“用JSON数据类型和PLV8,Postgres可能成为NoSQL的默认选择”,她说。

2. MySQL是开源的…但只是有些而已

传统来说,MySQL是一个开源数据库,但是在实践中已经不是那种感觉了。在Oracle的大伞下,MySQL现在有专有的、闭源模块。“MySQL看上去仍然很活跃,但是Oracle却陷入开发进程之中,拒绝发布bug的测试用例,MySQL的安全补丁在代码上严格控制,将大量的开源开发人员分配到新绿洲。”Paula Rooney在ZDNet里解释说:是Oracle把MySQL捐献给Apache的时候了吗?

除Mysql之外没有其他开源方案可选了吗,不是的。MariaDB是MySQL的一个分支,仍然是“真正的开源”。SkySQL和Monty Program Ab(MariaDB的合作公司)在今年年初合并了,声明如下:“MariaDB的所有代码都在GPL,LPGL或BSD协议下面发行,MariaDB没有如MySQL Enterprise Edition里的那些闭源模块。事实上,所有MySQL 5.5 Enterprise Edition里的闭源特性都可以在MariaDB开源版本里找到。”

3. MySQL性能方面的缩放性不如其竞争对手

MariaDB的官方博客的提供了MySQL、MariaDB最新版本的详细对比测试,虽然结果很接近,但MariaDB胜出。

PostgreSQL的贡献者Selena Deckelmann说:Heroku Postgres因为几个原因使它更具吸引力,其中包括缩放性。“可以说他们已经运维了最大的数据库托管环境,可以自动处理应用程序的缩放,支持节点冷添加可以非常方便容易的尝试新特性”,她这样说,另外,她补充道:“他们刚宣布支持PLV8,允许你在数据库中运行JavaScript而且能更好地利用在9.2及更高版本中可用的JSON数据类型。”

4. MySQL为Oracle拥有而不是社区

MySQL被甲骨文收购后没有显著的方面改变,但Oracle仍拥有它,这使得一些开发者很紧张。“也许,最糟糕的是,开发社区工作者和在Oracle的MySQL开发者一起工作是不可能的,”迈克尔“蒙蒂”纽斯,MySQL和MariaDB创始人这样说。

纽斯指出,Oracle不接受补丁或提供一个未来的路线图。“与MySQL开发者谈论如何实现或当前代码如何运行,这没门”,他说。如果一个开源社区开发的数据库对你很重要的话,纽斯推荐MariaDB(废话!)因为它是建立在MySQL之上的。而且它提供了更多的功能、速度和稳定性,安全问题更少。

5. 可选的方案越来越多

在2013年6月的波士顿峰会上,Red Hat宣布和MySQL分道扬镳,取而代之的是红帽企业版和MariaDB上了同一条船。Fedora已经宣布将在Fedora 19切换到MariaDB分支。Slackware Linux宣布在2013年3月将MySQL切换到MariaDB,而且OpenSUSE在2013年1月也作出了类似的声明。

不止在Linux阵营,2013年4月,Wikimedia基金会宣布全球第七大受欢迎网站Wikipedia正在切换至MariaDB。在声明中,Wikimedia基金会站点的架构师Asher Feldman解释称,MariaDB的优化及增强Percona的XtraDB功能设置是切换的原因。“同样重要的是,作为自由文化运动的支持者,维基基金会更倾向于自由软件项目,那些在免费及企业版间没有授权及分支代码的项目。”他又补充到,“我们欢迎并支持MariaDB 基金会作为一个非盈利组织,尤其是在自由、开放以及MySQL相关的社区方面。”科技记者Steven J. Vaughan-Nichols在2012年底提到,不管你对Oracle或开源与专有软件的比较持什么看法,不管你正在使用的是Linux、Apache、MySQL、PHP/Python/Perl(LAMP)的什么组合,MariaDB在世界最繁忙的Web站点中的优良表现会一步步吸引着你的注意力。

那么大数据呢,技术娴熟的公司知道,MySQL的忠实用户清楚么? MySQL是不再是数据库解决方案小池塘里唯一的大鱼了,相反,MySQL正面临着Oracle免费版的挑战,真正的开源后裔MariaDB、日益流行的PostgreSQL关系型数据库以及日益增长的NoSQL市场,如果你还没换掉MySQL,那现在有充足的理由重新考虑了。

本文来自于OSChina翻译,TechTarget数据库网站进行了整理,原文链接如下:

http://blog.smartbear.com/open-source/5-reasons-its-time-to-ditch-mysql/

http://blog.smartbear.com/open-source/5-reasons-to-stick-with-mysql/

 

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

孙瑞
孙瑞

相关推荐