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


(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。

现场同学座无虚席,都想一睹MySQL创始人的风采。

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.(你贡献的多源复制闪回功能,对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)

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

时间: 2024-08-31 08:35:36

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

只有喜欢研究编程的人才能成为 10x 程序员

10x(10 倍效率)程序员的概念首次被佛瑞德·菲利普斯·布鲁克斯二世(布鲁克斯法则的名气)[注1]在其文章<没有银弹>中提出,'在普通设计师(程序员)和优秀设计师(程序员)之间,有着 10 倍多的差异'.这个想法得到了广泛讨论,有时候还被驳斥,多数情况是得到了支持,这种现象不会让人吃惊,因为不可能精确地衡量一名程序员的生产力. 令人悲哀的是,10x 程序员经常被视作粘到屏幕上的瘾君子,在键盘上一刻不停地移动手指.这种画面在科幻电影里或许受欢迎,但是它很难等同于现实. 在我之前的公司,我们需要

爆笑!互联网人诗词大会,程序员都很有才

万水千山总是情,加班加点行不 不行 文章转载自 开源中国社区 [http://www.oschina.net]

程序员是怎样一群人

多年以来,黑程序员一直是一项广大人民群众喜闻乐见的娱乐活动,我们不仅黑程序员,程序员也喜欢自黑,如此一来,大家好像都觉得黑程序员是一项天经地义的事情了,然而事实上,的确是的. 人们对程序员的印象一般来自两个地方,影视作品和段子手,前者宣传的程序员往往很酷,而后者揭露的程序员往往很挫,然而,把一个群体想象的比自己混的差,比把这个群体想象的比自己混的好,要更加容易接受一些.白领们很难接受农民工工资比自己高的多,就是这个道理. 我虽然不算是程序员,但和这个群体也算熟悉,要我说,程序员绝对是这个世界上最

php程序员入门必读

  1.概要:学习任何语言都需要多看.多想.多写.多问!写编程是一种熟能生巧的东西!学习PHP也一样,因为知识就那么多,你看多了就会觉得怎么都一样.     程序员就是炒冷饭的,一遍又一遍.代码多敲几遍就可以闭着眼睛写了,所以企业招聘都会问你写过多少行代码的!程序员最忌讳浮躁,有时候发现一段程序完全找不出错误,仅仅是因为少了或多了一个符号,程序员需要的是细心,粗心的人当不了程序员!     2.php参考手册是必须熟知的,有的新手会问一些很基础的问题,其实手册上面都有,所以建议新手先把手册看了,

程序员诗词大赛开始了,你看过吗?

年少不经事,埋头编程忙. 指键铿锵落,不及细思量. bug千百个,comment无一行. 休言敏捷易,做来断人肠. 这一首来自程序员的程序诗发出后,码农们吟诗的热情就彻底被点燃了,唐诗.宋词.顺口溜.三句半.二人转等版本纷纷涌现...下面为大家汇总了一些比较精彩的段子,欢迎继续补充: ((item)&&(!people)) everything=false; if (tears.setFlowing()) try{Speaker skr=new Speaker();}catch{IOExc

程序员生存定律-打造属于自己的稀缺性

假设说你想在江湖里谋求一定的地位,那么你可以练习独孤九剑成为超一流高手,也可以练习医术,成为绝世神医.这两者在江湖里都是有地位的,也都是稀缺的,一者是因为杀伤力,二者是因为人都有山高水长. 程序员也一样,增值也好,改善表达力也好,最终都要在某种环境下达成一定的稀缺性,这样一个人才有价值.稀缺性同时受两个维度上的力量影响:一个是自身的努力,比如前文所提到的增值和表达力:一个是大环境的变化以及对这种变化的适应.在这一章里主要关注的是后者. 稀缺性可带给你什么 既然稀缺性对个人有如此大的影响,那稀缺性

1987 年浙江考出的第一批 12 个程序员,你们现在哪里

昨天中午,孙先生给 "都市快报" 官方微信留言:1987 年 9 月浙江省进行了第一次计算机程序员水平考试.当时全省有 600 多人报名,400 多人参加考试.最后 7 人通过程序员水平考试.5 人通过高级程序员水平考试.我就是通过考试的程序员之一,现在已经整整 30 年过去了,我想在今年 30 周年的时候,把大家召集起来聚一下,也想了解一下他们 30 年后在从事什么工作. 孙先生真名孙健,62 岁,在昙花庵路家电市场一楼有间蛮大的店面,做音响生意.昨天下午我在店里见到老孙,留着板寸,

(转)程序员真的是吃青春饭的吗?(献给即将进入职场的程序员们)

又有学生问我:程序员真的是吃青春饭的吗?我是不是做到三十岁就该考虑转型了?   我告诉他们:这是中国的记者们用统计数字造下的一个弥天大谎,当我们看到微软集团内的许多白发程序员在兢兢业业地工作的时候,我们又用"观念"来说明中国的程序员吃青春饭的原因.实际上,不仅美国的微软,甲骨文,Adobe,暴雪,在中国的金山,寰宇,腾讯,盛大,都有或者将要有年龄很大的程序员,关键是他们做的东西和那些"挨踢"们不同,他们做的是产品而不是项目.   打个比方:微软为开发win98而雇佣

为什么程序员总被认为是屌丝群体?

本文纯属闲时娱乐,请勿当真,请勿较真. 1. 程序员都很穷吗? 其实,以我的经验来看,相同学历的毕业生的工资里面,程序员的工资绝对前三.但是可惜的是,程序员的主要发展地集中在京沪杭和广州一带,这一带本来就是有钱人的集中地,而且高房价高消费,让程序员那不算低的工资显得微不足道,只能望楼兴叹. 举个例子,比如你在北京开10w的车,那绝对是底层人民啊.你要是在一个二线城市开10w的车,那已经可以说混的不错了.如果是在小县城开10w的车,那你就算是有钱人啊. 解决方案:一线城市打拼,二线城市发展.当然,