Decentralized Actor Scheduling and Reference-based Storage in Xorbits: a Native Scalable Data Science Engine
论文作者:鲁蔚征,惠超,汪云海,张峰,陈跃国,刘宝,李成杰,吴昭欣,秦续业
通讯作者:陈跃国
论文简介:在数据科学领域,处理大规模数据并维持与流行单机库(如 pandas)兼容的 API,对任务调度和数据存储管理提出了极高要求。现有的系统在调度任务和细粒度的中间数据管理方面存在不足。为此,中国人民大学、山东大学与 Xorbits 公司的研究团队联合在 VLDB 上发表论文,提出了基于去中心化 Actor 模型(Xoscar)的可扩展数据科学引擎,为数据科学工作负载的扩展提供了创新解决方案。
传统数据科学流水线涉及数据加载、预处理、转换和分析等环节。当工作负载规模扩大时,现有系统如 Dask、Modin on Ray 等依赖集中式调度器协调任务执行,易形成系统瓶颈;而 Ray 的对象级数据 API 无法满足如 groupby 等操作对细粒度数据 shuffling 的需求,导致内存管理低效、数据倾斜等问题。例如,在分布式环境下执行 groupby.agg 操作时,Modin on Ray 因粗粒度存储管理导致内存失衡,甚至无法完成任务,而 Dask 则因调度效率低下出现显著的工作节点空闲。
研究团队从底层涉及分布式执行引擎,通过两大核心技术突破现有瓶颈:
(1)去中心化 Actor 调度模型 Xoscar
Xoscar 采用基于 IP 地址的 Actor 创建与引用机制,无需全局调度器即可实现高效任务分配。通过最近公共后继增强的广度优先搜索(BFS)算法,将任务图中的节点分配至相同或邻近的计算节点,最大化数据局部性。实验表明,Xoscar 的任务调度速度比 Ray 快 8 倍,有效避免了集中式调度的性能瓶颈。