当前位置: 首页 > 科技观察

双11超级工程——阿里巴巴的数据库技术架构演进

时间:2023-03-17 18:44:50 科技观察

每年的电商双11大促,对阿里巴巴的技术人员,尤其是阿里巴巴的数据库团队来说,都是一次不小的考验。经过9年的发展,双11单日交易额从2009年的5000万笔攀升至2017年的1682亿笔,秒级交易峰值达到每秒32.5万笔。所有这些业务指标的背后,都是底层技术体系的迭代升级。阿里巴巴的数据库系统经历了10多年的发展。今年正式确定了从第三代大规模分库分表向第四代X-DB分布式数据库系统演进的目标。X-DB分布式数据库的实现在2017年双11大促中得到了验证,同时引入了底层存储计算分离架构。分布式在系统稳定性、容灾能力、容量可扩展性、技术系统凝聚力等方面都有了质的提升。今年的双11开启了阿里数据库技术架构的新篇章。本文以阿里电商交易环节中的核心系统库存中心为例,一窥阿里集团数据数据库的发展历程。库存中心数据库集群(简称库存DB集群),自2012年独立拆分以来,其发展可概括为以下三个阶段:2012~2013年:水平分库分表,构建大规模数据库集群2014年~20162017:X-DB1.0分布式集群部署上线,新起点是阿里数据库系统中的核心系统。InventoryDB集群的发展历程可以作为一个缩影,代表着阿里巴巴数据库系统的演进历程。诞生InventoryDB集群诞生于2012年,是业务垂直拆分的产物。库存本来是产品中心数据库的一个字段。随着淘宝业务的复杂化,单一字段已经不能满足基于后端仓储的库存管理系统,于是出现了垂直拆分的库存DB集群。横向拆分从2012年到2017年,双11交易量一步步刷新记录,存量DB集群的QPS/TPS也实现了数十倍的增长。水平拆分的基本思想是将数据库扩展到多个物理节点,让每个节点处理不同的读写请求,从而缓解单个数据库的性能问题。借助数据库团队的DTS(DataTransmissionService)产品,库存中心进行了大规模的横向拆分,分库分表数量扩大到初始数量的数百倍,稳步支撑了现阶段业务的快速发展。同时,迫切需要新一代架构来解决热点商品扣款、防超卖数据强一致性需求、跨城异地容灾数据质量问题、快速扩容等问题。业务数据量大,超大规模数据库集群运维。解决。2014~2015年,为进一步提升用户购物体验,对库存DB集群和主站交易链路进行单元化部署。单元化很大程度上解决了买家的用户体验问题,在本单元完成读写操作。但是对于卖家维度的数据,比如编辑商品,扣除库存,会涉及到跨单元的写入。单元化架构之前已经有很多介绍了。单元多,对底层数据库最大的挑战就是数据同步,因为对于单元封闭的买方维度的数据,需要将所有单元数据同步到中心;对于读写分离的业务,我们希望数据从中心同步到单位。这个数据通道是由DRC(DataReplicationCenter)完成的。如今,DRC不仅成为了集团单元化链路的基础设施,相应的云产品DTS从2016年开始就让阿里云用户和巨石塔商户能够低成本搭建异地容灾。单元化架构给企业带来的最大挑战inventoryDBcluster是多单元数据强一致性的问题,我们在这方面也做了很大的努力。2017年双十一部署了X-DB分布式集群,首次使用X-DB1.0分布式集群部署库存DB集群,顺利支撑了每秒32.5万笔的峰值。X-DB是阿里巴巴自主研发的可全球部署的高性能分布式数据库。其核心技术目标概括为以下6点:100%兼容MySQL生态,应用跨AZ和Region全球部署能力无缝迁移,5自动化数据分片,可用率大于9,计算和存储可横向扩展高性能事务处理,同等硬件下事务??处理能力是MySQL的10倍,百万TPS的冷热数据自动分离,存储成本是MySQL的1/10计算与存储分离,存储按需扩展InventoryDB集群双11部署架构:正是因为X-DB提供了对MySQL的全兼容、高性能、低成本、跨城容灾、数据强一致性。2017年初,数据库团队和业务研发团队确定了在库存中心部署X-DB1.0的目标,解决当前业务面临的痛点:全面兼容MySQL,实现业务的平滑迁移系统性能发挥到极致,双11单机热点扣除峰值TPS成本比去年降低3倍。与传统单元化主备架构部署相比,降低了2个数据副本和单元间数据同步的资源成本。跨城容灾,借助Batching和Pipelining技术实现跨城强同步场景的吞吐量几乎没有衰减,数据强一致。Paxos协议用于提供多个单元之间的数据强一致性;批量关闭中心集群所有实例,集群在30秒内完成选主切换,彻底解决计算存储分离零数据丢失。传统模型计算资源和存储资源的固定配比,结合容器化技术,可以在大促高峰期将数据库灵活部署运行在离线任务主机上,实现零扩容成本,支持双11大促.在2017年双十一的舞台上,稳定支撑了每秒32.5万笔交易的峰值,打开了阿里数据库系统从分库分表时代走向分布式集群时代的大门。技术之路永无止境,我们目前的技术现状和业务对我们的需求还有很大的差距。但千里之行,始于足下,借用《魔戒》的经典台词:“佛罗多先生,这个世界有些美好,值得为之奋斗。”作者:陈文涛,笔名于悦,2014年加入阿里巴巴数据库团队,目前负责集团环境X-DB1.0架构的实现。