mysql之父monty的编程人生( 二 )


2008年1月16日 , SunMicrosystems以高达10亿美元的价格收购MySQL(然而次年Sun又被Oracle收购) 。当时Monty担心MySQL可能会受到Oracle的控制而变得商业化 , 并且如果Oracle一家独大的话 , 可能会引发数据库领域的不良竞争 。于是他发起了一场拯救MySQL的请愿活动 , 并在MySQL闭源前将其分化 , 以其小女儿Maria的名字命名创建了MariaDB 。
mysql之父monty的编程人生
文章图片

文章图片

设计MariaDB的初衷(图源自MariaDB官网)
MariaDB开源数据库可以看做是MySQL的一个分支 , 主要由开源社区维护 , 目的是要完全兼容MySQL , 甚至包括API和命令行 。MariDB推出后 , 不少MySQL的员工都转而投向MariaDB , 甚至是原先使用MySQL的各大公司也将数据库迁移到MariaDB上 , 其中就包括谷歌和维基百科 。Monty表示:“与MySQL相比 , MariaDB更加成熟 , 拥有更大的研发优势 , 并且在安全性修复方面也更加出色 。”直到现在 , Monty依旧亲自参与MariaDB的开发维护 , 可以说他的工作重心都在MariaDB上 。
mysql之父monty的编程人生
文章图片

文章图片

Monty的小女儿Maria(图源自MariaDB官网)
MariaDB , 坚持开源的背后
邹欣:你在创建MariaDB时 , 曾提到要把它打造成第二个MySQL , 并且确保它是开源的 。那么对于数据库而言 , 为什么开源这么重要呢?
Monty:对于任何大型项目来说 , 开源都是非常重要的 。既然要和巨头竞争 , 你就要有和他们一样的工具 。在我看来 , 开源很适合用于软件开发 , 尤其是当公司规模还不大的时候 。这个时候你很难兼顾公司和用户的需求 , 因此需要听取别人的想法 。而开源就意味着可以获得社区的帮助 , 能够了解其他人的观点 。有了开源 , 你可以开发出更好的产品 , 同时产品也能够获得更大的影响力 。
邹欣:不过开源的一大弊端就是声音太多 , 需求不一 , 这种情况下该如何保证数据库能满足大多数人的需求呢?
Monty:要解决这个问题 , 就需要确保数据库足够灵活 , 这样才能满足大多数人的需求 。在这一点上 , MySQL和MariaDB的做法是建立各种性能不一的存储引擎 , 人们可以针对具体需求开发自己的存储引擎 。
事实上 , 对于那些有需求的人来说 , MariaDB依旧是一个优秀的工具 。而对于要求数据库体量较小且运行较快的人来说 , MariaDB同样是一个不错的选择 。在开发MariaDB时 , 我们考虑到了各种可能性 , 使它能够保持良好的性能 。
邹欣:AI技术的发展让人们对数据库的期待发生了转变 , 今天数据库是否能够与AI技术结合 , 从而拥有数据决策能力?
Monty:对于数据库来说 , 最重要的是要处理AI需要的不同结构 。因此我们添加了对JSON的支持 , 用于在MariaDB中支持动态列 。这样人们就可以储存并检索数据 , 同时保留自己想要的格式 。通常AI并不是要创造内容 , 更多的是实现文件自动化 , 这就是我们对于MariaDB所抱的期望 。因此这两者完全是不同的工具集 。
除此之外 , 我们还需要一个良好的环境 , 其中每一个部分都是可替代的 , 要确保自己不被束缚 。一旦有了束缚的存在 , 那么你的应用程序就需要与静态系统相结合 , 这会大大降低灵活性 。我认为对于数据库来说 , 要注意的一点就是 , 要确保数据库容易上手 , 而这恰恰意味着更多的AI技术能够整合到数据库中 。
仍然每天坚持写代码
邹欣:在中国IT行业有这样一种现象 , 认为程序员过了35岁就要转型 , 进入管理层或是其他领域 。对此你怎么看?