范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

我在MySQL的那些年(一)

  | 作者 赖铮(Allen Lai)前MySQL官方团队成员,专注数据库内核开发近二十年,先后就职于达梦,Teradata,北大方正以及MySQL InnoDB存储引擎团队,是达梦数据库内核,方正XML数据库,以及MySQL InnoDB的GIS支持,透明加密功能的主要开发者。现任腾讯TEG云架构平台部数据库团队专家工程师,负责腾讯云MySQL数据库内核的研发。
  Part1 相遇
  2012年的春天,我正在张江的一栋橙黄色的大楼里,窗外的阳光很好,我跟我的小伙伴们正在一起奋力地敲打着键盘,随着一阵轻柔的电话铃响起,手机屏幕上显示出一个陌生的号码,"是不是又是骚扰电话?"没管他,我接着做自己的事情。但是手机一直在震动着,好像催促着我,我拿起电话接通,那头传来一个非常轻柔而且职业化的女声,"您好,我是Oracle的招聘顾问Amy,请问您现在方便吗…"。
  我的职业生涯从此与MySQL发生了交集。
  Amy告诉我MySQL InnoDB团队有意在中国招聘合适的数据库内核工程师,问我有没有兴趣加入。MySQL是什么,the world’s most popular open source database,邀请我加入?我想都没想就回答她:"当然有,而且兴趣很大!"
  Amy是个非常专业的HR,非常有效率的安排了我后面的面试事宜,怀着一丝忐忑和兴奋,我开始了进入MySQL团队的面试。
  面试第一轮:InnoDB团队manager,Calvin。Calvin是数据库领域的专家,早年中科大毕业出国的那批牛人之一(后续的文章我会专门介绍MySQL的牛人们)。
  面试第二轮:InnoDB性能优化专家Innam,Innam是缓冲池性能优化的作者。
  面试第三轮:InnoDB大神Marko。Marko是InnoDB创始团队成员之一,存储引擎技术的大神级专家。
  面试第四轮:InnoDB架构师Jimmy。Jimmy也是数据库内核的全能型专家,而且是之前是sybase内核团队的老大。
  完整的一套流程走下来,其实MySQL的面试并没有想象中的那么多规则和高难度,前后4轮,基本都是聊天,主要围绕以前做过的事情和对数据库内核的理解,在面试过程中,让我印象比较深(比较有趣)的是三件事:
  一个是Innam的口音实在太重,加上从遥远的加拿大打过来,我的英语听力也的确水平不高,所以好多问题都没听懂,当时真的是慌得一批。
  另外一个是Marko用google talk问了一个如何发现事务死锁的问题,他的打字速度超级快,以至于我认为对面是个打字机器,直到见到他真人才发现,他就是一台没有感情的程序机器(其实,Marko还是很有意思的一个人,后面我会介绍他的一些趣事)。
  最后,和Jimmy的面试是在一个南京西路的咖啡厅里面进行的,两个人似曾相识一般聊了很久,Jimmy是特别赞的一个人,很有亲和力。整个面试的流程总体感觉比较轻松,我也没有刻意准备,或许真的是幸运吧。
  Part2 团队
  就传统的软件企业来说,MySQL的团队架构相对比较扁平化,层级很少,像我这样的基础员工,离Oracle最大的老板Larry Ellison也就隔了五层。这里面的原因主要是Oracle收购MySQL后的很长一段时间里,基本保留了MySQL团队的原有架构和人员,只是做了一些简单接入。
  整个MySQL分为好几个大的团队,有MySQL kernel,MySQL replication和MySQL NDB等等,这些大的团队里面又细分为若干小的团队,比如:MySQL kernel团队里面又分为优化器,server层,InnoDB和QA等。
  当时,我所在的InnoDB团队里有base在美国的Calvin,Kevin,Jimmy,芬兰的Marko,澳大利亚的Sunny,加拿大的Innam,Michael,瑞典的Mattias,印度的Satya,保加利亚的Vasil,再加上中国的我,一共只有十一个人,却来自八个不同的国家,是一个完全全球化的研发团队。团队里的每一个人都是经验丰富的数据库内核程序员,比如:Marko是2003年就加入InnoDB的资历最深的大神,Sunny是日后的InnoDB manager,Kevin也是曾经参与过Falcon存储引擎开发的老将,Jimmy曾经领导过Sybase的研发团队等等。可以跟那么多大佬一起工作,实在是一件幸运的事情。
  2013 Team meeting in Shanghai
  右起:Jimmy,Yasufumi, Allen, Kevin, Marko, Shaohua, Mattias, Satya, Sunny, Vasil,Aditya, ??, Annamalai, Bin, Michael, ??, Krunal…
  Part3 工作
  在InnoDB工作,是一件非常开心的事情,因为可以在家上班,这一点说出来相信就有很多人羡慕了,而这对于一个每天需要接送孩子的家长(我)来说,更是非常难得的福利,不仅可以按照自己的节奏分配工作和生活的时间,另外也节省了大量不必要的通勤时间,要知道,去一次Oracle在上海的办公室,来回要两个多小时的时间。
  由于是一个全球化的团队,而且,成员也比较有经验,所以,大家的工作方式也很特别。基本上是每个人都专注于自己的工作,相对比较独立,需要合作的时候,通过pigeon、邮件或电话沟通。每周会开一次周会,大家各自汇报自己的工作进展情况,并进行讨论。
  除了周会,我们每年还会组织一次team meeting,大家从全球各地汇聚到一起,总结上年的工作,规划明年的目标,谈谈理想,聊聊人生。
  在MySQL,研发的流程非常规范。以一个bug修复为例,大致要经历以下几个步骤:
  首先,需要根据bug report来分析并复现bug,然后找到修复方法,经过和5级大佬讨论后,确定修复方案并通过bzr创建新的代码分支。
  编码完成后,还需要创建对应的MTR test case,并和修复代码一起,放到reviewboard上面请大佬review。Review的过程可能会持续好几轮,因为像Marko这样的大神review的时候非常严谨,不会放过任何一个出问题的细节。
  Review完成后,需要把要提交的代码放到测试集群上面去测试。这个自动化测试系统非常强劲,它会同时在多平台上面编译好debug和release版本,再并行测试。
  测试完成,确认没有问题后代码才能最终被合并到主干。
  我的第一个提交
  以上只是一个简单的bug修复过程,而对于更为复杂的特性开发,步骤还会包括前期的创建任务worklog,并在worklog里面相应的填写HLD(High Level Design),LLD(Low Level Design)等设计内容,并且开发原型等。
  我做的check空间索引的特性worklog
  在InnoDB工作的六年时间里,我一共做了461次提交,做过的主要特性包括,InnoDB支持空间索引,透明加密,新的数据字典等等,以下是其中一些worklog的列表:
  WL#6968 InnoDB GIS: R-tree index support
  WL#6455 InnoDB: GEOMETRY datatypes support
  WL#6745 InnoDB GIS: support DML operation for InnoDB R-tree Index
  WL#7740 InnoDB GIS: Enhance Check Table for InnoDB Spatial index
  WL#8548 InnoDB: Transparent data encryption
  WL#9290 InnoDB: Support Transparent Data Encryption for Redo Log
  WL#9289 InnoDB: Support Transparent Data Encryption for Undo Tablespaces
  WL#9531 InnoDB_New_DD: Enable table encryption and transparent compression
  WL#9535. InnoDB_New_DD: Remove InnoDB system table and modify the view of their I_S counterparts
  WL#9537 InnoDB_New_DD: Support InnoDB table import/export for new DD
  在这六年里,自己感觉收获了很多很多,体验到了MySQL这样一个开源的数据库软件产品是如何进行研发的整个过程,也了解了一个成熟的研发体系和国际化团队是如何运作的。与国外大神们一起工作,不仅仅是学习到了知识和技能,也从他们身上发现了一些与我们完全不一样的工作,生活,乃至思维方式,这对我来说也是一种很新奇的体验。
  Part4 离开
  随着互联网公司的爆发式崛起,以及MySQL生态链的迅速发展,MySQL团队的很多成员获得了更好的发展机会而逐渐离开。而我也开始了和腾讯云数据库CDB内核TXSQL的故事。
  巧的是,就在我离开MySQL不到一年,Oracle宣布关闭中国研发中心。对于Oracle来说,面对着诸如亚马逊,阿里,腾讯的强势冲击以及去O的浪潮,它将经历一段艰难的转型期。而对于MySQL来说,在可预见的未来依旧会是the world’s most popular open source database,身为曾经的MySQL人,我也会在腾讯继续助力MySQL的发展,通过腾讯云MySQL的内核TXSQL为MySQL生态链继续贡献自己的力量。
  PS:在后续的系列文章里,我将会陆续跟大家分享一些跟MySQL相关的有意思的事情,让大家更了解MySQL和它的腾讯版本TXSQL,希望大家喜欢。

你也在动不动就吼吼吼吼吼吼孩子吗这个令人焦虑的时代,你是不是也动不动就原地爆炸一天晚上,孩子我们玩的高高兴兴的回家了回到家我叫着女儿去洗漱,女儿说要拉屎。女儿拉屎有个习惯就是看书,没有注意到我先生也洗刷了。等她拉专注力好的孩子是赢家,在家陪娃玩出更强的专注力,方法简单实用一位网友求助,说幼儿园老师说她家孩子上课坐不住,老走神,专注力不行,让家长要重视,不然以后上了小学就更麻烦。这位网友说,自己非常焦虑,不知如何提高孩子的专注力。其实,专注力不好是很怀孕的女人在家能做什么兼职?在家做兼职,首先得看自己适合哪方面,其次是市场需要哪方面,最次是合理的花钱就是省钱。最推荐的当然是曾经从事过的工作,这样在兼职的同时,还能锻炼自身业务水平,相当于一举两得。比如你从为什么有些人,不这么努力成绩却很好,而有些人,努力学,成绩却不好?谢邀。这有很多方面因素。第一学习要讲天分的,如果学生对学习有天分,上课听得明白老师讲课,他可以取得很好的成绩。反之,学生对学习没有天分,就很难取得好成绩。第二教育资源,如果学生家庭初生婴儿护理八大注意事项刚出生的宝宝比较娇弱,需要我们用心呵护,新手父母需要注意以下事项一室内要空气清新,保持通风良好,冷天白天也要开一两个小时窗户透气,卧室门不要长关着,注意换些新鲜空气,同时还要注意室孩子上初中以后,总担心她学习不够优异,很焦虑怎么办?答家长要控制自己的焦虑情绪,否则会把这种焦虑传导给孩子,无形之中会给孩子施加压力,反而不利于孩子的学习,孩子的成绩能否优异取决于她的基础好不好,智力能不能跟得上,本人对学习的上进心脾胃不好舌头有裂纹舌根舌苔白厚有齿痕,该怎么调理?舌头有裂纹舌根舌苔白厚有齿痕,即医学上的齿痕舌,临床上是比较常见的,根据中医理论,多考虑是脾胃虚弱,脾气虚,脾虚湿盛或者是脾肾阳虚引起的临床表现。脾主运化,主要是运化水湿,当脾胃虚小宝宝刚出生,为何就要足跟采血?小宝宝刚出生,为何就要足跟采血?我家两个宝宝都采足跟血了,采血时特别隐秘,还要到专门的小屋子里,关上门,不让家属进,只听到孩子在里面嗷嗷大哭,出来眼睛红红肿肿的,累得睡着了。有很多以趣味方式发现自己的天赋人人有天赋比利时卢克德沃夫布伦希尔德博姆斯文比利时艾玛蒂森绘花山文艺出版社广州日报讯(全媒体记者孙珺)人人有天赋通过一场天赋班级总决赛,带领读者发现一个个普通孩子身上的天赋。比如在两个男孩的家庭将来更易遭遇三难,娃年纪越大,父母感受越深随着二胎三胎的逐渐开放了,现在两个男孩儿的家庭也越来越普遍。但是在生活中,作为很多二胎男孩的家庭,却都在叫苦不迭。他们觉得二男生活太难了,以后更是苦不堪言。的确,因为当下家庭中男女宝宝7个月作息时间好习惯想转成自然,须源于自然并好于自然宝宝7个月后形成的作息时间习惯700早起吃吃800排毒养颜830早教930辅食1000沐浴抚触1030小睡1200阳光浴1300吃吃1400室外活动1430睡睡1600吃吃1700
教育孩子时,该不该揍,怎么把握度虽然说棍棒底下出孝子,但作为一名儿科医生,我并不提倡。孩子的教育问题,并不是靠打骂来改正的,孩子犯错要管,但是不应该揍,怎么管都应该要掌握一个尺寸!我们是成人,在面临调皮捣蛋的孩子亲子共读,陪伴成长本文来自于投稿,作者禚洪涛。亲子共读,现在许多学校和有关机构比较流行,经常组织一些类似的活动,得到了学生和家长的认可。当然,也有人认为作用不大。从我个人的经验来说,亲子共读的裨益不家庭陪伴是影响孩子智商的重要一环一个人的智商发育,和他幼儿时期父母的陪伴有非常大的关联。智力在大脑中的形式现代脑科学指出,一个人的智力和他的脑容量并没有什么关系,和他的脑沟回的表面积有非常大的联系。这些大脑沟回,湖南5岁女孩练舞致截瘫,父母拒买轮椅帮其康复,1年后已能奔跑现在很多家庭的孩子都是集万般宠爱于一身,家长们也更加注重孩子全面发展,家庭条件较好的家长会给孩子报兴趣班,从小培养爱好,比如,跳舞。有人认为学习跳舞就是要趁早,孩子年龄小,身体比较孩子心里有事您知道吗?来源北京晚报以前成绩门门优秀,现在却突然对任何事提不起兴趣曾经对父母无话不谈,现在却总把父母拒之门外乖巧听话的孩子,手腕上却突然多了几道伤痕近年来青少年心理健康问题呈上升发展趋势,让宝贝参加六一节目表演吧,好处可太多了孩子们最喜欢的六一儿童节就要来啦,相信在这段时间,幼儿园正在紧锣密鼓地准备各种六一节目。作为家长,你应该鼓励孩子积极参与千万别觉得无所谓,要知道让孩子参与其中,对ta的成长大有好处英语启蒙这么重要,0基础家长该从何下手?英语里有句话叫GoodbeginningHalfdone!即好的开始就等于成功了一半!英语语言的启蒙确实很重要,正所谓学前决定小学小学决定初中初中决定高中高中决定大学大学决定人生等妈妈平时打扮得漂亮对孩子有什么影响?妈妈打扮漂亮,对我们的孩子当然有影响了。我家的是个男孩子,我家孩子不怎么爱干净,我总说他,可是说教跟本起不了多大的作用,孩子除了不回答你,也就只有站在那看你风起云涌了。我以前不怎么六一儿童节表演要收费,你会交费让孩子参加吗?六一儿童节表演要收费,我当然会让孩子们参加啦!我的小Y头,今天幼儿园中班,前段时间幼儿园以办六一活动办由,向我们家长们收取12O元的演出服装费。老师在群里面说,费用用含租用场地,服孩子学习英语会遇到哪些困难呢?一是单词的记忆。有的孩子掌握的单词量少,反映在听写上写不了几个,或者干脆就不会写,拼写形式不对,词形与意思无法对应,原因可能是没有掌握英语单词的拼写规律,死记硬背反而吃力不讨好。如老婆要生孩子了,待产包都要准备什么?深圳宝安妇幼待产的准妈妈准爸爸可以参考下1。饮料不要买红牛!医院不允许,推荐脉动2。纸巾不要买刀纸,用不上要带上纸巾和湿纸巾,妈妈和宝宝都会用到3。产褥垫按医院的尺寸去买,不要随便