“老中医”杨繁,专治各种“疑难杂症”

12年腾讯工作经历,成就了同事口中的“老中医”,专治各种数据库领域“疑难杂症”,“望闻问切,药到病除”。
不仅如此,他还是同事眼里的“江湖百晓生”,通晓各种前沿技术,堪称数据库领域“百科全书”。
他就是我们今天大咖访谈录的主角

逗比的“老中医”

      杨繁:腾讯T4数据库专家,2006年加入腾讯,从事搜索、文件存储、大数据、云计算等多方面的开发工作;2015年开始负责腾讯云数据库产品开发,今年是他在腾讯的第12个年头。
目前,腾讯云数据库的性能指标已经超过100万QPS,对内部承载了QQ、微信、QQ空间等重要产品线,对外则服务于众多金融、政府机构,其中不乏类似微众银行、摩拜这样的大型互联网企业。
腾讯云数据库产品家族已覆盖世界上主流的关系型、键值型、文档型、搜索型、时序型、列式数据库。加上新近推出的CTSDB、CynosDB和即将发布的智能DBA,目前共有16个子产品和3款数据库工具,提供全行业解决方案。

      数据库先行,一次“不可能完成的任务”
伴随规模的扩大、业务的转型,企业对云服务的需求也在逐渐变化,更合适的云服务,对企业的发展起到了重要的作用。在这过程中,不可避免的会发生云计算的迁移。
“迁移必须数据库先行,如果数据库迁移不过来,企业的业务是无法正常运行的。”在专访中,杨繁讲述了曾经是互联网史上数据库最大数据量的迁移案例—某电商企业的腾讯云数据库迁移之旅,他表示:“在对方眼中,这个大迁移对当时的云计算提供商来说:是一项不可能完成的任务。”
首先是该家企业数据库DBA(数据库管理员)人员非常有限,而与之对应的则是复杂的系统架构,庞大的数据量和高数据吞吐,杨繁介绍,2017年5月份,对方的数据量级已经达到四、五百TB。
对于这样的迁移,首先摆在面前的问题是,在不影响业务的正常运营的同时,不仅仅要考虑如何迁移数据,并且还要保证满足版本的发布要求。迁移面临的数据量巨大,时间短,任务多,网络环境复杂等问题,所有这些要求综合起来,对迁移的技术要求非常苛刻。
专访中,杨繁描述这一段经历“不可能完成的迁移”的经历时表示:
“我们别无选择,只能成功不能失败。在迁移之初,我们首先派腾讯云数据库的产品架构师精英,从零开始了解客户系统架构和运作模式,根据当前的业务情况,打造迁移模型,在正式迁移前不断演练。当时我们吃住都在客户的办公室,我们的技术实力,服务态度和对方案精益求精的精神,得到用户的认可”
“在经历了无数次演练之后,我们通过演练数据,做出一份客户高度认可的迁移方案。2017年5月份,迁移正式开始。迁移过程中,我们秉承“以用户价值为依归”的经营理念,所有的问题解决方案都是围绕不影响客户的业务和数据,不管是加班加点,还是协调各种网络/云主机的专家,历时五个月的数据库迁移,完全0故障0影响,我们较计划提前一个月完成迁移。”
目前腾讯云的支撑下,该电商企业的业务规模实现了跨越式的发展,其中,数据库的迁移功不可没。同时,腾讯云数据库在电商行业积累的经验,也赋能到其他电商:唯品会,蘑菇街等。腾讯云数据库强大的技术实力,一流的产品功能性能,以及优质的服务,成为云数据库的标杆。

      性能超主流水平3倍,好的产品自己会说话
据行业数据显示,目前Top100的直播平台中,已有超过80%的企业选择腾讯云。在游戏直播盛行的时代,直播平台看中的不仅仅是腾讯游戏在国内的主导地位,更是腾讯云背后的技术和性能支撑。
杨繁介绍了腾讯云的一家典型用户,2016年初,以视频和游戏研发为主的这家用户,已经有了上云的想法,并且已经有了目标。彼时,腾讯云正好研发出了一款新的产品,结合了软件和硬件的能力,性能指标方面超过友商以及国内主流水平的3倍。
当这家技术团队负责人了解到这些时,决定选择对腾讯云的数据库产品做一次性能测试。
“我们的DBA团队和研发团队一起对该用户的具体业务以及每条SQL的优化进行了全面的跟踪,从云主机、网络、云数据库所有产品都进行了优化。两周时间,测试结果出来,我们的性能大幅超过了其它厂商,基于此,该用户最终选择了腾讯云”。
优异的性能成为用户选择的关键因素,好的产品自己会说话。

      欲速则不达,腾讯云数据库研发历程揭秘
研发是数据库产品的重要环节,研发过程也对产品的开发周期以及产品性能产生着重要的影响。
一个不那么敏捷的方案、看似传统的方式,可能对产品研发来说更效率更高、更靠谱。
杨繁透露,目前腾讯云的自研数据库从立项到现在,第一期已经基本结束,总共花了3个月的时间。

      “老中医”和他的团队”

      从立项开始需要和多个部门协作,为保证团队协作以及质量控制,我们整体团队开发之前会把所有的方案全部对齐,讨论到每个接口细节问题,定版之后形成文档,然后交付到每个人,哪个模块是谁负责的话,这个文档就必须要写到接口级,并且要写到每个参数级别的细节,达到即使有改动,也可以回溯整个链条。”
在这种方案指导下,腾讯云自研数据库一期的代码只用了一个月的时间就已完成,留下了近两个月的时间可以用来调优和debug。而在这个过程中,没有发生任何一起因为设计不当而导致的问题。
同时,凭借这样一个“传统”的方案,腾讯云数据库产品的可靠性、稳定性已经做到业内顶级。
“可靠性方面,我们采用了数据副本的模式,假如一份数据出三份,即使丢了两份,还有最后一份可用;在稳定性方面,采用了Raft协议保证一致性,并且会进行日志备份模式,保证数据完全不可丢。

      “老中医”的称呼源自同事们的信任和对技术的敬畏

      深沉的“老中医”

      谈及“老中医”这个称号,杨繁表示:“老中医其实寄托着同事们对我的信任。因为可能我自身工作年限比较久一些,之前在做互联网业务开发的时候,和业务团队去定位问题的过程中,帮助他们解决了不少的问题,所以慢慢地就形成了这种印象吧。”
杨繁在项目开发方面具有丰富的经验积累以及广泛涉猎。在工作之余,他非常关注相关硬件领域的最新动向,喜欢钻研软硬兼容、提升产品能力的各种新技术。对于新人,他经常告诫他们,技术领域,至少要工作七、八年才能形成一定的业界感知度,这样,接下来无论是做技术还是管理才会游刃有余,所以他不太建议技术新人仅仅工作三年左右就从事管理岗位。
“谈及数据库的发展趋势,杨繁认为“国外的云服务,在中国多少会有一些水土不服,我们需要做中国本土特色的云产品,而中国的数据库产品需要和其它云产品联动起来,只有这样,用户的可选择性、可用性才会更好。”

      结语:
目前,各大云厂商在数据库领域的投入越来越大,在银行、保险等金融行业,以及政府部门都在提倡使用去IOE,其中一个最重要的就是云数据库。可以预见,未来云数据库,特别是开源关系型数据库产品将更有市场空间,腾讯云也将会进一步联合生态内的合作伙伴,打造技术领先,更易用的数据库产品,让云计算真正成为普惠科技,推动全行业的数字化转型升级。