蚂蚁金服解读双11背后技术:SOFAMesh & OceanBase保驾护航

速途网11月19日消息(报道:乔志斌)今日,蚂蚁金服在北京举办主题为“巅峰洞见·聚焦金融新技术”发布会。会上,蚂蚁金服解读了支付宝“参战”的第十一年中,背后所采用的“秘密武器”。

与十一年前相比,双11的许多东西都改变了。比如金额——2684亿,差不多是十一年前的5000倍;比如流量——订单峰值54.4万笔/秒,曾经是想都不敢想的数字;再比如层出不穷的新技术,就是这些惊人数字背后的“秘密武器”,给迎战双11的战士们作最完备的武装。

SOFAMesh:金融级云原生第一步

SOFAMesh是支付宝针对金融行业的特殊需求而开发的金融级中间件,属于金融级云原生分布式框架SOFAStack的一部分,这个框架的开发始于2009年,几乎和双11同龄。

今年,SOFAMesh的上线,切换资源不再需要重新部署,切换时间缩短到了3分40秒。这意味着,像蚂蚁森林那样每天都会面临流量小高峰的业务,无需事先留足资源余量,提前10分钟开始切换资源,都绰绰有余。

2019年双11,SOFAMesh扮演了非常重要角色——100%覆盖蚂蚁金服核心支付链路,几十万容器,峰值千万QPS,平均RT(响应时间) 0.2ms,是业界最大的 Service Mesh 集群。它在洪峰面前的稳定性和平滑性,以及对效率的显著提升,都是有目共睹的。

“云原生”已经成为业界公认的技术趋势,它的目标是提升运维效率、降低资源使用成本、提升服务安全可靠性等。云原生带来的基础设施升级,为技术演进提供基础能力支撑,并且提升未来架构空间的想象力。2019也是支付宝的金融级云原生落地元年,包括SOFAMesh在内的一系列云原生技术。

双11之后,蚂蚁金服举办的发布会上,副CTO胡喜宣布,会将打磨十年之久的SoFAStack对外公开。

OceanBase 2.2:世界纪录就是用来打破的

2018年双11,基于OceanBase 2.0分区方案的架构正式上线,这一架构解决了数据库可扩展的瓶颈,将每秒交易的承载能力提升到百万级,并让性能提升了50%。而一年之后,在2019年的双11中,全新上线的OceanBase 2.2版本,在2.0的基础上,又让性能提高了50%。

就在今年的10月3日,权威机构国际事务处理性能委员会TPC披露:蚂蚁金服的分布式关系数据库OceanBase,打破美国甲骨文公司保持了9年的世界纪录,登顶TPC-C榜单,同时也成为首个登上该榜单的中国数据库系统。短短的一个月之后,在2019年双11的考场之上,OceanBase2.2又再次刷新了数据库处理峰值,达6100万次/秒,创造了新的世界纪录。

其背后关键的秘密在于,OceanBase背后是原生的分布式数据库设计以及PAXOS协议,通过水平扩展x86服务器就可以达到无限伸缩,支持大规模高并发的效果。

另一方面,今年为了进一步提升性能和降低延迟,OceanBase还通过中间件的优化,自动将多条SQL聚合成轻量级的存储过程,这个过程让原本需要数十次SQL网络交互的任务降低为单次网络交互,整体RT降低了20%。

现在,支付宝的业务已经100%跑在OceanBase上,作为我国第一个自研的金融级分布式数据库,今年双11中,支付宝支付业务100%切换到OceanBase内置的Oracle兼容模式上,支持Oracle语法以及存储过程优化的同时,又兼具OceanBase的分布式能力,如分布式分区表、全局事务等,响应时间也更加平稳。双11之后,OceanBase2.2也将正式公开发布。

图智能:复杂金融关系的最优解

蚂蚁的一站式图平台的诞生,也有着鲜明的蚂蚁金服特色,同样是“被业务倒逼出来的”。

蚂蚁金服在2014年左右就开始跟进社区的图计算的研究,图数据库能够很好地和金融、社交业务结合起来。从数据量来看,分布式架构是唯一的选择。从满足金融场景高并发低延时的需求来看,选择原生图结构而非基于关系型数据库基础上封装图数据,成为必然。但也因为以上两点,导致整个开发难度大大增加。

经过2015年初团队开始组建,第一个图数据库版本GeaBase在2016年初发布,刚好遇到支付宝史上最大一次改版,模块化功能被替换成信息流,大大强化了社交关系属性,GeaBase开始接入支付宝链路。

2016年6月,新版支付宝上线,GeaBase迎来了第一笔流量。接着几年,从支付宝大改版到新春红包再到双11,GeaBase迎来了业务的绽放期,到2019年双11,GeaBase双11主链路上单集群规模突破万亿边,点边查询突破800万QPS,平均时延小于10ms;成为支付宝核心链路上非常重要的一环;

因此,2017年,我们在海量数据基础上,设计了一套离线计算的框架,提供自适应的分区策略,资源消耗能比同类产品降低一个数量级,同时性能还能远远优于GraphX等开源产品。

同时,为了方便业务算法人员根据其业务进行二次开发,还开放了C++和JAVA的接口,除了业界常见的图编程框架的Pregel、GAS,我们还做了一定的“微创新”和能力扩展,提供了更高性能,更加丰富功能的接口。

在2019年双11上,在线图计算技术大放异彩,通过秒级决策,在花呗等场景帮助业务效果提升12倍。从“海量”图存储,到离线全图 “按需计算”,再到“实时”在线图计算,蚂蚁的图智能技术跟随业务一步步发展,壮大。

融合计算引擎:新计算威力初现

今年的双11还落地应用了一套新的“神器”——融合计算引擎,它耗费了近百位工程师一整年的心血。融合计算引擎的基础,是蚂蚁金服联合 UC Berkeley 大学推进的新一代计算引擎Ray,它很年轻,2018年融合计算引擎项目启动时,它只有几万行代码,距离金融级线上环境的应用还差得很远。

在计算引擎执行层面,不同计算模式的数据是可以在引擎内共享的,很少借助第三方存储,因此对外部存储和网络传输的开销也都有极大的节省。

在应用方面,融合计算引擎不仅能够解决金融场景中需要衔接多个不同计算模式的难题,还能支持各种不同时效性的业务,并在支付过程中提供秒级智能决策能力。

并且随着融合引擎的落地,也改变着技术同学的研发习惯。我们希望通过融合计算引擎,达成研发态,运行态,运维态三位一体的统一:例如在动态图计算场景,计算开发同学只需要编写一个流+图的计算作业,就可以实现秒级6度邻居的图迭代计算;同样在机器学习领域,通过编写一个包含流+模型训练+服务的计算作业,就可以实现端到端秒级模型导出的在线学习能力。这样从研发到运行态,计算整体效率都得到了极大提升。

今年双11中,融合计算引擎在至少三个场景中成功落地并被验证可行,“还跑在了蚂蚁金融级关键决策链路上。”周家英不无兴奋,“这证明了我们的计算引擎具备了金融级的能力。”

事实上,无论是在双11这样的极端大考场景中,还是在支付宝、阿里巴巴,以及各个互联网科技公司的日常应用场景中,数据驱动的业务也越来越多。相应地,海量数据的实时处理、分析和应用,以及人工智能、深度学习等新技术的开发,都在要求着更强大的计算能力,以及能够应对复杂场景的多种计算模式。

面对未来,更多的是未知——我们尚且不知未来会出现什么样的场景,这些场景会要求什么样的计算模式和计算能力。“融合计算是真正意义上的新计算的第一步。”蚂蚁金服计算存储首席架构师何昌华说。

(0)
上一篇 2019年11月19日 19:01
下一篇 2019年11月20日 09:40