写在前面
随着滴滴内部技术栈的不断统一,实时相关技术组件资源的不断整合,各业务线实时数据相关开发经验的不断沉淀,基本形成了一套面向公司不同业务场景需求的最佳技术选型和具体落地方案。但同时我们也发现,大部分实时开发同学在做实时数据建设过程中会笼统的把实时数据建设等同于 flink 数据开发,常常把实时数据处理过程中的其他相关组件放在边缘位置,无法高效的整合数据处理组件来完成不同业务场景的实时需求。为此,我们从当前公司内的典型实时数据开发方案出发,整理了不同场景下的实时数据建设技术选型,帮助大家更好的进行实时数据建设,为业务持续输出高质量且稳定的实时数据价值。
本篇文章分为:
1. 实时数据开发在公司内的主要业务场景
2. 实时数据开发在公司内的通用方案
数据源
数据通道
同步中心
实时开发平台
数据集
实时数据应用
3. 特定场景下的实时数据开发组件选型
实时指标监控场景
实时 BI 分析场景
实时数据在线服务场景
实时特征和标签系
4. 各组件资源使用原则
5. 总结和展望
1. 实时数据开发在公司内的主要业务场景
目前公司内各业务线使用实时数据的主要场景分为四块:
实时指标监控:例如产研侧指标稳定性监控,业务侧实时指标异常波动监控,运营大盘业务健康度监控等。这类场景的主要特点是对数据及时性要求很高,且高度依赖时间序列,主要依赖时间轴作为分析度量,数据分析复杂度一般。
实时BI分析:主要面向数据分析师和运营同学配置实时看板或者实时报表,包括公司运营大盘、实时核心看板,展厅实时大屏等。这类场景的主要特点是对数据准确性要求极高,对数据及时性容许有一定延迟,需要支持较复杂的数据分析能力。
实时数据在线服务:主要以 API 接口的方式提供实时指标,多用于为数据产品提供实时数据。这类场景对数据及时性和准确性要求较高,指标计算复杂度一般,对接口查询QPS 要求非常高,在提供实时数据的同时需要保证整个服务的高可用。
实时特征:主要用于机器学习模型更新、推荐预测、推荐策略、标签系统等方面。这类场景对数据及时性、准确性、查询 QPS 要求一般,但其本身实现逻辑对实时计算引擎的使用要求较高,要求实时计算引擎有较强的实时数据处理能力,较强的状态存储能力,较丰富的外部组件对接能力。
2. 实时数据开发在公司内的通用方案
公司内实时数据开发通用方案组件主要包括:实时数据采