近日,体系结构顶级会议ASPLOS首次在中国举办,阿里巴巴副总裁、阿里云首席科学家周靖人发表主旨演讲,介绍了阿里巴巴云的大数据和AI计算平台,以及其中广泛的产品和服务。同时透露阿里接下来将在图计算和大规模机器学习领域进一步发力。
随着物联网传感器、移动应用和在线服务的普及和广泛应用,越来越多的数据以流的形式源源不断的产生。基于数据流的实时分析变得越来越重要,例如实时化的商业决策依赖高时效性的报表,在线服务优化需要动态捕捉用户行为等。
这一系列应用的背后离不开大规模流计算平台的支撑。从系统架构角度,海量数据流输入需要大规模集群,7x24不间断地连续计算,同时满足高吞吐和低延时。大规模集群中各种软、硬件故障和网络异常,以及输入流量和数据的动态变化等,都会给流计算带来极大的挑战。
阿里大数据平台在2016年双十一支撑了每秒近1亿日志事件的计算峰值,在6小时内成功处理了100PB的数据,在这一方面经验颇丰。
阿里在流计算方面突破
演讲中,周靖人以容错为例介绍了阿里系统设计中的一些关键技术。所谓容错,就是当计算结点发生故障时,由于数据流的连续性,对上下游都会产生影响,同时计算状态也会丢失。相比离线计算,复杂的系统依赖使得如何自动恢复流计算过程中的错误,成为关键挑战。
周靖人介绍说,业界和开源的流计算系统,往往以单一容错策略为基础来设计系统,如输入重算、全局快照和mini-batch。而真实场景中的大规模流计算应用,往往由多个相互关联但对计算吞吐和延时要求不尽相同的部分组合而成。
例如某个高吞吐的输入流和按小时更新的数据集合之间的关联计算。由此对不同部分的容错需求就需要相应采用不同的策略,而如何在同一系统设计中允许组合不同的策略,是问题的关键。阿里在这方面做了很多创新的工作,例如在上下游之间建立虚拟管道抽象,将容错设计和正确性分析与系统实现、优化机制解耦。不但降低了系统的复杂性,还允许系统根据场景,灵活实现和组合多种策略,应对大规模集群中各种复杂情况。
图计算3大挑战
据周靖人介绍,图计算是阿里关注的重要技术之一,可以将电商平台、用户产品、支付宝账户等大量信息作为节点来建模处理,基于此可以产生很丰富的分析场景,当前图计算已经在阿里搜索推荐、反作弊、知识图谱等领域大规模应用。
靖人指出,由于实体模型中,存在许多关系以及数十亿的结点和边,并且以很快的速度动态更新,实时并发更新图数据的同时进行复杂的图分析是留给工业界和学术界的课题。具体来说存在3个方向的挑战。
- 挑战1:图可视化,即如何有效地将图背后的特征和信息展现出来,更好地与人交互,辅助推理、分析和决策。
- 挑战2:模式匹配,根据业务的特征,在复杂关系网络中定义并识别核心模式,并在大规模图中实现快速匹配。常用的场景有反欺诈、风险控制和ID映射等等。
- 挑战3:处理快速变化的图,也就是当图节点和边动态更新下的图计算问题。
此外,如何将图计算和机器学习结合,利用人的在线行为模式来进一步提高推荐、搜索等效果,也是阿里技术人员正在解决的难题。
周靖人认为,阿里机器学习的优势来源于对亿万数据样本和特征的高效利用,阿里的服务器架构就是为了处理如此庞大的模型和数以亿计的参数而开发的。“目前阿里大规模机器学习平台,可以统一支持深度学习模型训练以及模型更新,此外我们也建设了CPU、GPU、FPGA异构计算平台,可以针对不同业务特点做机器学习的计算优化”。
目前,阿里正在和知名高校在图计算和大规模机器学习领域搭建合作平台,希望和学界一起推动这些领域研究的快速发展。这也是阿里此前公布的“NASA”计划中的重要技术布局之一。