让人敬佩的白发程序员——MySQL/MariaDB之父Monty阿里交流会

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 承蒙中国MySQL用户组(CMUG, China MySQL User Group)这次邀请了MySQL之父Monty进行一次中国行活动,作为CMUG的主席团成员和MariaDB基金会的Maria Captains(基金会的Committor),也利用“职务之便”顺手将Monty邀请到了阿里进行一次

1

                         (MySQL之父—— Ulf Michael “Monty” Widenius)

承蒙中国MySQL用户组(CMUG, China MySQL User Group)这次邀请了MySQL之父Monty进行一次中国行活动,作为CMUG的主席团成员和MariaDB基金会的Maria Captains(基金会的Committor),也利用“职务之便”顺手将Monty邀请到了阿里进行一次分享。

Monty是MySQL第一行代码的作者,后来与两位好友一起成立了MySQL AB,开始正式商业化运作MySQL,出任CTO,一直到MySQL AB被卖给Sun。之后Monty没有加入Sun,而是离职创立了Monty Program AB,接过MySQL的代码继续开发新的分支——MariaDB,自己担任CEO。
在2014年,Monty Program AB与SkySQL AB合并,成立了MariaDB Corporation,开始商业化运作MariaDB,Monty继续担任新公司的CTO。同时他还兼任MariaDB基金会的CTO。
2
现场同学座无虚席,都想一睹MySQL创始人的风采。
screenshot
Monty分享了MySQL的整个发展历史,从他在34年前开始写第一行代码,到后来如何决定将MySQL开源,以及MySQL如何变得越来越普及,再到MySQL AB被Sun收购,最后又被卖给Oracle,分享了许多我们所不知道的内部的故事和他们当时的思考。

Monty还分享了MySQL,MaxDB,MariaDB这些项目的名称的由来,My是他的大女儿的名字,Max是他儿子的名字,Maria是他小女儿的名字,以及MySQL的正确发音,Monty给出了标准答案/maɪ es kjuː ɛl/,或者是/mjuː es kjuː ɛl /,因为My是一个芬兰语名字,所以也可以用后者芬兰语发音。

Monty给我们展示了他早年怎么开始学习计算机以及开始编程的。从最古老的计算器——德州机器Ti-58,再到当民工搬砖在赫尔辛基修路赚钱买了最早的个人计算机ABC-80,再升级到Sun SPRAC开始正式进行了MySQL早起的开发,后来跟好友成立MySQL AB。

老爷子一辈子就在做MySQL相关的代码,今年他54岁了,还要亲自参与写代码,并且负责大部分Code Review工作,谁说程序员只能做到30的。我与Monty在MariaDB基金会合作Review的时候,Monty最常说的话就是:”That’s easy, one day” “That’s easy, 15 mins”,诸如此类,无时无刻不在跪拜老爷子对这些代码真的是熟到全在脑子里的地步。

至于为什么创立MariaDB,Monty告诉我们,他需要一个能永远保持开源的MySQL替代品,因此他吸取了MySQL AB的教训,把MariaDB的版权授予了MariaDB基金会,这是一个NPO(非营利性组织),依靠捐赠运营,以保证MariaDB永远开源,而不会因为MariaDB Corporation的兴衰或者被收购而导致MariaDB的版权被收购或流失。同时MariaDB Corporation通过售卖MariaDB/MySQL的服务来赚钱,为MariaDB基金会提供MariaDB的持续开发资源。

然后作为一个技术人,Monty聊了一下MariaDB对MySQL原版的改进,以及他吸收了所有的MySQL AB原厂工程师而具备的更强的开发能力和对MySQL源码更好的理解,例如在高并发场景下,MariaDB通过简单的代码优化,就远远超过了MySQL 5.7及其复杂的修改所获得的收益。以及MariaDB实现了真正的完全并行的备库多线程复制,可以让备库的性能超越主库,避免延迟。

最后,Monty还分享了MariaDB未来计划的新功能,以及正在进行的开发工作,如何从MySQL迁移到MariaDB,以及他们之间的兼容性问题。

Monty的演讲结束后,同学们踊跃提问,也问了一些有意思的问题,例如:

  • 作为MySQL写第一行代码的人,第一行写的是什么代码? (You created the MySQL, and you wrote the first line of MySQL code, what’s the first line code?)
    Monty:因为MySQL的第一版其实是BASIC开发的,所以第一行就是BASIC的注释 “REM”。
  • MySQL的设计思路和设计理念是什么?(MySQL’s design ideas? What's the principles of MySQL design and architecture?)
    Monty:因为MySQL是在很差的机器上开发的,所以从MySQL一开始设计,就很注意性能问题,另一个就是简单,版本迭代要很方便,同样也是因为曾经的计算机编程很不方便。
  • MySQL数据区别其它数据库的一点是插件式的存储引擎的设计,想问问这点的理论来源?”(MySQL has a special feature, which is the storage engine plugin, it’s great. Why you decide to add the engine plugin to support many engines, and What’s the source of the theory? )
    Monty:其实MySQL最早只有一个商业数据库引擎,但是后来那家公司倒闭了,他们没办法继续使用这个引擎,所以他们开发了MyISAM引擎,认识很多用户已经在用之前的引擎,为了升级方便,所以就开发了Handler API,把最简单的操作设计成API,然后就有了Storage Engine,MySQL同时包含那个商业引擎和MyISAM,用户可以直接在MySQL内部把他们转换。
  • MySQL在大数据处理这一块有什么规划没? 怎样看OLTP和OLAP融合?或者说传统数据库怎样应对现在日益增多的OLAP类任务。 (Does MySQL/MariaDB consider it should support the OLAP? Because there are more and more OLAP requirements in the traditional database, how do you think mix the OLTP and OLAP in the same database?)
    Monty:MariaDB已经认识到了这一点,所以MariaDB收购了InfiniDB,并且在此基础上开发了ColumnStore,支持列存储的引擎。但是目前ColumnStore跟Server层耦合太紧密,所以要单独为它出一个二进制包,但是这不是最终状态,MariaDB会逐步把ColumnStore变成一个普通的引擎,跟InnoDB一样,可以共享一套MariaDB Server代码,到时候OLTP和OLAP就可以在MariaDB里面共存。
  • 如果MariaDB用的人多了,有人收购还会不会再卖?(If MariaDB’s users become more and more, will you want to sell MariaDB again? like MySQL.)
    Monty:为了避免重蹈覆辙,MariaDB Server的版权在MariaDB基金会,这是一个NPO,它无法被收购,这保证了MariaDB永远免费和开源。但是MariaDB Corporation是一家公司,它只是为MariaDB基金会提供开发,所以有一天它可能被收购,但是这不影响MariaDB的免费和开源。

会后我也私下问了Monty几个问题

  • Why you want to visit Alibaba, and communicate with our engineers? (为什么你想要来阿里巴巴和工程师们交流分享)
    Monty: Because Alibaba is the one of biggest Open Source and MySQL users in the world. I want to share something about MySQL/MariaDB, and what’s the Open Source to your guys. (因为阿里巴巴是开源软件和MySQL最大的用户之一。我希望给你们分享一些MySQL/MariaDB的故事,以及什么是开源。)
  • How do you think about the Alibaba’s MySQL skill and contribution? (你怎么看阿里巴巴在MySQL方面的能力,以及贡献)
    Monty: You contributed the Multi-Source Replication and Time Machine or Flashback, that’s very useful for MariaDB, I think your team is intelligent.(你贡献的[多源复制](

https://mariadb.com/kb/en/mariadb/multi-source-replication/ )和闪回功能,对MariaDB很有用,因此我觉得你的团队是很有能力的)

  • How do you think about Alibaba’s contribution in Open Source?(你怎么看阿里巴巴对开源世界的贡献)
    Monty: Alibaba has open source some software like Tengine, and AliMySQL soon, but I think Alibaba can do more. (如你所说,阿里巴巴已经开源了一些软件,例如Tegnine,还有即将开源AliMySQL)

彭立勋 阿里云高级技术专家 供稿

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5月前
|
存储 关系型数据库 MySQL
【MySQL入门到精通-黑马程序员】MySQL基础篇-约束
e.g.:ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY(外键字段) REFERENCES 主表名(主表字段名) ON UPDATE CASCADE ON DELETE CASCADE;
34 0
|
5月前
|
SQL 关系型数据库 MySQL
【MySQL入门到精通-黑马程序员】MySQL基础篇-函数
SELECT 函数(参数); 注:SUBSTRING(str,start,len);中str的索引从1开始,即start最小为1。
32 0
【MySQL入门到精通-黑马程序员】MySQL基础篇-函数
|
5月前
|
SQL 关系型数据库 MySQL
【MySQL入门到精通-黑马程序员】MySQL基础篇-DCL
DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。
31 0
|
4月前
|
网络协议 Java 关系型数据库
年薪50W阿里P7架构师必备知识:并发+JVM+多线程+Netty+MySQL
线程基础、线程之间的共享和协作一 线程基础、线程之间的共享和协作二 线程的并发工具类 线程的并发工具类、原子操作CAS 显式锁和AQS一 显式锁和AQS二 并发容器一 并发容器二 并发容器三、线程池一 线程池二、并发安全一
|
3月前
|
Cloud Native 关系型数据库 分布式数据库
阿里云原生数据库 PolarDB MySQL:云原生时代的数据库新篇章
阿里云原生数据库 PolarDB MySQL,它是阿里云自主研发的下一代云原生关系型数据库。PolarDB具有多主多写、多活容灾、HTAP等特性,交易性能和存储容量均表现出色。此外,PolarDB MySQL Serverless具有动态弹性升降资源和全局一致性等特性,能够适应高吞吐写入和高并发业务场景。本文详细分析了PolarDB的性能、稳定性和可扩展性,以及它在成本、性能和稳定性方面的优势。PolarDB为企业提供了高效、可靠的数据库解决方案,是值得考虑的选择。
300 0
|
3月前
|
存储 关系型数据库 MySQL
败给“MySQL”的33天,我重振旗鼓,四面拿下阿里淘系offer
自己投了几家头部互联网公司,阿里是其中之一,也是我的期望公司。既然目标定下来了,自然是要竭尽全力去实现的,年前面试了阿里一波,但最终是败给了MySQL,好几个问题都答得不太理想,所以结果也想象得到,挂得很快。但今年由于疫情的缘故,各大互联网公司也受到了一些阻力,不过也趁着这空闲之际,我重整旗鼓,在败给“MySQL”的第33天,四面拿下了阿里淘系offer!
|
3月前
|
存储 关系型数据库 MySQL
最全的MySQL总结,助你向阿里“开炮”(面试题+笔记+思维图)
作为一名编程人员,对MySQL一定不会陌生,尤其是互联网行业,对MySQL的使用是比较多的。对于求职者来说,MySQL又是面试中一定会问到的重点,很多人拥有大厂梦,却因为MySQL败下阵来。实际上,MySQL并不难,今天这份最全的MySQL总结,助你向阿里“开炮”,拿下offer没啥问题。
|
4月前
|
关系型数据库 MySQL 大数据
程序员小sister的烦恼_快速上手大数据ETL神器Kettle(xls导入mysql)
程序员小sister的烦恼_快速上手大数据ETL神器Kettle(xls导入mysql)
44 0
|
4月前
|
存储 关系型数据库 MySQL
面试阿里(P8)竟被MySQL难倒,奋发图强二次面试斩获阿里offer
牛顿说过“无论做什么事情,只要肯努力奋斗,是没有不成功的”。我也一直把这句话当做自己的座右铭,这句箴言在今年也彻底在“我”身上实现了。
|
4月前
|
SQL 关系型数据库 MySQL
完美,阿里DBA骨干团队编写的792页MySQL调优笔记真香
这个世界是由问题组成的,理想的状态和实际状态之间的差异造成了问题。国家领导解决人民生活幸福的大问题,公司的总经理解决盈利的问题,而本书只想解决MySQL数据库性能这么一一个“小问题”。

相关产品

  • 云数据库 RDS MySQL 版
  • 推荐镜像

    更多