开源云数据编排软件开发商Alluxio近日宣布,全球领先的L4级自动驾驶技术智能出行公司文远知行WeRide已将Alluxio数据编排软件作为混合云存储网关,用于本地应用程序对AWS S3等公共云存储的访问。这一新的数据架构为每个位置都提供了本地化缓存,消除了对S3的冗余请求。除了解决手动数据同步的复杂性问题之外,Alluxio还直接将数据提供给位于同一办公室处理相同数据的工程师,规避与 S3相关的传输成本,同时将终端用户的工作效率提高数倍。
迄今为止,WeRide已累计自动驾驶里程达450万公里,随着更多测试车辆投入使用,数据采集率只会越来越高。除了从试驾收集的数据之外,仿真、SIL(软件在环)测试和模型基准测试等应用程序每天也会产生数 TB 的数据。WeRide 是一家全球化的公司,跨办公室的不同团队并行生成和使用数据,并使用AWS S3 作为数据湖。
WeRide面临的数据挑战
文远知行WeRide基础架构与仿真执行总监 Derek Tan表示:“在为我们的自动驾驶汽车设计新算法或修复现有算法中的错误时,我们的工程师需要根据现有数据对算法进行测试。而我们当前的数据架构导致了一些瓶颈,如开发迭代缓慢、产生不必要且高昂的数据导出成本以及数据同步容易出错等。” 例如,在开发或调试前,开发人员需将最新的数据从云端下载到本地环境中,而下载通常受到下载速度和网络带宽的限制。每次从S3下载数据时,出口数据传输都会产生费用。通常调试一个问题的数据传输成本加起来可达5美元。如果多人协作,即使是下载相同的数据,成本也会成倍增加。WeRide构建了一个自定义数据上传流程,将数据复制到云端并在NAS或HDFS中保留一份本地副本。本地副本可让工程师更快地访问数据,因此是必要的,但也会导致数据同步问题。目前,WeRide通过运行cron作业定期清理本地数据来维护本地副本。
使用Alluxio后的新架构
WeRide决定找寻一种能满足其解决方案要求的既有技术,该技术应是一种低成本或无成本的成熟技术,已经过大规模数据访问的实战测试,随时可用且易于集成,并且不会引入新的 ETL 作业, 同时需允许WeRide在预算许可的情况下使用更好的硬件来进行扩展。
“考虑到上述筛选技术的标准,Alluxio 成为了WeRide在加速数据访问上首选技术,”Tan 表示,“除了与 S3 兼容之外,Alluxio还通过其 POSIX 和 HTTP 端点提供了便捷的访问界面。Alluxio 作为一项开源技术,可以整合到我们的系统中,而不会增加额外的商业成本。”
Alluxio部署
在WeRide的各个办公室都将 Alluxio作为一个小型本地集群进行部署,同时将 S3作为数据源。路测数据直接上传到本地Alluxio集群,同一办公室的工程师即可立即使用数据。同时,Alluxio会在后台自动上传路测数据至S3。如果其他办公室的工程师需要使用路测数据,可通过本地的 Alluxio 集群发送请求。如果请求的数据已在Alluxio中缓存,数据将立即返回,否则将从 S3 抓取数据。为了进一步减少从 S3 抓取新数据的时间,WeRide与 Alluxio 团队合作实施了分布式加载命令,该命令可打开多个同步连接进行数据下载。使用 Alluxio后,从云端获取的应用程序数据也会缓存在本地,而在以前,如果数据不是从同一个办公室上传的话,是不可能实现的。
使用Alluxio后取得显著提升
Tan表示:“我们在使用 Alluxio后实现了诸多提升,包括通过使用单一界面访问数据降低了数据同步的复杂性且无需维护一份自定义本地副本;针对云数据的本地缓存拥有开箱即用的解决方案;快速的数据访问实现了工程生产率提升;此外,也降低了下载冗余数据的S3数据输出成本。”
Tan 总结道:“WeRide 旨在为未来提供 L4 级自动驾驶技术。数据访问是开发智能出行的关键环节。采用 Alluxio 作为本地缓存,消除了对 S3 的冗余请求,解决了数据同步的复杂性问题,为每位工程师在调试每个问题时节约了至少 5 美元的数据传输成本。 我们期待与 Alluxio的进一步合作,以经济有效的方式实现我们的数据访问目标。”
“WeRide 目前使用的Alluxio 数据编排系统,是将本地机器学习应用程序与云端数据连接起来的重要环节,” Alluxio 创始人兼CEO李浩源表示,“我们很高兴能与 WeRide 推进后续合作,增加更多与数据管理策略相关的功能,为WeRide的工程师带来更多价值。”