《上海交通大学学报》
过敏意
这是一个大数据的时代。
一个人的消费行为、支付行为、娱乐行为、社交媒体行为,甚至行动轨迹等都在为大数据这座摩天大楼添砖加瓦。
大数据可以有多大?
举一个简单的例子,2019年天猫“双11”开始后,仅14秒成交额就破了10亿元。2018年天猫“双11”全天交易额为2135亿元,而2019年用了16小时31分就达到了这个数值。第三方机构数据显示,淘宝App当天的日活跃用户比2018年同期增长9638万,达到4.76亿。对日活过亿的淘宝来说,在类似“双11”这种特殊时刻面临的用户骤然上涨就是一个“突变型峰值”——扛不住的话,轻则响应缓慢,重则系统崩溃。
更重要的是,在大数据时代,不是只有“双11”才会遭遇“突变型峰值”。春晚当天的实际登录量,可能是“双11”的十几倍;而,春运40天每天都是“双11”。就连新冠肺炎疫情“众宅”期间,中国网民每天花在移动互联网上的时长都比2000年年初增加了21.5%。
截止到2020年6月,中国网民人数已达9.4亿,并且依然处于增长状态。这意味着,在我国,“突变型峰值”的场景只可能增多,不会减少。站在数据洪流中,如何应对日益增长的互联网服务应用需求,这也是摆在过敏意面前的重大课题。
云上的“双11”
对于一家企业来说,当一台服务器的运算能力不足以满足运算需求时,就需要企业购置多台服务器,甚至演变成为一个具有多台服务器的数据中心。但问题是,初期建设成本已经很高了,可中心要运营下去,消耗的电费以及维护支出,可能比建设成本还高,普通的中小型企业难以承担。
“云计算”就是为了解决这个问题出现的。它本质上是一种提供资源的网络,打个比方,这里的“云”就像水、电、燃气一样,用户可以随时取用,不限量,但需要按照使用量付费,这时的使用成本当然远低于用户自己去建造一个“自来水厂”或“电站”。在云计算面世之初,这种近乎无限的资源量和弹性能力,就是其最鲜明的卖点。
即便如此,当传统云计算遇到突变型峰值,还是有心无力。突出问题表现为:“成本高”——应对峰值需求预备容量,成本不节约;“延迟长”——云中低算力节点负载高,调度不均衡;“吞吐低”——存储设备扩展故障剧增,回复不迅速;“扩展慢”——服务镜像仓库网络拥塞,分发不及时;“运维难”——专家经验演进和查询慢,分析不智能。
这样的云计算,真的能扛过突变型峰值吗?
“云计算是今后几十年企业的使能性技术,是发展趋势。”过敏意坚信,只要能让云计算把优势发挥出来,就能找到一个最优解。
事实上,阿里巴巴也愿意相信他的判断。自从2009年计划推出天猫“双11”起,阿里巴巴就预料到突变型峰值势必会给计算服务带来巨大的流量压力,可能超过日常情况几十倍,甚至几百倍。怎么办?总不能因为有百倍的流量压力就购买百倍的服务器来解决问题吧。那可太贵了。不只是造价贵,阿里巴巴当然可以按照“双11”的用户量来准备服务器,但一年有几个“双11”这样的盛况呢?他们更不想看到精心打造的服务器资源一年中大部分时间都在被浪费。可云计算的问题怎么办?
当然是迎难而上。
彼时,过敏意刚从日本回国不久。对他来说,辞去日本会津大学终身教职的一个重要原因就是要走出舒适区,迎接更具挑战性的生活,为中国科技事业做贡献。对认准了的事,他有一股“一根筋”式的执拗,为了得到圆满的结果,他带着团队与阿里巴巴一合作就是十余年。
突变峰值的挑战不是单一技术点就可以应对的,过敏意带领的上海交通大学团队就开始和阿里巴巴团队探索混部技术,希望通过将在线业务和离线大数据计算的负载混部运行在共享的集群中,来显著提高数据中心资源利用率。
举个例子,在数据中心日常态下,在线业务普遍资源利用率较低,且业务峰值压力时间短,或固定在大促脉冲波峰时间,白天压力较大,且对延迟和抖动敏感;离线业务正好相反,平时资源使用压力较高,业务资源使用较为固定,主要资源压力集中在晚上,重视高吞吐,但对时延不敏感。
这时候,在“容器和混部技术”的“统筹”下,服务器能够将相同/相似需求合并处理,同时识别任务的轻重缓急,优先处理对时效要求高的任务。那问题来了,服务器会因为收到这样的“指令”有针对性地减缓执行速度吗?又会不会牺牲掉被定义为“轻”“缓”部分用户的体验呢?