当初Sun Microsystems公司即将迎来收购之时,一群曾经参与过著名人气开源数据库MySQL开发的程序员们决定另起炉灶,打造名为MariaDB的新项目。
MariaDB Logo
新项目由Michael “Monty” Widenius定名并领导,这位MySQL项目的原始开发者兼MySQL公司联合创始人放弃甲骨文的招揽,从零开始重新奋斗。在离开Sun公司之后,他在自己的故乡荷兰成立了一家公司——也就是Monty Program AB——借以管理MariaDB项目的开发工作,同时向广大MySQL技术达人敞开怀抱。不久之后,Monty Progam公司就拥有了一个实力强劲的开发团队。
也许大家并不了解,但他们的确一直在废寝忘食地工作。由于甲骨文公司在全面收购Sun资产后对MySQL的开发工作表现出极高热情,导致MariaDB感受到了前所未有的竞争压力。然而优秀的人才在对抗当中力挽狂澜,帮助MariaDB站稳了脚跟。在一份由Network World网站公布的六大开源数据库评测报告中(包括MySQL),我们发现MariaDB赫然成为人气最高的数据库方案。Monty告诉我,MariaDB与MySQL相比拥有约三十人工作年的研发优势,而Monty Program公司也对自家产品的领先性表示认同——尤其是在安全性修复方面。
快速修正是关键
Monty告诉我们,MariaDB开发团队一直在与mitre.org通力合作,希望保障一切安全问题都能被快速发展、上报且拥有完备的细节描述。由于甲骨文公司不再公布安全修复细节,MariaDB团队通常需要对来自MySQL的补丁程序进行逆向工程,借以找出其修复对象。搞清状况之后,这些补丁将被合并起来并为MariaDB提供服务。Monty表示“MariaDB可以被看作是安全性最高的MySQL版本”——这一声明相当大胆。
尽管MariaDB与MySQL两者在新版本公布之前,其安全漏洞的修复细节一般都要受到严格保密,但最近的一次事件令双方在安全应对机制与响应速度上的差异显露无遗。问题甫一曝光,MariaDB就行动起来并在几天之内就利用开放并记录开源补丁完成了修复工作;相比之下,MySQL直接现在(截稿之日)仍然没能搞定这些安全漏洞。
这已经不算什么新鲜事了。甲骨文公司一直在对企业资源优先参与并处理MySQL社区事务的做法抱怨不已,结果当然显而易见:裁撤相关流程转投其它开发项目并延缓修复安全漏洞,而这一切都令项目组与MySQL生态系统间的交流日益恶化。我曾与MySQL与MariaDB双方的外部生态系统合作伙伴进行过对话,而他们都对甲骨文公司的强硬作风表示无奈。
面临如此窘境,上周传出的新闻无疑可算大大的利好消息:MariaDB基金会正式成立,MySQL开源社区也将有望自此步入新的发展阶段。MariaDB——从侧面来看也就是MySQL——终于拥有了专门的机构体系,该基金会的出现将一举扭转发展控制一家掌握的被动现状。
生态系统受到影响
这对MySQL的生态系统又意味着什么?首先,MySQL将借打包与整合之力获得提升。很明显,像MariaDB这样的开放式项目在使用便捷性上要远超过某家企业针对自身业务所打造的数据库方案。在未来,我们很可能看到被囊括在Linux发行版中的MariaDB,同样也可能在LAMP部署中发现它的身影(而且在用MariaDB代替传统MySQL之后,我们仍然可以沿用‘M’这个字母)。
其次,创新的可能性也将大大增加。某位开发人士曾告诉我,MariaDB身上具备一些极具吸引力的发展潜力——支持OLTP、OLAP、以数据为中心的专业处理方案以及高度可扩展的多控制集群。这种多元化的发展方向意味着项目需要接纳来自各个方面的信息与意见,而基金会的成立为开发者提供了一套透明的管理平台,其向所有人开放的基础特性对于整个项目的走向有着非常深远的积极意义。
第三,有效改善项目竞争力。MariaDB最近刚刚公布了一套兼容性极高的客户端库,完全利用LGPL从零开始重新编写、借以替代MySQL及其衍生版本原先所使用的GPL——现在MariaDB与MySQL双方都将由此而受益。正如社区成员Arjen Lenz在评论中所说,这一点对于双重许可问题意义重大。现在商业用户们再也不必为了避免额外的GPL合规性管理需求而忍痛为MySQL购买专有许可了。
将三个因素综合起来看,MariaDB绝对有机会在规模庞大且对手众多的MySQL市场中依靠独特魅力取得竞争优势。Monty告诉我们,MariaDB项目的代码贡献者中已经出现了许多企业巨头的身影,其中包括Facebook、谷歌、Twitter等,而且专为开发者们准备的IRC交流平台上经常有上百人在线。
虽然形势见好,但也并非万事大吉。MySQL生态系统中有那么一部分似乎就完全没受到正面影响:Drizzle项目,其目的是通过重新设计一套更小、更具模块化特性的微内核实现云部署。该项目创始人Brian Aker在Twitter上明确表达了自己对于基金会的不屑一顾,并通过电子邮件宣称自己将保持观望态度。Drizzle项目已经拥有了自己的一套非GPL客户端库——虽然还未能实现完全兼容——而Aker认为MariaDB所使用的JDBC驱动(即Java数据库连接)从某种程度上来说源自Drizzle(其采用BSD许可,而MariaDB则采用LGPL)。
在任何大型技术社区当中,意见分歧都是不可避免的,所以我们倒是无需对这种剑拔弩张的气氛太过在意。相信只要拥有良好的执行力,MariaDB基金会很可能为MySQL社区注入新的活动,并实现又一轮创新与业务增长。要达到这一目标并不简单,但项目中所蕴含的潜力同样极为可观。MySQL已经成为开源历史上的一块重要基石,而MariaDB很可能在未来的发展道路上成为又一座丰碑。