基于 Ray 的分布式数据构建引擎在搜推与 RAG 场景的深度实践

2026年3月25日

28

625

基于 Ray 的分布式数据构建引擎在搜推与 RAG 场景的深度实践

在现代互联网体系中,搜索推荐系统的精准程度直接决定了用户体验与业务转化效率。而这一切的底层支撑,正是海量数据的高效构建与处理能力。传统架构在应对指数级增长的数据规模时,逐渐暴露出资源调度僵化、运维成本高企、稳定性难以保障等诸多挑战。如何在保证系统稳定性的前提下,实现数据处理效率的质变,成为各大厂技术团队共同面对的核心命题。

弹性调度与资源优化

蚂蚁集团智能引擎部基于 Ray 分布式计算框架,构建了新一代数据构建引擎,全面支撑全站万亿级正排、倒排、KV、KKV 索引的高效生成。原生的 C++ 索引构建引擎虽然功能强大,但在面对海量任务的高并发调度时,资源争抢、OOM 失败等问题频发,长尾场景下的执行效率也难以满足业务需求。通过引入 Ray 的弹性调度与任务编排能力,系统实现了任务级的动态资源申请与释放,显著降低了对底层 Kubernetes 容器平台的冲击,整体运行成功率提升至 99.9% 以上。

架构迁移的技术实现

在资源弹性调度层面,Ray 框架的动态资源管理能力得到了充分发挥。传统架构依赖十余种容器规格,导致调度复杂、资源碎片化严重。迁移后统一为大小两类标准规格,结合 Ray 的动态资源分配策略,实现了任务按需调度,大幅降低了调度开销。在长尾场景优化方面,通过构建 Processor-Builder-Merge 三阶段流水线,实现了多任务并发调度与资源复用,100GB 以下小表索引的 P95 构建耗时从数十分钟降至约 10 分钟,整体提速超过一倍。

架构升级的本质是让系统具备自我调节与持续演进的能力,而非单纯追求性能指标的突破。

“技术观察”

迁移过程中的技术细节同样值得深入探讨。为支持原有 200 万行 C++ 代码的平滑迁移,团队深度集成了 Ray C++ API,实现了对 Processor、Builder、Merger 等核心组件的高效调用。同时,将原基于容器的 PBM Worker 改造为轻量级 Ray Actor,实现从容器粒度到进程粒度的演进。Actor 模型支持轻量级启动与状态持久化,大幅降低了镜像拉取与初始化开销。基于 Ray Job 模型重构的上层作业调度体系,引入统一管控入口,通过 Rest API 动态创建各类 Actor,结合 SyncTarget 机制实现跨阶段数据同步。

在 RAG 场景方面,为应对数据处理流程碎片化问题,团队构建了统一的算子体系,覆盖算子市场、编程范式与服务 SLA 保障三大层面。通过抽象通用处理链路(如 Parse、Chunk、Embedding、Indexing),实现了跨业务域的标准化与可复用,支撑离线批处理、实时流与在线服务等多模态场景。算子市场提供了租户隔离、按量计费与动态注册能力,基于注解驱动的编程模型确保了接口规范的一致性。

RAG 算子体系建设

在执行层设计方面,通过 Code Gen 模块实现了算子一次开发、多场景部署的能力。Ray 作业模式支撑海量非结构化数据的批处理场景,Ray 集群模式支撑响应要求较高的异步场景,在线服务模式则支撑响应要求极高的实时推理请求。这种多模态的执行架构,确保了不同业务需求下的灵活适配。

如有侵权,请联系删除。

Related Articles

联系我们 预约演示
小墨 AI