首次探秘!双11奇迹背后的大数据力量,十年发展五部曲
    2018-11-15    大舞

第十个双11已圆满结束,但是技术的探索永不止步。阿里技术推出《十年牧码记》系列,邀请参与历年双11备战的核心技术大牛,一起回顾阿里技术的变迁。

 

每年双11,不仅仅是剁手族的狂欢节,更是数据人的“大考”,是检验计算平台各技术团队技术水平与技术创新实践的舞台。今天,阿里资深运维专家大舞为大家详细解读阿里巴巴大数据十年的五大历程。



阿里资深运维专家大舞阿里资深运维专家大舞

​​

从2009年第1个双11交易额0.5亿 - 9.36亿 - 33.6亿 - 191亿 - 362亿 - 571亿 - 912亿 - 1207亿 - 1682亿 - 2135亿……令人震撼的数字一次次刷新历史。十年来,令我们最骄傲的不在于数字,而是我们整个大数据计算平台成为全世界最牛的大数据并发处理能力的平台,同时我们整个大数据计算平台也在一次次的积累和历练中完成技术的沉淀及突破,刷新着纪录的极限挑战。

 

 

作为承载着集团、蚂蚁、菜鸟、高德、优酷土豆等关联公司95%以上的大数据存储、计算服务以及支撑媒体大屏实时流计算的服务,大流量、高并发以及全链路大数据处理能力成为历年双11销售奇迹背后的支撑力量,在2017年双11中:

 

Blink实时数据处理技术,包括日志数据和交易数据的实时采集、分发、计算,最终在媒体直播大屏上实时渲染和展示,整个链路的稳定性保障压力是巨大的。在2017年双11,阿里实时大数据系统Blink完成了三项世界级的挑战:1.低延时,从零点第一笔交易发生,到媒体大屏上显示出统计结果,整个处理过程延时仅几秒;2.高性能、高吞吐,最高处理速度达到4.72亿条/秒;3.高可用,全天服务不降级、无故障,扛下了高峰期所有的流量。

 

超大规模的离线数据处理方面,双11期间,MaxCompute扛下了单天数据处理总量300+PB,以及百万级的调度作业,这对于作业调度、计算性能、系统稳定性等都是极大的考验。

 

而阿里集团形成的大规模、海量数据、高并发的离线及实时数据处理能力是如何一步步发展到如今,下文将首次探秘大数据离线及实时业务技术发展的五大历程。

 

阶段一:盘古开天,大数据应用随业务而生

 

在阿里巴巴发展之初,2009年之前使用基本都是IOE的系统,淘宝电商系的系统属于垂直线,每个BU都有自己从上到下,从业务到平台的产品。绝大部分使用的是IBM小型机,数据库基本都是Oracle,当时阿里巴巴拥有亚洲最大的Oracle集群,戏称为Oracle之巅。

 

当时的计算规模已经达到百TB级别,随着淘宝用户量每年以百分之几百甚至上千的速率增长以及淘宝运算量的需求发展 ,阿里巴巴使用的Greenplum集群也逐步遇到瓶颈,此时的数据量已经大概比Oracle扩展了10倍。而Greenplum在百台机器之后就很难再扩展上去,但百台集群的规模对于阿里这样蓬勃发展的企业而言是远远不够的。

 

2009年9月阿里云正式成立启动,愿景是要做一套大数据分布式计算/存储的云平台,自主研发飞天体系,包括:底层的分布式存储系统——盘古、分布式调度系统——伏羲以及其他——系列组件等。当时写下飞天的第一行代码同时标志着云梯2时代的到来。但当时的平台产品成熟度还不足以承载阿里集团的大数据业务,这个时候为了保证阿里大数据业务的正常发展,部分同学使用当时比较成熟的开源大数据软件Hadoop搭建了内部云梯1平台,来支撑集团大数据业务正常发展。

 

 

2009 - 2010年期间云梯1、云梯2,两套系统,云梯1承载初期集团淘宝的数据业务,云梯2助力阿里金融的第一个产品“牧羊犬”应用上线,同时承担部分计算任务以缓解现有系统不足的压力,一起支撑着整个集团的数据业务。

 

阶段二:第一代ODPS计算引擎投入生产运行

 

随着集团业务的迅速发展,2010年云梯1集群达到1000台,天网也完成淘宝内部大一统支持hadoop,统一调度时代来临。2010年4月,伴随阿里金融的贷款业务上线,第一代ODPS作为核心的计算引擎正式投入生产运行。而上线后的稳定性保障成为研发,业务以及SRE同学的梦魇,每日8:00 - 9:00准时产出的商户对帐单等基线(一般在0点开始计算前一天业务数据)在当时要跑30个小时以上,大家基本轮流通宵值班,盯守的是已经跑了24小时前天的数据......这是一个研发/运维/业务都比较痛苦的时期。同时云梯2在这个过程中也逐步成熟。

 

 

转眼间到了2011年,集团主要业务全部登上云梯1,阿里构建了国内领先的hadoop集群,在云端(dataworks前身)同年发布,统一大数据平台逐步成型。两座云梯同时发展,开始进行博弈,规则很明确:要想成功肩负起阿里巴巴的底层计算系统,就必须有能力独自调度5000台服务器,“赢者通吃”,继承家业。大数据SRE同学也兵分二路,2个团队以保姆式贴身服务于业务,保障云梯1和云梯2的业务稳定。

 

同年大数据实时计算发展也随业务而生。在集团内很多业务团队已经开始意识到客户对流计算的强烈需求。在业务的驱动下,数据魔方研发了第一个版本的galaxy,b2b搜索团队也研发了一个叫iprocess的流计算系统。但在当时,两个产品的同学对流计算的理解都不深入,所以,各自的系统都有很多的问题,导致无法继续发展下去,在12年7月份,数据平台事业部(CDO)成立,两个团队走到了一起组建了实时计算团队。

 

阶段三:基于云梯2飞天打造新一代阿里数据平台

 

在2012年 - 2015年,新一代阿里数据平台开始打造,主要有三个重要节点:冰火鸟项目、5k之战、登月计划。

 

冰火鸟:数据业务层统一(2012)

在2012年,集团正式成立数据平台部(CDO),致力于实现一套运算/分享离线计算和实时计算数据平台,自研飞天体系的云梯2正式更名为“ODPS”。这一年还启动了一项集团层面重要战略项目:冰火鸟。

 

“冰火鸟“这个项目最大的价值是我们从业务上沉淀出了一个数据平台,我们把数据平台跟云计算的底层接上了,所以有了冰火鸟这样的技术上的突破,整个集团去做数据平台业务才有了一个立足点,我们才能给进一步往下带动飞天,带动云计算的整个基础,继续往前走,也同时能给往上支持好整个淘宝、阿里的数据化运营,最终沉淀出数据公司未来的平台化的业务,所以这个是承上启下的一个非常非常关键的过程。

——引自曾鸣

冰火鸟项目作为第一发子弹打响了从JM驱动升级为数据驱动的业务,构建集团数据化运营、商业创新的数据交换平台,支持任意数据拥有者之间进行商业数据交换,为数据应用开发者提供一站式的开发、测试、运维、运行环境,快速开发数据产品。

 

这时第一个环节就碰到了问题,数据同步,业务系统有各种各样的数据源,ORACLE、MYSQL、日志系统、爬虫数据,当时有多种同步的方式,有通过SHELL脚本的、也有通过Jdbcdump的、还有别的方式,当时负责数据同步的同学,最痛苦的事情莫过于,业务系统进行数据库变更时,各种同步任务需要不断的调整,每次调整几百个任务极其容易出错,当时为了解决数据同步的问题,数据工具团队开始研发专门的同步工具DATAX,也就是现在同步中心的前身,同时还研发了针对DB的实时同步工具Dbsync和针对日志的TT,现在统一叫TT。

 

天网调度系统也不断进行完善,开始支持小时调度、甚至分钟调度,并且集成了自动告警等一系统功能,升级为在云端,相关的DQC系统、数据地图、血缘分析等周边系统在这个时期不断推出,数据团队也在不断壮大。

 

2012.10冰火鸟一期上线,实现了数据交换平台的雏形,统一了大规模离线计算和实时计算平台,成功将数据魔方、淘宝指数、TCIF迁移到平台上。2013.8,冰火鸟二期上线,阿里金融数据平台整体迁入到DXP。2012年初云梯1、云梯2运维团队合并,集团首支大数据SRE team成立,开始借助于脚本工具负责大数据集群、发布、业务运维,全面保障护航大数据业务稳定。

5K之战:突破集群存储的瓶颈(2013)

 

“5K项目是影响公司数据业务是否可以顺利开展的关键节点之一。”

——引自王坚博士

 

2012年底,以开源软件为基础的“云梯1”实现了4000台集群调度,而阿里云纯自研的“云梯2”还在1500台集团数量上徘徊。

 

转眼间来到2013年3.28,一封来自集团数据平台Hadoop 研发负责人云铮的邮件直达高层:

 

“按照数据增量与未来业务增长的情况,云梯1和云梯2两套系统的存储和计算能力将在6.21到达瓶颈。”

这一天终于来了,要想维持正常的业务,必须在不到三个月的时间内解决问题,以Hadoop为基础的云梯1和以飞天为基础的“云梯2”一直并行,这个时候己经紧迫到不允许团队分流,必须放弃掉一个。王坚博士的坚守将飞天推上5K。正明携多隆,褚霸、长仁团队加入5K项目,与阿里云飞天团队、数据平台团队、技术保障团队一起挑战5K巅峰。但与此同时面临的还有个问题云梯2所有机房容量限制,导致无法扩容,必须在4个月内完成业务迁移和集群扩容。

 

48天,从1500台跨入5000台。

48天,8个极端压力测试场景,并发400K用户作业。

48天,10倍于1500台在线生产环境压力测试。

100TB 排序30分钟完成,两倍于2013年7月1日Yahoo在Sort Benchmark排序测试Daytona Gray Sort所创造的世界纪录——100TB排序完成时间约71分钟。

90天,完成集群业务大腾挪,稳定性可运维性增强,拥有了跨集群调度、计算、数据复制能力,支持无限扩展。

 

5K项目作为冰火鸟二期的收官之作,在飞天团队、技术保障部、CDO团队,齐心协力突破集群的瓶颈,成功实现超越5000跨集群计算,存储计算规模扩大(2大生产集群:2500台+5000台),项目宏大不仅体现在囊括飞天、数据平台、技术保障、从多数据平台用户、核心系统团队,上万台服务器,还体现在飞天5000台测试、10倍天网跨集群、跨飞天版本回归、动态数据比对、数据复制,多项关键技术得到突破。5K的结束标志着阿里内部的数据平台的奠基基本完成。

集群规模突破5000台,对于大数据SRE同学来说面临二个挑战:

 

只有48天要从1500台跨入5000台,之前的老大禹工具一次安装只能支持1000来台规模,时间周期长4 - 5个小时,整体项目时间压力大。

国内第一个大规模集群运维挑战,架构及技术方案都需要调整。

 

大数据SRE团队加速大禹II研发,快速支撑5K集群部署,新一代工具的上线使整个集群冷部署停服时长控制在20 - 30min内,在最短的时间支撑5K的快速部署及上线。同时,应对大规模集群运维能力升级,团队快速调整运维策略深扎于业务,建立以应用服务为核心的运维管理标准体系,完善系统化的基础环境管理、精细化监控、线上巡检,主导推进业务运维架构演进及优化。

5K收官时,在当时技术保障负责人(振飞)的全面统筹下,规划阿里史上最大规模的整机房断电演练。在整个流程中,考证了平台的健壮性以及运维保障部的统筹能力以及缜密的风险应对能力。各条线的协同能力、应急处理能力,平台层的灾难恢复能力都通过大考,最终达到断电服务总数5000台,3小时29分基本全部恢复,成功率达99.95%。同年2013年双十一购物狂欢节第一分钟成交破亿,一千多万人同时涌入天猫。这些数据在杭州淘宝城内的数据大屏准实时播报。大屏上跳动的每个数字,来自于阿里集团内部60多个系统间的紧密合作,当你在以最快速度秒杀到双十一热卖商品的同时,这些系统已经完成了无数轮的数据采集、传输、加工、计算以及反馈到页面的工作。这也是阿里实时流式计算技术的首次亮相。

 

登月计划:打造集团统一大数据平台(2014)

 

2013年随着业务规模增长迅速,数据平台集群规模已经非常庞大,单集群规模达到5000台,在5000台服务器规模的计算集群上,上百P的数据量、上万个复杂的计算任务,300多万行代码。基于之上运行的各种业务错综庞杂,新一代大数据平台的打造将给我们带来巨大的挑战。对于架构设计、网络、调度和存储性能、容错性、可运维性、稳定性、数据正确性都带来前所未有的挑战,【统一、安全、可管理、能开放】是新一代数据平台特性的高度概括,是迈进DT时代以及为集团数据业务的长远发展奠定坚实基础。

 

2013年11月由三丰提出:

 

“从服务好业务的角度出发,建设一个统一的底层大数据平台,为公司的长远发展做好技术准备。”

 

 

为此,集团制定了“登月”计划,会将阿里所有的数据整合到云梯2平台,形成统一的数据资源池,减少复制的存储及工作代价。老城区(云梯1)必须往新城区(云梯2)迁移,不仅是简单的物理迁移,而是跟着业务一起迁移,是业务的升级再造,实现数据通用。2014年1月9日 - 2015年6月30日历时1年半的完成云梯1/云梯2合并。同年云梯1整体集群正式下线,意味着阿里大数据平台正式从开源体系转变到自主研发时代。

 

最后一台云梯1 Hadoop集群的服务器,为了忘却的纪念

 

随着“云梯一”的正式停止运行,打造全集团统一的大数据平台宣告完成,同时历时18个月的【登月计划】正式落下了帷幕,阿里集团&小微集团离线计算业务全部运行于ODPS上,集群规模突破10+集群,服务器总量接近上10万,总存储能力达到EB级别。14年存储资源优化节约近200PB,真正具备超大规模海量数据处理能力。

 

ODPS的升级再造,具备了阿里新一代大数据平台能力的体现:

 

安全性:不仅仅是ODPS本身产品的安全特性,登月过程中还启动并执行了数据分级打标、数据脱敏、ODPS授权流程、虚拟域接入在云端查询版……

可管理:数据管理平台不断优化,统一任务调度中心、统一数据同步工具、统一数据地图管理、统一生命周期管理……

能开放:开放数据处理服务(ODPS)作为云产品家族的一部分正式开放给全社会使用。

 

2014双11在大数据SRE眼中有点“特别”,登月计划有条不紊的推进中,但对于运维同学来说堪比开着飞机换引擎般刺激:同时要保障云梯一&云梯二数万台服务器集群的稳定运行,面对着不同维护技能之间的切换。

 

ODPS第一次走出杭州,在内蒙、杭州双机房跨地域、多集群支撑双11海量交易。一次次在应急方案中调整策略,将各式各样的自动化脚本统一收敛到工具中,teslaV1.0上线孵化工具运维能力来实现复用和能力交接,打磨运维操作标准化减少人为故障发生,大规模集群及复杂的登月过程中保障双11大促海量数据业务稳定性。首次支撑异地跨机房配合完成双11任务,整体基线按时产出,资源充足,重要业务天猫、数据技术产品部、安全0故障。

 

阶段四:阿里大数据计算能力,走出集团服务全球

 

2015.1月数据平台(CDO)5K+项目上线,标志着大数据计算能力走出集团,支持公共云用户(御膳房)、ISV、政企用户,第一次向所有用户分享阿里大数据能力,这一年集团数据平台(CDO)回归到阿里云飞天一部,重点发展大数据计算产品服务云业务。

 

2015年6.30登月完成,云梯1正式下线开启了新一代大数据平台的时代也同时也迎来了新平台首次支撑双11的大考。

 

正式迈向全球化,全渠道新商业生态的首次整体呈现,数字经济和线下商业全面融合,全渠道打通用户管理、商品管理和服务、物流等,海量数据处理能力的大数据平台。

大数据平台首次向专有云输出,开启混合云模式为政企提供一站式的大数据开发能力。

流计算公共云对外公测,成为中国公共云环境下第一家提供流式数据处理平台的产品。

StreamComputeV1.0流计算引擎集团内发布,支持集团双11任务迁移到新平台。

阿里云数加平台正式对外发布,大数据作为云家族正式上线公共云对外提供输出能力。同年ODPS更名为“MaxCompute”,MaxCompute 2.0 的诞生实现高性能、新功能、富生态,单集群规模突破万台规模。

Dataworks完成双中心,单元化改造,2017.5-12月 阿里云数加业务从国内、海外各1个Region,快速拓展至国内、海外11个Region,覆盖华东、华南、华北,新加坡、香港、澳大利亚、德国、马来西亚、美西、美东。完成全球化拓展几个重要市场的部署和上线。把强大的计算能力输出到全球各地,打造中国大数据计算能力的生态体系。

 

2015年 - 2017年大数据平台不光承载着集团95%的计算及存储的离线大数据平台,还同时支撑着集团双11晚会媒体直播大屏现场交易大屏(首屏5秒内GMV展现)的实时计算平台,整个双11期间计算平台经受住了大规模集群、海量数据、高并发量的大数据计算要求的大考,MaxCompute单日数据处理量从2015年100PB,2016年180PB,处理能力提高80%,商户帐单等平台基线无破线,系统稳定无故障,延迟优于预期。

 

实时计算日常峰值处理的数据量可达到1亿每秒,在2017年双11更是达到了惊人的4.7亿每秒。支撑双11晚会媒体直播大屏每秒上亿条实时日志,延时3S的流式数据处理能力,除了双十一媒体大屏,流计算还支撑着阿里巴巴集团内外众多实时业务,包括数据运营、广告营销、搜索个性化、智能客服、物流调度、支付宝、聚划算等业务。流计算历经双11大考,建设主备双链路容灾、实时全链路监控、Tesla运维诊断工具实时全链路保障方案。真正具备“一站式”的的实时计算能力,提供了“一站式”的解决方案。

 

首屏5秒内GMV实时展现首屏5秒内GMV实时展现

 

保障新一代的大数据平台及流计算业务如丝般平滑、业务稳定性保障成为大数据SRE的使命,大数据运维能力向平台化和服务化发展,打造一站式自动化运维系统,TeslaV3.0全新技术架构升级实现运维能力服务化(API),统一对接集成集团公共能力,并有力支撑各产品业务平滑高效接入,低成本快速构建业务运维分站实现业务中心、集群管理、资源管理、运维中心、监控告警、故障诊断、智能预测及运营分析等功能。双11稳定性实现资源容量规划 - 业务预案 - 全链路压测 - 系统优化 - 应急预案 - 值班保障全流程自动化落地,实时链路备战平台自动化和用户自助化执行上百轮压测,流计算调优人力成本下降50%以上。

 

阶段五:大数据技术创新的全新时代

 

2017年6月,计算平台事业部成立,随着专有云百套大数据平台输出、突破万台规模,公共营收破亿,大数据平台成立之初的愿景经过一步步努力逐步实现,靖人统领进入全新技术创新时代:

 

 

MaxCompute适配TPC benchmark,将BigBench测试规模拓展到100TB,于10月完成全球首次基于公共云的BigBench大数据基准测试。不仅在数据规模上超越已有成绩10倍,在性能上更有近5倍提升,达到7830QPM,并且通过核算,我们的性价比较当前已有的最高性价比提升了近一倍。 在12月北京云栖大会上再次挑战极限,全球首次现场直播基于公共云的BigBench评测,历时二十余小时,超越10月结果,以8200QPM向世界展现“中国计算,世界能力”!

 

MaxComputeLightning 以大数据助力新零售:首次赋能上千家商家侧闭环联动, 助力决策层、运营、产品、算法、以及商家等多角色决策过程。技术上,将实时计算与离线计算结合,将离线和实时数据结合下的查询响应缩短到亚秒级,并支持交互式查询;Lightning平台将作为一个DaaS 平台长期服务阿里内部交易类查询需求,让交互式业务开发更便捷;在Lightning上的成功,也验证了交互式查询的方案,为MaxCompute(ODPS)明确了下一步技术发展方向。

 

MaxCompute架构升级, 在NewSQL+富结构化+联合计算平台+AliORC 多个方向上发力,继续构建高可用、高性能、高自适性的一站式的大数据解决方案开放平台, 推进了MaxCompute(ODPS)生态的繁荣。

 

DataWorks全新启航,构建集数据研发、数据集成、调度管理、资产管理、实时分析、质量监控等功能于一身的,支持大规模协同可视化开发和精细化管理运维的WEB版大数据一站式平台。正式构建航母战斗群,让每个小二都具有调动航母的能力。

 

存储计算分离架构和混部技术肩负着资源复用与技术探索的重要使命,解决机型采购与预算、大促成本、提高调度效率三大问题,核心技术达到世界领先水平,成功支撑双11电商混部在线流量19.5%,蚂蚁混部承担20%交易支付流量。

 

DataHub是基于阿里自研的飞天平台,具有高可用,低延迟,高可扩展,高吞吐的特点的PB 级的数据总线,负责从全球数十个机房实时地收集应用日志、数据库变更以及消息事件等增量数据,并投递给下游交互式查询、实时推荐、广告计费、流计算和离线计算等场景。在2017年完成架构升级:TT无缝迁移至DataHub,首次做到实时数据双机房强一致容灾;整机房故障分钟级恢复,数据无缝衔接。

 

2017年5月,为了集中优势兵力大力发展实时计算,Galaxy、JStorm和Search dump三支实时计算资源整合,宣告阿里实时计算迈入新的里程碑。由于实时任务是7*24不间断运行,这次引擎的统一,时间窗口有限,操作复杂,对技术和业务都是极大的挑战,但半年之后80%的任务就迁移到Blink并以每秒4.72亿条的实时日志处理,3S延时支撑MPV媒体大屏的数据秒级呈现通过双11大考,整体完整的润物细无声。

 

这些创新技术使2017年的双11接受到不一样的挑战:

 

电商蚂蚁混部:离在线、在离线、存储计算分离。

实时计算迁移:galaxy迁移blink。

数据通道迁移:TT迁移Datahub且具备同城容灾能力。

 

而最终技术小二们拿出了漂亮的成绩单:

 

MaxCompute单日数据处理量再创新高300+PB,集团基线比既定目标提前1小时产出,计算时间缩短15%。连续三年无基线破线故障,稳定提前产出。

Lightning 闪电计算平台,图计算反欺诈双11实战大放异彩。

实时计算blink则以每秒4.72亿条的实时日志处理,3S延时支撑GMV媒体大屏的数据秒级呈现。

存储计算分离架构和混部技术成功支撑双部分11电商混部以及交易支付流量。

数据通道TT迁移datahub,做到实时数据双机房强一致容灾;整机房故障分钟级恢复,数据无缝衔接,进一步提高链路性能。

打造tesla备战平台,实现全链路的元数据管控、一站式的备战体验(保障申请、容量对齐、压测、降级等)以及数据全链路的监控及分析。

 

2018年

 

从“双11技术”到“技术双11,阿里第10个双11,大数据平台能力持续技术创新技术全面整合顺势演进:

 

更大规模离在线混部技术支撑双十一交易;

一路向北的机房迁移张北混部集群;

上十万台OS自动化升级到7U。

 

大数据SRE肩负着保障在高频,高额,高密度的交易场景下,有效保证线上业务的高可用、稳定性,提升效率,降低成本的使命,构建运维数据的数据仓库并开始探索智能化运维领域,以数据化的方式实现系统故障自愈闭环,统筹优化、在2018年离线及实时计算运维在全面提升变更自动化、用户自助全自动变更的同时,实现全链路智能监控、全自动免人干预压测演练、一路向北数据智能一键迁移及OS7U全自动升级,同时打造离线/实时业务稳定性数据监控大盘,系统直观清晰可见系统及业务运行状态。

 

小结:构建完整的大数据平台成为业务强有力支撑

 

在无数人的共同努力下,阿里拥有了经过阿里巴巴自身业务场景高强度验证的,具有真正企业级服务能力的大数据智能计算云平台。我们的愿景是同样的技术通过云平台普惠到全球,服务于各行业的企业用户。

 

伴随着批处理、流计算、离线计算、机器学习一系列的计算能力进化,联合计算,智能化和企业级服务能力,构建完整的大数据平台己成为了阿里巴巴经济体以及阿里云背后计算力的强有力支撑。从数字化阿里巴巴,到数字化企业,再到数字化城市,我们将不断以技术驱动平台和产品化发展,让企业和社会能够拥有充沛的计算能力,持续快速进化,驱动数字中国的发展。