一、背景及挑战
在汽车自动驾驶场景中,车端(量产车、研采车)持续产生并采集海量数据,包括图片、音视频、雷达、GPS等内容,这些数据通常以 ROSbag文件形式进行存储。
行业需求:
自动驾驶依赖海量多模态数据(视频、点云、传感器日志等),需高效处理、分析及管理。
核心痛点:
开发环境配置管理复杂
-
开发环境往往较为复杂,依赖 Python 环境、自定义镜像、Docker、K8s 等基础环境,需要开发人员花费大量时间自行配置环境及相关依赖,开发复杂度极高。
-
不同业务产线作业可能依赖不同环境、版本,开发人员需要自行保障环境、版本的一致性,导致运维成本极高。
计算资源调度不够灵活
-
传统方式缺乏灵活、自动化的分布式调度功能,导致资源利用率不理想且作业并发受限。
-
可扩展性限制,自动驾驶数据处理场景存在明显的业务/任务峰谷期,在工作负载高峰期,传统方式资源无法快速、弹性扩容以应对突增的数据处理需求,从而导致任务执行延迟和潜在瓶颈。
海量多模态数据处理性能压力大
-
自动驾驶场景单车日均产生TB级数据(如视频、点云、传感器日志),传统框架(如单机 Python)难以应对如此数据量级与处理复杂度。
-
在进⾏⼤规模数据处理时,传统架构缺乏容错机制,可能出现因为部分长尾数据 OOM 导致整体作业失败,影响整体数据产出效率。
任务及数据管理复杂度高
-
传统开发方式缺乏有效的元数据及数据血缘管理,导致无法追踪任务执行状态、数据处理情况,使得后续作业任务及数据分析困难。
-
传统框架缺乏针对失败任务的自动重新运行机制,增加了作业维护开销。
二、核心架构
基于阿里云 MaxCompute 分布式计算框架MaxFrame、DataWorks、PAI、OSS 等产品构建自动驾驶端到端数据处理流水线,实现从车端数据采集、数据预处理到模型训练的全流程管理。
核心目标:
-
高效、稳定处理解析ROS Bag包:实现多传感器数据(激光雷达、摄像头、GPS等)的分布式解析。
-
构建端到端流水线:从数据采集、预处理、标注到模型训练,形成可扩展的自动驾驶数据闭环。
-
云原生架构优势:利用阿里云云原生 MaxComoute 弹性资源调度能力,降低成本并提升处理效率。
整体架构:
阶段一:车端数据上传与解析
车端持续产生海量数据,包括文件上传进度信息、视频图像文件等。采用 DataHub/Kafka 确保文件上传进度信息稳定传输。借助DataWorks,实现数据预处理任务一站式开发和调度,无论是数据清洗、格式转换,还是数据同步,都能高效完成。
阶段二:高效数据存储与管理
OSS提供海量存储空间,安全存放bag文件、原始及切帧后的CLIP文件,上下行带宽可达上百Gbps,大幅缩短文件传输时间。MaxCompute可以实现大规模文件元数据存储与管理,通过meta表、tag表记录数据下载和预处理过程中的的任务状态更新,以及CLIP文件的tag信息,并监控失败任务进行重跑。
阶段三:海量数据弹性计算与调度
依托 MaxCompute Serverless 弹性计算能力,可快速拉起并提供数十万+CU 弹性计算资源能力,同时基于分布式计算框架MaxFrame,支持作业自动分布式执行,单作业可调用数万Core/内存,轻松应对自动驾驶海量数据计算需求。
阶段四:稳定高效的模型训练
PAI具备上千节点并发的离线大规模分布式训练能力,大幅缩短模型训练时间,结合并行文件系统CPFS,为训练过程提供稳定、高速的数据读写支持,助力自动驾驶模型持续优化升级。
三、方案优势
在汽车自动驾驶数据处理场景中,MaxCompute 主要完成对车端采集的大量 bag 包进行解压、处理等工作,基于 MaxCompute MaxFrame 高效、稳定的完成端到端数据处理流程。
基于 MaxFrame 的数据处理流程架构
核心优势:
1、一站式开发环境管理
-
MaxCompute MaxFrame 与DataWorks(数据开发、Notebook)深度集成,提供开箱即用的交互式 Python 开发环境,并且支持作业离线调度、运维能力。
-
MaxCompute 及 DataWorks 支持并打通用户自定义镜像,同时在 MaxFrame开发中可直接引用用户镜像,方便开发者快速搭建、管理开发环境,满足个性化开发需求。
2、海量弹性计算资源灵活调度
-
MaxCompute支持灵活、按需的弹性资源使用及付费方式(包年包月+按量计费),显著降低闲置资源成本,最大化计算资源利用率。
-
依托MaxComputeServerless 能力,可支持快速拉起并提供数十万CU 弹性计算资源能力。
3、高效的分布式处理性能
-
基于分布式计算框架 MaxFrame ,作业提交至MaxCompute 后自动分布式执行,相比开源框架性能提升40%以上,用户无需关注底层分布式计算细节,专注于业务逻辑。
-
在MaxCompute集群中直接进行数据分布式计算,无需本地数据传输,减少数据传输开销,提高计算效率,尤其在处理大规模数据时优势明显。
-
MaxFrame 支持上万级别的高并发、分布式处理能力且根据任务负载自动弹性伸缩计算资源,合理分配资源,快速处理海量数据,大幅缩短数据预处理周期,加速后续模型训练,同时显著降低资源成本。
4、统一的元数据管理
-
在 MaxFrame 作业中可一站式实现车端采集数据预处理和处理流程的meta数据记录,方便作业及数据跟踪。
-
DataWorks、MaxCompute 支持作业级别失败重试、Worker 级别部分提交,保障作业稳定性及最大化结果数据产出。
核心优势总结:
