Modern Data Stack 与 T3出行应用
Modern Data Stack 定义与特点
Modern Data Stack 是指一套简化数据处理的技术组件组合,其特点在于更简单、通用,专注于数据处理领域。其核心目标是实现数据到知识的转化,通过统一存储、数据处理、数据智能和数据分析等技术栈,解决数据孤岛问题,降低数据环境复杂度。
T3出行业务场景与挑战
T3出行作为基于车联网的智慧出行平台,面临海量且多样化的数据源。传统数仓架构在业务发展过程中遇到支付长尾问题(如超长业务闭环窗口、冷热数据随机更新)、业务系统数据摄入问题(如非结构化数据、小文件处理)以及算法业务场景(营销、风控、运力调度)等挑战,亟需新的架构迭代升级。
T3出行MDS初步打造
T3出行基于Modern Data Stack进行架构升级,初步打造了以下技术体系:
- 统一存储:采用Apache Hudi实现流式湖仓一体平台,支持海量数据快速更新和事务管理。
- 数据处理:通过Apache Kyuubi提供Thrift JDBC/ODBC服务,支持多租户和分布式SQL处理。
- 数据分析:结合Spark和Presto引擎,通过Kyuubi Gateway连接BI工具,实现数据存储和计算。
- 数据处理流程:利用OBS、YARN、Flink和Dolphin Scheduler等工具,实现数据接入、计算和调度。
特征平台On MDS
为提升特征加工迭代效率,T3出行构建了特征平台On MDS,其作用包括:
- 统一特征输出:通过平台减少沟通成本,提高迭代效率。
- 特征复用:统一特征接入和上线流程。
- 质量监控:监控特征数据质量和使用频次。
- 技术栈:采用Metricflow作为指标工具,Feast作为特征存储组件,支持结构化和非结构化数据管理。
- 内部架构:通过Metricflow语义层和Feast特征存储,实现元数据统一管理和数据集拓展。
总结
Modern Data Stack的目标是简化数据管理难度,让用户更关注数据本身。T3出行在数据湖基础上探索Modern Data Stack,初步打造了特征平台,通过技术升级推动业务发展,降低开发和维护成本。未来希望Modern Data Stack在国内有更好的发展。