Meta开源与英特尔、字节跳动与Ahana共同开发的统一执行引擎Velox,这是一个加速资料管理系统并简化其开发的函数库,Velox目前仍在开发中,但是已经被验证可提高资料管理系统的效率和一致性,Meta认为,Velox有助于集成和统一资料管理系统,因此希望开源社群加入项目贡献,加速函数库开发和采用。
在Meta有数十个人信息料运算引擎,组成庞大的基础设施生态系统,以支撑Meta所提供的产品和服务,这些引擎处理着不同的工作负载,包括SQL分析、流媒体处理以及资料截取等,而且在人工智能和机器学习用例快速发展下,特征工程、资料预处理和其他用于机器学习和服务的引擎和函数库随之增加。
Meta提到,虽然资料运算引擎有其相似之处,但是引擎大多是独立发展,这种碎片化让维护和改善这些系统变得困难,而且执行这些工作负载的硬件也会逐渐更新,最终导致系统具有不同的功能集和不一致的语义,降低整体资料功能集的生产力。
为了要解决这个问题,Meta打造了Velox来构建更高效的基础设施架构,Meta提到,这是一个最新的统一执行引擎,目的是要加速资料管理系统,并且简化开发。Velox统一了资料运算引擎常见的资料密集组件,但同时又可扩展和适应不同的计算引擎,其扩展原本仅能在个别引擎进行的优化,并且实现一致语义框架,如此能够减少重复工作,提高重用性同时增加了效率和一致性。
Meta进一步解释,资料运算引擎皆由相似的逻辑组件组成,包括语言前端、中介表示、优化程序、Runtime和执行引擎,而Velox提供构建执行引擎所需要的模块,包括所有在单个主机执行的资料密集操作,像是表达式评估、聚合、排序和联合等,简言之就是资料平面。
Velox通过统一函数库集成资料运算系统的执行引擎,能够让资料运算系统更具适应性,目前Meta已于十几个人信息料系统集成Velox,包括Presto、Spark和TorchArrow,还有各种内部流媒体处理平台、资料截取系统和用于特征工程的机器学习系统等。Meta希望通过构建开源社群来支持Velox项目,并且统一各资料运算引擎孤岛,模糊机器学习基础设施和传统资料管理系统之间的界线。