大家知道,每年的双11,都是购物狂欢节。今年的淘宝双11交易额达到的惊人的571亿,在这些光鲜数据的背后,其实也是对淘宝数据库的极大考验。更值得一提的是,今年双11支付宝的支付峰值突破了每分钟285万笔,创下了新的纪录。如此高并发负载的交易量,让我们对幕后支撑的数据库技术OceanBase心生好奇。究竟OceanBase有哪些强大之处呢?

毫无疑问,技术是打赢双十一“战争”的关键,而人又是成就技术创奇的巅峰力量。第102期名人堂我们重邀OceanBase的系统架构师杨传辉(社区ID:Alisunshine),为我们揭晓高性能分布式数据库系统的演变之路。

皮皮(Q1): 您好!很高兴有机会采访到您,能否简单介绍下自己?

杨传辉(A1):我叫杨传辉,来自阿里巴巴蚂蚁金服基础数据部,花名日照,目前是OceanBase的系统架构师。我是个技术宅,研究领域主要是云计算和大数据,平常喜欢写写技术文章,和微博上的技术同行互动,维护了个人博客:http://nosqlnotes.net,出版过一本分布式书籍《大规模分布式存储系统:原理解析与架构实战》。做技术的,保持谦逊,主动找事情做,追求极致,才能不断进步。

皮皮(Q2): 我了解到您在阿里一直从事OceanBase的研究,有四年之余了,伴随着这款数据库新贵的一路成长,您见证了它的演变历程,能否和我们分享下这些年来的苦与乐?

杨传辉(A2):分布式系统的成熟至少需要三年时间,数据库系统更是五年以上,OceanBase这样的分布式数据库系统研发是需要经历“八年抗战”的。到目前为止,做了四年半,取得了一些小成绩,但未来的路还很长。

首先,我觉得自己比较幸运,毕业以后首先在百度,后来转战到阿里,一直从事大规模分布式系统的研发工作,也一直能够有幸得到高人指点。BAT的好处在于能够提供海量应用场景,尤其是阿里,能够把最核心的业务,包括交易系统放到OceanBase这样的新系统上。这样的挑战、这样的信任,不是能够用金钱或者其它东西衡量的。系统研发一直都是“美帝”的天下,中国几乎没有能够拿得出手的系统,根本原因在于缺少应用场景。以BAT为代表的中国互联网的崛起给我们提供了逆袭的机会。

分布式数据库研发短时间是出不了成绩的,两年左右时间大概也只能够入门。这个领域并不需要一个人有多聪明,关键在于这个人是否踏实,真正享受这个过程并且不断地坚持。研发过程中会遇到很多的困难,比如没人敢用你的系统,又比如答应过的需求无法按时完成,辜负了用户的信任,或者技术决策失误,兄弟们也有可能因为你而坚持加班等等,各种情况始料未及。当然,更多的时候是痛并快乐着。记忆中,我感触最快乐的瞬间刻骨铭心:重要的系统上线,通过我们的系统解决了用户的疑难问题,看着双十一零点系统压力不断冲高而安然无恙。

最为难忘的是2011年双十一,当时,第一个项目收藏夹上线,双十一前两个礼拜发现重大Bug,系统在晚高峰会触发一个Linux内核问题,程序异常退出。记得当时是周五晚上,我们北京的同学立刻订了第二天的机票出差到杭州,后来临时修改代码,线上测试,折腾了几次,终于在双十一前一个礼拜搞定。等到我们的系统顺利挺过2011年双十一时,所有的同学都长长地舒了一口气。有点运气,那时我真正领悟到了什么叫做“痛并快乐着!”。

皮皮(Q3): 那为什么阿里要自主研发支持海量数据的高性能分布式数据库系统OceanBase,而不是用商业的Oracle或者开源的MySQL?

杨传辉(A3):从经济学的角度看,这是一个边际成本的问题。自主研发前期投入是巨大的,不过以后边际成本会逐步降低。Oracle和MySQL都是单机数据库系统,每次扩容都是一个比较大的项目,迫切需要一套可自动扩展的系统,另外,Oracle license贵,MySQL在阿里的应用场景下有这样那样的问题,比如主备延迟很大,有丢数据风险,各种场景下的性能也存在很大的提升空间。当一个公司的规模比较小的时候,自主研发是不划算的,即使做成了也没法收回成本;然而,到了阿里这样的规模,自主研发,掌握核心技术决定自己的命运已经成了不得不做的事情。就是在这样的背景下,OceanBase应运而生。

皮皮(Q4): OceanBase第一个应用是收藏夹。最近,听说支付宝交易也用到了OceanBase。能否结合阿里的应用谈谈OceanBase的优势。

杨传辉(A4):相比传统的关系数据库,谈及OceanBase的最大亮点,当属可自动扩展的特点,它不仅仅可以扩展到一个数据中心,乃至同城,在未来,OceanBase能成为跨地域多数据中心的全球数据库。当然,OceanBase还有一些特性,比如强一致性,能够自动容忍一台服务器甚至是整个数据中心故障,而不会丢失一条记录。值得强调的是,支付宝交易之所以会选择OceanBase而不是开源的MySQL,正是因为只有OceanBase能够做到完全不丢数据。

另外,随着OceanBase不断优化,OceanBase用武之地将会越来越多,比如支付宝交易的性能已经超越了所有的开源数据库,以后还会超越商业数据库。这就是自主研发的优势,等到渡过了积累期,相信OceanBase的后劲会很足。

皮皮(Q5): 我们知道,很多电商面对双十一带来的压力,都会在双11前对数据库集群进行扩容,相信阿里也不例外。我们常见的扩容有两种,一种是读写分离,通过增加备库提供读服务来提升集群的能力;另一种是水平扩容,将数据重新分布,拆分到更多台服务器上,达到扩容数据库集群的目的。能否谈谈OceanBase是如何扩容的?

杨传辉(A5):双十一大促这样的应用场景很有中国特色,技术人员都知道,整个后台系统只有数据库容量最难提升。传统数据库的运维人员需要花费大量的时间来做数据库扩容,包括读写分离、垂直拆分、水平拆分等等。不过,对于OceanBase运维人员来说,扩容是一件非常淡定的事情,我们唯一要做的事情就是加入更多的服务器。加入服务器,容量就提升了,OceanBase系统内部可以实现自动扩容,解决了我们的燃眉之急。

皮皮(Q6):在分布式系统中存在着著名的“短板理论”,一个集群如果出现了负载不均衡问题,那么负载最大的机器往往将成为影响系统整体表现的瓶颈和短板。那么OceanBase在阿里双十一的大战中是如何做到负载均衡的呢?

杨传辉(A6):OceanBase内部会自动把数据切分为一个个比较小的分片,每台机器服务若干个分片,当某台服务器的分片成为热点时,会自动触发迁移操作,将分片从负载较高的服务器迁移出去,这样,就避免了“木桶效应”。这也是OceanBase的一个优势,无论双十一之前热点怎么变,OceanBase都可以很快把热点数据均衡到整个集群,而不是因为一两台服务器把整个集群压垮了。

皮皮(Q7):在分布式系统中存在着著名的“CAP理论”,很多NOSQL系统都会为了提升性能而牺牲一致性。OceanBase是如何做的呢?

杨传辉(A7):确实是这样,很多NOSQL系统为了实现简便,牺牲了一致性来提升性能。然而,对于电商、支付这样的业务,根本没法使用弱一致系统。OceanBase是真正的分布式关系数据库,不仅仅支持分布式,还支持SQL、事务、并发控制这样的关系数据库特性,用户使用起来和MySQL没有任何差别。

和MySQL的不同点在于,MySQL主备同步是有丢数据风险的,而OceanBase通过Paxos选举协议实现强一致性。无论是一台服务器,还是数据中心整体故障,OceanBase都能够自动恢复,而且做到完全不丢数据。OceanBase的这种做法和Google、Microsoft以及Amazon云存储系统的底层原理都是共通的。

皮皮(Q8):在双十一中,我们经常会遇到比如热点商品更新库存,秒杀,红包等场景。当同时大量更新数据库中的同一行时,就会产生大量的锁等待,数据库的性能就会急剧下降。那OceanBase是如何做到并发控制的呢?

杨传辉(A8):热点行是数据库里面的一个经典难题。热点应用的场景很多,比如双十一抢购小米手机。首先,OceanBase的事务引擎面向内存设计的,它的特点就是快,而且避免了传统数据库的写入放大问题,这样,OceanBase的锁等待天生就要更少。另外,OceanBase还提出并第一个实现了提前解锁、排队等待等优化思想,这些思想后来也应用到集团MySQL数据库的patch中,成为阿里双十一应对热点问题的标配。

皮皮(Q9):刚才说到,OceanBase要“八年抗战”。那么,OceanBase未来准备做哪些事情。我们的读者也会有一些对OceanBase研发工作感兴趣,你们需要什么样的人?

杨传辉(A9):OceanBase未来要做的事情很多,大目标只有一个:做全球最好的分布式数据库。我们的数据库可以跨地域部署,性能超越Oracle,使用起来和MySQL一样,并且应用到阿里,应用到中国,应用到全世界。

前面已经提到,我们需要的人首先要踏实,享受技术并且能够耐得住寂寞。另外,不断挑战自己,追求极致。当然,具备数据库开发、分布式系统开发、系统优化等相关经验会更好。

非常感谢杨传辉为我们带来的精彩分享,希望大家能够积极互动,就自己所关心的话题提问,与大师交流心得。截止12月15日,我们将评选获奖会员五名,赠送技术图书一本。
      获奖名单:chinagjj2008 玉面飞龙 bfmo king140445 Tomac

请以上中奖人员在1月15日之前,将自己的姓名、住址、联系方式以及所选书单发送给itpub运营团队,书单链接http://bbs.chinaunix.net/thread-4074217-1-1.html

大家知道,每年的双11,都是购物狂欢节。相关推荐

  1. 共享可写节包含重定位_艾瑞咨询:2020年数说双11电商购物节报告

    回复"2020数说双11电商购物节"获取完整版报告 <2020年数说双11电商购物节报告>基于艾瑞十八年对互联网流量研究的研究经验.数据积累以及艾瑞数据监测工具多平台网 ...

  2. 2014天猫双11内部员工购物通道

    这个时候已经敲响了双11的警钟了,这一定是大家最紧张最激动的时刻,抢红包.抢干货.挖宝贝:小编却在紧张的备战,上午一个在阿里从事数据库管理员的朋友发给我一份文件,说是双11所有店 铺折扣商品总汇,我开 ...

  3. 网易双11“超级工程”:反欺诈系统应用实践

    每年双十一,不仅是剁手族的狂欢节,更是各大电商技术团队技术水平与技术创新实践检验的舞台,不断创新高的销售额.交易峰值.支付峰值,这些惊人数字的背后都离不开强力的技术支撑.IT168希望通过技术报道的形 ...

  4. 阿迪达斯双11成交额创新高,成为天猫第一运动品牌

    在刚刚过去的天猫双11全球狂欢节(以下简称"双11")当日,阿迪达斯成交额再创新记录,成为2019年天猫双11第一运动品牌,为"立新"旅程迈向冲刺之年,递交了一 ...

  5. 媲美5G的Wifi网速、“备战”资产一键领……揭秘双11小二背后的保障力量

    如今,双11不光是购物狂欢节,更是对技术的一次"大考",对于阿里巴巴企业内部运营的基础保障技术而言,亦是如此. 回溯双11历史,这背后也经历过"小米加步枪"的阶 ...

  6. 阿里云双11的红包 不拼智商都不行

    本文讲的是阿里云双11的红包 不拼智商都不行Geek感满满的阿里云,连一封挑战书都不正经写了-- 阿里云宣布加入天猫11.11全球狂欢节的消息让云计算成为了今年双11最特殊的商品.而随着双11不断升温 ...

  7. 天猫总裁靖捷回答了今年双11的热点问题

    阿里巴巴集团CEO张勇(花名:逍遥子)是"双11"的创造者,而天猫总裁靖捷从出生那天就注定了自己与这个"商业奥林匹克"的缘分.11月11日,靖捷将迎来他的生日, ...

  8. 从双11看技术趋势:金融行业总动员之阿里金融云

    刚刚结束的天猫双11,让全世界震撼的不只是逆天的销售额,还有深不可见的科技力量. 在这场全球共振的狂欢中,阿里巴巴展现了从一家电商公司转型到一家以技术为驱动的科技公司的深刻转变.阿里巴巴的支付.物流. ...

  9. 今年双11,阿里业务100%上云

    简介: 阿里巴巴业务的研发效率提升了20%.CPU资源利用率提升30%.应用100%云原生化.在线业务容器可达百万规模,同时计算效率大幅提升,双11整体计算成本三年下降30%. 今天,阿里巴巴首席技术 ...

最新文章

  1. 让我再撸一次HashMap
  2. 它来了!ROS2从入门到精通:理论与实战
  3. SAP变式配置的完整指南(中英文双语版)
  4. Hibernate 乐观锁和悲观锁
  5. 同在服务器无响应,全部服务器无响应!!!
  6. python图像直方图与直方图均衡化
  7. 仰视源代码,实现strcpy
  8. nignx的TCP和UDP调度(nginx反向代理)
  9. ABAP 几个文件相关的函数
  10. DotNetNuke的升级路径
  11. centos镜像 from_【CentOS 7.1】使用163的镜像
  12. openocd安装与调试
  13. 英伟达与 ARM 初携手,英国共建 AI 研究中心
  14. Java实现二分查找算法
  15. 【程序员眼中的统计学(12)】相关与回归:我的线条如何?
  16. ok6410开发板移植DirectFB手记
  17. 【Sprint3冲刺之前】TD学生助手——alpha版发布
  18. grads插值_GrADS中填色标尺cbarn用法
  19. 织梦留言板模板 .php,织梦DEDECMS留言板功能制作及调用标签
  20. 红黑树时间复杂度证明(O(lgn))

热门文章

  1. 微信小程序开源项目整理(github)
  2. 异地多活数据同步平台
  3. 破解网页禁止复制的方法
  4. office2010工具栏隐藏解决方法
  5. java读取文件目录返回树形结构
  6. (附源码)SSM心理咨询预约系统JAVA计算机毕业设计项目
  7. 浪潮发布新一代主机天梭M13 可承载大型机应用
  8. 如何处理 网站被网安大队下发的信息系统安全等级保护限期整改通知书
  9. 三维打印涉及的计算机语言,是什么制约了3D打印技术的发展?
  10. 聪聪和可可[NOI2005]