阿里巴巴 沈询(:@淘宝沈询_WhisperXD) 08年加入阿里巴巴,之前一直从事阿里分布式数据层方面的研发与业务架构梳理工作,TDDL作者,具备丰富的实战经验。
【访谈实录】
1.请简单地介绍一下你自己(技术背景、学习经历、工作经历)。
HI 大家好,我是阿里的高级专家王晶昱(花名:沈询),来自阿里巴巴--中间件和稳定性平台--目前主要在负责阿里的分布式数据库DRDS(TDDL)和阿里的分布式消息服务ONS(RocketMQ/Notify)两个系统。
2.在加入阿里巴巴的六年中,有哪些好玩和有趣的事?
因为我所在的子公司是淘宝,我印象里最好玩的一件事,应该就是武侠文化了吧~ 武侠(江湖情谊)、倒立(换个角度看世界)、小二(服务心态) 是淘宝子公司的三大文化 ,作为一家平均年龄28岁的互联网公司,他的文化里面有传统的因素,也有着年轻人的叛逆因素。
我是08年的时候加入淘宝的,当时其实能够找到一个“武侠名著中的正派人物” 就已经是非常困难的事情了呢,谁叫某个人已经把“风清扬”给占走了呢。。哎。。当时对花名的要求还特别严格,起的名字必须同时提供出处。
跟我入职的还有个兄弟,老大建议他叫冷大。 然后转头跟我说: 现在名字难起,要不他有个师弟叫“冷二” 你要不就用这个名字?-___-
我心说: 这名字这么二怎么能是我的名字。。。于是赶紧到处搜集名字,终于在一本苍月的书《剑歌》里面找到了个主人公,叫“沈洵” ,三点水的哦。。
但这个名字被一个阿里的用户占用了,于是HR就自作主张,给我改成了言字旁的沈询。这个名字也就一直用到了现在。
形象我还挺喜欢~ 是个四十多岁的白衣大侠~~ 跟女主来来回回那种~~ 嘿嘿
3.请你介绍一下目前阿里的开源现状。
阿里巴巴与大家一样,在他整个的业务中非常广泛的在使用各种开源的技术,像Linux\MySQL\Apache Foundation\spring\jboss 在公司内部都有很广泛的使用。他也从开源软件中受益很多。
阿里这些年随着用户一起成长,很幸运的成为了中国比较优秀的技术型互联网公司。在公司内,也有很多技术人一直都非常认同国外老一辈开源人的理想,希望能对开源社区进行回馈,提供一些我们对互联网技术的理解和成熟的软件给到社区里。
而公司在这方面也比较支持,唯一提出的要求是:不影响公司的核心竞争力即可。
在这种相对宽松的氛围下,我们目前也提供了一些业内比较有影响力的自主研发开源产品,比如MetaQ(RocketMQ) \ Tengine \ Druid Datasource \Cobar \ Dubbo等等。
同时,我们也积极的参与到了社区软件的协作中,参与过Linux\Hbase\Hadoop\WebScaleSql等软件的社区开发工作。
4.阿里如何运营自己的开源社区淘蝌蚪?
淘蝌蚪,其实是Tao code的简称,这个平台有点特殊,当时真的就是几个对开源感兴趣的同学一起搞起来的,开始时候做的我只能说真的很土。。。当时我们评价是“特别容易影响公司形象”~~ 笑。
后来又有一些对开源感兴趣的同学投入进来,帮助整个网站进行了进一步的优化,在界面上终于能看了。。并且项目的稳定性也有了非常强大的增强。
然 而,后面我们发现,像GitHub和OsChina这样的开源Hosting变得越来越成熟和流行了。 于是公司主要的开源阵地也逐渐的开始向着这些平台进行迁移了。 不过,我们自己的开源平台上仍然有很多我们开源出来的代码没有迁移到github. 也欢迎大家常来看看:)
5.阿里的开源技术会有哪些可能的走向和突破?
我个人认为,任何的一条道路,都不可能是一帆风顺的,阿里的开源之路也必然的面对了很多的挑战与机遇。
商 业软件与自由软件,Copyright与Copyleft ,从某种意义上来说就是硬币的两面,我们只能从中寻找到一个属于我们自己的平衡点,作为参与开源的人而言,我们也必须回答公司的一个问题:开源给公司创造 了哪种贡献?毕竟,公司付钱给我们,是为了让我们能够做出一些对公司有帮助的事情的。
而这也是我们这些参与开源的人在未来必须努力去回答和证明的一个问题。国外的很多成熟的开源与商业结合的例子,都是我们可以借鉴的,我们会努力尝试走出阿里自己的一条开源之路来
同时,我们也很欣喜的看到,我们的国家,我们国家的IT企业,对于业内最先进的技术风向的反应速度已经比10年前快的多了,国外的新技术风向,我往往在第二天就能从我们的各种媒体上找到对应的新闻了,然后在非常短的时间内就会有人去研究,并开始尝试使用或改善了。
这些都表明,我们目前已经能够紧跟当前时代的潮流了,而随着技术竞争的进一步激烈化,只有能够引领世界潮流的公司,才有可能站在浪潮之巅。因此我相信在未来,我们也很可能能够产生出具备世界影响力的技术与软件。
随之而来的,是我们国家在技术业内影响力的逐渐提升,以及在技术业内的话语权的逐渐提升。
阿里作为一家中国的互联网公司,在这方面自然也不会落于人后,我们也在积极的接洽国外的一些开源社区,希望能够将我们的软件作为他们基金会所支持的项目进行支持。
6.作为淘宝分布式数据库(TDDL/DRDS)的负责人,你能否讲讲分布式数据库(TDDL/DRDS)在阿里的发展历程?
淘宝分布式数据层(TDDL)是我到阿里以后参与的第二个项目,做到现在,也已经第六个年头了(PS. 第一个项目只做了一个月不到-___-). 如果大家看过子柳校长写的《淘宝技术这十年》的话~那有个小料要报一下 , 其实里面TDDL的章节是我写的哦~
开始的时候,TDDL的目标很简单,就是为了阿里商品库的Oracle读写分离和切分的,不过,随着阿里业务的飞速发展,以及开源数据库MySQL的快速普及,目前经过了近六年的发展,目前在阿里内已经有好几千个应用在使用了。
而随着用户的快速增加,我们也与兄弟团队花了非常大的功夫,针对整个运维流程做了非常多细致的优化工作。
如 果大家有关注过TDDL的动向,那一定记得我们在2年前准备将TDDL开源出来的计划。 不过,当我们进行这方面尝试的时候,我惊讶的发现原来现在的TDDL已经这么庞大了。就像是生长在一颗参天大树中的一根粗壮的根系,它已经完全的融入了阿 里巴巴的生态体系,哪怕进行简单地剥离,也是非常困难的一件事。
并且,对于复杂软件来说,如果你希望让用户用起来尽可能的简单,那他的代价就往往是运维、配置体系变得非常复杂。更何况还是一个在线运行了6年的复杂系统呢?
这种软件的复杂度就意味着,就算是我们费了非常大的功夫,剥离了整套软件,能够真正用起来的用户,应该是凤毛麟角,然后大家还会说我们的软件太差,做的太复杂。这一切都不是我们想看到的。
这时候,正好阿里云找我们合作分布式数据库DRDS ,云计算中对服务本身的认识,与我们想通过TDDL传递出去的服务本身非常吻合,因此,我们也认为,这是我们传递软件价值的最好选择,双方不谋而合,近而展开了深度合作。
经过了两年的准备,我们终于将DRDS作为产品推到了云上,他拥有TDDL中经过多年线上严酷考验所积累下来的成熟的软件生态体系积累,又针对云用户的实际需求,做了大量改善。
在内测和公测阶段,我们也感受到了大家对于TDDL的热情, 申请量,活跃用户量都远超我们的预期,创下多个历史记录,大家在使用中也提出了非常多的改进建议,对我们的帮助非常大。
7.和传统的数据库相比,分布式数据库有哪些优势?
我们希望能够做到,在保证扩展性的同时,尽可能的不丢弃传统数据库的方便性和易用性特征。两句话概括的话:
1. 比传统数据库的更强大的扩展性。
2. 比NoSQL更强的易用性和SQL兼容性
8.你对开源中国有何意见和建议?
像我刚才谈到的,我们目前正处在从中国制造到中国创造的关键转型期内。 而要想达到中国创造,能够有我们自己的,在世界上有影响力的foundation,是个很重要的前置条件,我想,这件事需要坚持,也需要基于,希望开源中国能够在保持现有优势的情况下,更进一步。