阿里巴巴离职DBA职业生涯总结(2)

发布时间:2012-7-25 22:13    发布者:诸葛孔明
关键词: DBA , 阿里巴巴
上一篇:阿里巴巴离职DBA职业生涯总结(1)

在阿里巴巴遇见最好的 DBA 团队

我不喜欢飘泊的生活,也不喜欢新鲜的城市。只想在我家乡那座著名古都中,像被固化在虎珀中一样去生活。但我的人生却注定要去飘泊,而且,是在三十而立之年,才刚刚开始。千万不要刻意去选择自己的生活,因为你只能猜到开头,却猜不到结果。  

我的第一站是北京,因为有朋友说可以为我介绍工作,但这份工作是 Oracle 讲师。我的技术还没有达到一定水平,还需要提高。这时候去做讲师,实在非我所愿。我的内心的理想目标,是去阿里系的公司:阿里巴巴、淘宝、支付宝。这些公司“大师”级的人物层出不穷,我想也应该是很多 DBA 的目标。但自己投简历过去,成功可能很小,我一向不喜欢自已投简历过去。所以,在 2009 年初,考完 OCM 之后,我就一直想做点东西出来。正好一个朋友找过来,于是我们合作,很快就有了“Oracle 日志挖掘研究版”这个程序。也很快的,阿里巴巴就给我打了电话。  

到阿里面试是很爽的,来回的机票、酒店全部都已经订好,就好像到杭州来个一日游。我是中午到的创业大厦,先被 HR 领到一个大厅里,做了一份笔试卷子,说是 60 分钟,但其实没有人在旁边计时,晚一会儿也无所谓。笔试题难度不高,和网上流传的阿里巴巴笔试题差不多。做完笔试题,就是著名大师 Biti 的面试了。这是第一次见到 Biti,个子不高,但人很精神,说话极有条理。  

Biti 面试时的难度也不高,大家聊的很好,就像朋友闲聊一样。所以,这趟杭州之行,让我觉得很完美,既来杭州旅了一日游,又和一些朋友聊了聊技术。  

本来我计划当天晚上就回去,Biti 面试完,被告知阿里巴巴 B2B 的技术部老大 Andy 想见见我,如果我时间上没有问题,HR 会退掉当天的订好的机票再重新订,当晚住宿的酒店也已经安排好了。  

当时很是受宠若惊,马上告诉 HR 没有问题。  

第二天其实还是有点紧张的,不知道 Andy 会问我什么问题。见到 Andy 后才感觉,Andy 人也很随合。Andy 问了两个问题给我留下很深的印象,一是建立一个数据库层和应用层之间的统一中间层,对下可以支持各种数据库是否有必要。还有一个,是如何拆分一个大数据库为多个数据库。  

第一个问题,我的回答的很中庸,一个可以忽略下层数据库是什么的中间层,对性能会有影响,对开发效率、代码重用率会有提升,搞一个是有必要的,对于特别要求效率地方,仍可以使用老的方式,一般情况下,使用中间层就可以了。我估计这是 Andy 当时正在考虑的问题,但后来阿里巴巴并没有大张旗鼓的搞这么个东西,我想 Andy 最终还是认为搞这个东西意义不大。  

第二个问题,拆分数据库的方法,我曾经主导过一个大库的拆分,要求应用的每张表,都有主键。然后就像 HASH 分区一样,以每个表的主键为准,将数据做个 HASH 运算,分布到多个库中,我直接把我做过这个项目详细说了一下。也是后来我才知道,原来阿里巴巴这边刚刚做过一个大表的拆分,拆分方法和我说的类似。  

上午的面试很快就过去了,我专门让 HR 帮我订晚点的机票,这样,下午有时间去西湖游览一下。  

这次杭州之行,给我的感觉是,杭州不错,面试很愉快,但打车很难。下午在西湖边打车,用了好久。后来才知道,在那个时间点打车,能打到已经是运气了。  

两个月后,我告别待了 10 个月的北京,来到杭州,入职阿里巴巴。  

中国的大型互联网企业,有很多相似之处。比如说一样有入职培训,一样每年有年会,一样的有 Outting,一样的嘴上说一套、底下做一套。比如公司一直在讲诚信,但在出了一些事情之后,从公司发给我们员工的邮件来看,没有看到诚信二字。但这很正常,在我们国家,到我这个年龄,如果还相信公司说的什么或老板说的什么,那脑袋就真有点问题了。  

阿里的入职培训和其他公司一样,讲一讲企业文化,再把人拉到户外做做拓展运动,结束,没有持续性。和我一起参加入职培训的有几十人,半年内有差不多三分一离开公司,一年内大概只剩三分之一留在公司。我和另外两个入职培训时认识的朋友合租一套三室两厅,一年后,他们都走了,只剩我自己独住一大套房子。大家来阿里的目的很简单,渡金。我的室友之一,半年后顺利跳到了 teradata。另一个是做客服的,一年后跳到另一个规模略小的互联网公司,做了客服经理。当然,我到阿里,最大的目的并不是渡金,而是学习。我的目标是成为 Oracle 大师,阿里孕育了哪么多 Oracle 大师,到了阿里,我就和目标接近了。  

但可能是我在面试时忽悠的有点过了头,阿里给了我一个很高的级别:高级数据库专家。这既让我兴奋,又让我感到无比大的压力。在我入职时的 2009 年,整个集团的技术人员,达到这个级别、和这个级别之上的,不过几十人而已。在 B2B,高级专家之上的,只有十几个人。我们 DBA 团队中,只有一个人比我级别高,就是 Biti。这让我的压力,稍微小了点,有什么大事,我前面至少还有 Biti 在扛着。但是,一个月后,Biti 就调到支付宝。我成了阿里巴巴 B2B 级别最高的 DBA。一下子变成了“首席 DBA”,我内心深入无比激动,但是,这也让我无比害怕。  

来到阿里,我对自己的定位是学习、经历,我的目标,是成为技术大师,我从不会改变这个目标。但公司对我的期望,显然不是这样的。但这没有关系,这并不会防碍我学习。  

在阿里的日子过的很快,好像回到了上学时代。每天三点一线,上班、到食堂、下班。DBA 团队是我见过的最好的团队,几位领导对每个人都很负责,诚心实意的为每个人着想,努力为每个人提供发展机会。大家之间没有争抢,没有钩心斗角,只有努力的做好事情。很高兴在这里渡过了快乐的近三年时光。在此,对领导、对团队中每个兄弟表示感谢。阿里的数据库维护水平,自然是没得说的,用一句通俗的话来形容,我就像掉到了水中的海绵,如痴似渴的吸收着养份。  

我到公司时,MySQL 刚刚在公司有第一例非常成功的案例。之后的几年间,公司的 MySQL 团队从无到有,迅速壮大,MySQL 的应用也是遍地开花。再之后 NoSQL 如同凄美的昙花,匆匆一现,却也给公司内 Oracle 的应用带来不小的震动。对于开发,Oracle 有如过街之鼠,几乎人人喊打。之后,一切又都归于平静和理性。NoSQL 出局,MySQL 重点发展,去 Oracle 已成必然。从 2011 年开始,我也面临艰难转型,根据公司情况,我决定转型到 GreePlum 数据仓库。但转型是困难的,几本大部头的书,一看就困。Oracle 是越学越精神,一看 GreePlum 就瞌睡。数次不眠之夜的深思,我决定放弃转型。我知道这对我来说意味着什么,放弃转型,也意味着要放弃这份工作。虽然我很喜欢团队的氛围,我对团队恋恋不舍,但我仍将坚持我的方向。2011年夏天,我开始筹备我的下一份工作,并计划在2012年春节的时候离开。  

阿里巴巴二三事


在阿里,我见识到了 Biti 留下来的管理制度与管理水平。我们的数据库,很少出莫名其妙的问题。按照托尔斯泰的说法,好的数据库个个相似,差的数据库各有各的不同。好的数据库,无外乎性能尚可,有完善的备份恢复和高可用机制、并定期测试,很少奇奇怪怪的问题,绝大多数报错、性能曲线的波动都可以找到原因,等等。差的数据库总有千奇百怪的问题、林林总总的报错、莫明其妙的当机。  

其实,达到阿里数据库的管理水平,DBA 只做了一件事,就是更加关心自己负责的库。  

每次性能曲线的波动,都要找到原因,甚至定位到 SQL。对于新上线的 SQL 语句,进行严格的审查。对于大操作,格外小心。Statspack、AWR 报告,要观注、观注、再观注。基本上也就这些了吧。我把这种管理模式,叫做精细化管理。  

说到这里,我想起了一件事,姥姥家住在一条古老的小巷里,在小巷南口,相隔不远有两家买锅葵(一种面饼)的,但一家门庭冷落,另一家则客流不断。很多人宁愿多花点时间排队,也要买另外一家店的锅葵。有一次,我跟一位住在这块的老表谈起这事,为啥一家店生意清冷,另一家店生意兴隆。我老表很郑重的告诉我,“这就是用的功夫不一样。”我霎时间明白了。  

当然,我见到过很多乙方公司的 DBA,每个人要管几十个库,在这种情况下,根本无暇顾及什么性能指标、AWR 报告,只要数据库不当、只要客户不主动来找就行了。不出事情,哪有什么功夫去看 AWR 报告什么的。至于乙方的这种管理方式,我先称之为粗犷化管理。  
这种粗犷化管理试,也是国情所定,我们无法改变环境,但我们可以改变的,是我们自己。我有一个朋友,初中同学。初中时学习不好,技校毕业。毕业后在工程公司做技工,其实干的活和民工没有差别。在体验到现实的残酷后,他没有被生活磨平楞角,反而越战越勇,真正的奋斗起来。他的目标是考取注册监理师认证,很自然的,这个目标成了很多人茶余饭后的笑料。不是说这个目标多不现实,而是,就算你考上了注册监理师,又能怎样呢?你怎么才能找到第一份监理师的工作呢?就算有证书,谁肯要一个民工做监理师呢?面对嘲笑,我们唯一能做的事,就是努力坚持自己的方向,不要去做无谓的争辨。在干完一天烦重的工作后,他回去还要挑灯夜读。几年的坚持,他终于考上了注册监理师。就在为第一份监理师工作发愁时,机会不期然而至,工程公司的一个朋友将他推荐到另一个公司。虽然干的活和民工没区别,但他是技校毕业,算是技工,底层实践经验丰富,又有了注册监理师证书,他成功的跳到另一个工程公司,成为监理师。轻松完成了从民工到工程师这个华丽的脱变。而且,一切又都是如此的自然而然。两年后,他又跳到北京一家更大规模的公司。公司将他派到新 Jiang,在工地上,他巧遇以前的同事,他们还在顶着风沙,在工地上辛苦的工作。目前,他正在自学英语,他的计划是希望跳到外企。我相信他一定可以成功。  

自助者天必助之,古人的经验之谈,难道都是骗人的吗。  

相信有些乙方的 DBA 也在痛苦中迷茫,如何在粗犷化管理中,实现自己职业生涯的突围。我建议呢,可以选一两个库,以提升自己水平为目标,进行精细化管理。关注这一两个库的细节,你会发现,水平可以更快的增加。  

在阿里,我的第一次事故,让我记忆深刻。那是一次加节点操作,前期操作已经成功,最后一步在执行 rootaddnode.sh 脚本时,中途出错,导致 OCR 信息被损坏,所有节点全 HANG。进行 OCR 恢复后,才恢复正常。原因非常奇怪,rootaddnode.sh 要调用 srvctl 向 OCR 中写入新节点信息,而 srvctl 因为缺少个包,执行失败异常退出了,OCR 信息也被写坏了。  

在进行这次加节点操作前,我在虚拟机中反反复复测试,做了大量的准备工作,但没想到,最终还是出了大事故。  

从这件事后,我再做其他操作都更加仔细,特别是 RAC。RAC 下操作总会调用这个那个一堆的脚本,我会先把脚本看一下,大概了解这些脚本都干点啥。就像加节点,我会先调用 Srvctl config 命令,显示一下配置信息。如果可以显示成功,再进行加节点操作。  

“不要在周五做重要的事情,这会让你整个周未都没有好心情”,这是这次加节点操作给我留下的另一个忠告。  在阿里最深刻的,还是职场之道给我的震撼。在此,引用一位 PUBER 的发帖:  

A 同学,遇到问题,召集会议写报告搞风险评估,凤凤火火,完事后到处汇报心得,各部门都知道了数据部的功劳。  

B 同学,遇到问题,默默一个人搞定。  

这B同学确实厉害,很多问题都独立搞定,A同学连 oracle 的 pga 是啥都不知道,但他就是跟公司的高手们关系好,会求助,会推动。  
当你有一天听到领导们背后议论A和B的时候,你会发现,他们一致都比较欣赏A。为什么他们会欣赏A呢?不是B是高手么?因为领导们已经长期不做技术了,观察人更喜欢观察人的沟通协调能力,像B默默搞定问题,谁也不知道是咋回事,还以为这问题很简单呢。结果呢?B郁闷离职。。。职场故事无新鲜事,类似故事每天都在发生。  

以前一直以为是故事,直到见到一个活生生的、传奇般的“A同学”。除了这位 Puber 提到的,我觉得“A同学”一般还要有一个特长,就是会起名字。一个普普通通的架构,起个好名字,简值是有化腐朽为神奇的作用啊。  

看一些中央领导的简历,升迁之迅速,往往让我惊叹。很多人不惑之年,都做到了高级领导,拥有数套房子和无数个情人,成功进级高帅富他爹。我一直很奇怪,人家都是怎么玩的。自从见过“A同学”后,我了然了。“A同学们”的成功是很迅速的,他们身轻如燕,稍有青风拂过,便能乘风而起,一飞冲天。  

“A同学们”也要有一定的能力,这是基础。但是,和他们的综合实力相比,他们的能力可以忽略不记。  

他们可以把 GDP 搞的很高,但不会把国家搞的很强。  

如果一个集体、一个部门甚至一个国家,越来越弱,那一定是“A同学们”太多了。  

“A同学”后来跳到另一巨头民企担任很高的职位,依旧是风声水起、威风八面,于是我就知道,那家民企的发展是到头了。如果以释伽“成、住、坏”三阶段发展论来讲,个人认为那家民企的“成”阶段已经过去,进入“住”阶段,如果没有“B同学”大量加入,数年之后,或许就是“坏”阶段了。  

个人认为,单以职场发展来论,“A同学”值得效仿。现在的职场,好像春秋战国,即使你所待的“国家”,已经进入“坏”的阶段了,没关系,换一个国家就是。就像春秋战国时一位“士”人的言论,是当大王、诸候好呢,还是做大臣好呢。当然还是大臣好。一个国亡了,王的结局只有死,但大臣呢,换个地方再做大臣就行了。“A同学们”,永远会受到市场追捧的。他们就像漆黑中的萤火虫,那样的鲜明,那样的出众,那样的拉轰。  

但我向来没有“A同学”的能耐,只能向“B同学”学习了。  

将来做企么无所谓,有一点很关键,就是要认清自己的方向,这很重要。做管理?做技术?都行,这世界上有靠管理成功的,也有靠技术发家致富的。  

你的目标可以是成为管理者、领导,但不能是“成为好逸无劳又挣钱”的人。不要幻想着每天什么活都不干,上班喝喝茶、扯扯蛋,每月工资高的让我们这些矮穷丑听到都吓的尿裤子。这样的境界,是要有上一代打下基础才行。如果你进了 ITPUB 这个论坛,又看到我这篇文章,这足以证明你上一代没什么基础,就不要再做梦了,赶快起来跟我一起用 DTrace+GDB 研究 Oracle 原理才是正事。  

要想成为管理人员,或是领导,无外乎三种途径:  

1、在公司混久了,跟着上级、甚至公司创业者一起打天下,有资历。走这条路,要看运气,跟对了人就行。  

2、潜心研究技术细节,深入钻究技术,成为大牛,转而成为领导。这就是学而优则仕了。  

3、有关系,家人在有关部门任职。  

如果你发现自己没有跟对人,也没有关系,要想成为领导,那就走第二条路吧。我知道很多优秀的领导,都是这样走过来的。比如我们团队的头,还有 Biti,都是如此。其实,就连我所提到的“A同学”,现在的某互联网巨头企业中高级管理人员,也是如此走过来的。  

大多数离职的人对以前待过的公司都是颇有微词的。也是啊,如果不是因为待着不爽,谁愿意走呢。但我对阿里,感觉还是非常好的。因为阿里,我来到了杭州,在钱江之畔,生活了近 3 年时光。在阿里,我终于实现了我的目标 —— 让技术更上一层楼。三年时光匆匆而过,正如一部电影所说,年华就是如此,当你不再拥有,你唯一可以做的,就是令自己不要忘记。  

尾声  

站在远处,最后看了一眼雨中阿里巴巴园区漂亮的大楼,我生命的这一阶段已经过去。这是我生命中目前为止收获最多的一个阶段,感谢阿里、感谢我们的团队!

原文地址:http://www.itpub.net/forum.php?mod=viewthread&tid=1602563
本文地址:https://www.eechina.com/thread-94552-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
初级工 发表于 2012-12-13 19:23:43
好文章,好经历。顶一个!
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表