T3出行的数据处理与特征平台
现代数据栈 (Modern Data Stack)
- 特点:
- 更简单和通用
- 数据处理领域
- 技术栈、技术组件的组合
- 组成:
- 统一存储:解决数据孤岛、降低数据环境复杂度
- 数据处理:原始数据加工、转换、ETL、任务调度
- 数据智能:大规模机器学习和深度学习
- 数据分析:提取有用信息和形成商业结论
T3出行的业务场景
- 公司背景:基于车联网驱动的智慧出行平台,拥有海量且丰富的数据源
- 主要挑战:
- 车联网数据多样性
- 随着业务发展,数据量增加
- 传统数仓架构遇到挑战
- 数据特性:
- 支付长尾:下次出行前支付
- 订单支付率时间
- 非结构化数据:视频数据、小文件问题
- 车联网数据:小批量数据、低延迟
数据处理
- 技术栈:
- Apache Hudi:流式湖仓一体平台,支持快速更新
- Apache Kyuubi:Thrift JDBC/ODBC 服务,多租户和分布式 Servless SQL
- Spark Engine, Presto Engine: 数据处理引擎
- Flink: 实时计算框架
- Dolphin Scheduler: 任务调度
- Kafka: 消息中间件
特征平台
- 作用:
- 统一特征输出:减少沟通成本,提高迭代效率
- 特征复用:统一接入和上线流程
- 质量监控:监控特征数据质量和使用频次
- 技术栈选型:
- MetricFlow:指标即代码,数据连接器,Python SDK,物化
- Feast:开源特征存储组件
- 内部架构:
总结
现代数据栈旨在简化数据管理,让用户更加关注数据本身而非组件本身。T3出行基于数据湖构建现代数据栈,并初步打造了特征平台,希望通过现代数据栈更好地推动业务,同时降低开发和维护成本。希望现代数据栈在国内有更好的发展。