美团批流一体理念在具体业务中的分析应用实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 美团批流一体理念在具体业务中的分析 n o l a S 应用实践 h T M c e T 王岳庆 2022年6月25日 美团到店事业部
2. 个人介绍 h c e T T M a S n lo 美团技术专家 2019年加入美团,负责美团到餐数据仓库及数据治理产 品建设,在数仓建模以及OLAP应用方面有丰厚的实践经 验。
3. 目录.CONTENTS 1. 常见应用分析技术简介 n lo a S 2. 美团批流一体下的多维分析建设 h c e T 3. 未来展望:流批一体数仓(D-I-K-W) T M
4. 常见应用分析技术 数据源->数据底座->数据应用 数据 应用 OLAP分析 即席查询 专题分析 功能服务 固定报表 批处理引擎 数据 底座 Doris ClickHouse Druid h c e T T M 数据仓库 元数据服务 a S 应用层:面向需求应用,加工个性指标 Spark MR 汇总层:面向分析聚合,加工复合指标 明细层:面向业务整合,加工原子指标 DIM: 统一维 度,通用 整合,衍 生整合。 贴源层:面向数据源,数据抽取 存储引擎 自助可视化 n lo 数据服务 存储&计算引擎 Kylin 诊断归因 ES DataLink 批量同步&流式采集 服务管理 计算引擎 Impala Presto 建模开发 流处理引擎 元数据仓库 Flink 业务元数据 调度管理 Storm 技术元数据 查询引擎 生产运维 Tair/Hbase 操作元数据 RDS Hive、 HDFS(ORC/Parquet)、 Kafka、Hudi、Iceberg、Delta Lake Sqoop 数据管理 Canal 监控告警 数据安全 Flume 数据源 数据资产 OLTP 埋点日志 其他
5. 批处理、流处理技术简介 批处理 vs 流批处理 vs 批流一体 批处理 流式处理 Stream Processing-无界数据 Batch Processing-有界数据 分类 优劣 n lo 统一数据处理 对有界数据集的数据处理方式被称为批处理。 对无界数据集的数据处理方式被称为处理。 批处理不需要有序地获取数据。在批处理模式下,首先 将数据流持久化到存储系统(文件系统或对象存储) 中,然后对整个数据集的数据进行读取、排序、统计或 汇总计算,最后输出结果。 持续地处理无界数据流的数据输入,数据被获取后立刻 处理。通常要求以特定顺序(如事件发生的顺序)获取 事件,以便能够保证结果的完整性。 有界的数据集和无界的数据集可相互转换,通过统一数 据处理框架,根据时间范围判定,统一数据处理,包 含:开发人员角色、数据处理技术、计算逻辑。 优点: 优点: 优点: 大数据量、长周期、复杂逻辑处理能力高。计算、存储 时效性高(秒级),任务常驻,实时处理性能高,可提 计算引擎、存储引擎整合一体,统一数据集成。 结合较好,SQL on Hadoop模式技术成熟。可提供海 供快速的数据洞察能力。 量数据的分析能力。 h c e T T M a S 不足: 不足: 时效性不足,通常是T+1数据生成。 引擎 批流一体处理 Hive HDFS MR Spark 复杂业务逻辑、周期历史性数据等大数据量场景下支持 不足 。 Flink Storm Spark Streaming Kafka Hbase Tair 对有界和无界的数据处理提供统一的API。 不足: 一站式解决计算引擎和数据存储技术成熟度尚不足。 Flink Spark Hudi Iceberg Delta Lake Kylin ClickHouse Doris
6. 离线+实时数仓架构 Lambda vs Kappa vs 批流一体架构对比 分类 Lambda架构 Kappa架构是真正意义上的流批一体的处理方式,统一了数 据处理架构,减少了计算资源的浪费,降低了运维成本。 统一开发人员角色,统一数据处理技术,统一数据开发逻 辑。 优点: 优点: 优点: • 职责边界清晰,流处理增量数据流,批处理的是全量数 据集。 容错性高,离线重新计算时都可以得到修正流处理中引 入的错误。 不足: • • • h c e T T M 流处理和批处理两套代码,数据一致性问题。 两套技术栈,增加开发、运维工作量。 Kafka 汇总层 Kafka 结合两种架构优势,屏蔽架构不足。 去除重复加工造成的资源消耗以及开发成本,同时保证了 数据一致性。 不足: • • 技术成熟度不足。 迁移成本高。 数据应用 OLAP/KV/RDS 计算 数据同步 Kafka Hive 明细层 Hive Flink/Storm Spark/MR Kafka 流式重新处理,基于新版本的作业重跑,占用计算资源增 加。 无批处理,高吞吐量的场景处理能力不足。 离线计算T+1 Spark/MR Flink/Storm a S • • 数据应用 OLAP/KV/RDS 数据同步 实时计算T+0 • n lo 技术栈以及业务代码的统一。 不足: • 数据应用 OLAP/KV/RDS 架构 流批一体架构 Lambda架构是出现较早的解决方案,使用流处理和批处理 两种计算引擎进行数据处理。 • 优劣 Kappa架构 贴源层 流式加载 业务数据 埋点日志 Flink/Storm 实时计算 T+0 汇总层 批量采集 存储 汇总层 OLAP 明细层 Hudi/Delta/ Iceberg Spark Streaming Kafka Flink/Storm 明细层 Spark Streaming Kafka Hive OLAP 数据同步 贴源层 流式加载 业务数据 埋点日志 Flink/Spark Streaming/ Storm Kafka/HDFS 贴源层 流式加载 业务数据 埋点日志
7. 常见离线+实时的分析场景 流式计算与批量计算模式的选择,是由用户使用场景决定的。 批量计算 适用离线或准实时数仓,时效性要求在 天、小时级,将一段时间内产生的数据 批量送入分析工具,经过较长运行时间 得到结果。 h c e T T M 适用场景: 长周期统计分析、绩效指标考核、企业 经营分析、周月汇报、财务对账、 指 标分析、专题分析等。 分析特点: 海量数据、预计算、离线OLAP操作。 流式计算 n lo 适合实时或准实时数仓,时效性要求在 分钟、秒级,将数据流连续地送入分析 工具并快速地得到分析结果。 a S 适用场景: 战役大屏、异常指标预警、安全日志监 控,供给检测、客户行为分析、实时推 荐、营销分析等。 分析特点: 低延迟、实时加工、实时OLAP操作。 伴随业务发展,业务形态逐渐多样化,离线和实时结合的业务需求增加,两种模式(流、批)的处理 方式趋向融合。即:离线+实时的OLAP分析场景。
8. 基于OLAP引擎的批流一体架构 基于OLAP引擎打通服务,实现批流一体是当前互联网最主要的落地方式之一 运营 分析师 经营分析 应用服务 管理者 PM 专题分析 自助分析 实时看板 一线业务 固定报表 元数据服务 数据服务 h c e T T M ADS层按需组装 离线数据集市 特定分析主题整合 Kafka Spark MR DWD DIM 维度 补全 DWS DWD 数据质量 数据安全 DIM 数据资产 ODS HDFS 实时采集 埋点日志 数据开发 批量写入 流式写入 宽表建模 数据标准 离线OLAP分析主题 实时OLAP分析主题 Flink Strom a S 服务管理 基于OLAP高性能引擎的计算+存储一体化模式,融合实时+离线数据 实时数据集市 n lo 1.统一存储 ODS 和离线数据。 2.统一计算 • Flink+OLAP引擎的解决方案,通过Flink构建明细 模型,维度补全,业务整合,将加工后的数据实 时写入OLAP中,结合引擎自身的计算、存储能 力,将部分计算操作在OLAP中进行,引擎构建面 向分析的数据集市 3.统一开发 • 结合开发平台工具建设,统一DML加工逻辑,通 过构建完善的元数据,将实时、离线任务及模型 离线采集 OLTP • 将Kafka的数据实时写入到OLAP引擎,融合实时 统一管理。 其他
9. OLAP简介 联机分析处理(Online Analytical Processing):满足决策支持或多维环境特定的查询和报表需求。 从原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业特性的信息。 n lo 使分析人员、管理人员或执行人员能够从多种角度对信息数据进行快速、一致、交互地存取,从而获得对数据更深入的了解的一类技术。 前端工具 查询/报表 数据挖掘 输出 h c e T T M 数据分析 OLAP服务器 ROLAP 数 据 集 市 数据仓库 元数据库 数仓服务器 OLTP 其他 Q1季度 Q2季度 ROLAP Q3季度 北京 Q4季度 抽取/加载/转换 埋点日志 a S Q1季度杭州市D品牌销售金额 数据源 天津 A 品 牌 B 品 牌 C 品 牌 D 品 牌 上海 杭州
10. OLAP架构分类 MOLAP vs ROLAP vs HOLAP 关系型OLAP(ROLAP) 多维OLAP(MOLAP) Relational OLAP Multi-dimensional OLAP 分类 引擎 Hybrid OLAP 传统的分析方式,是OLAP发源最初的形 依赖操作DB数据,一般要求事实表和维度 将MOLAP和ROLAP的优势组合起来,明细 态,以多维数组方式将数据存储在一个多 表按照一定的关系设计,不需要预计算, 数据以ROLAP的形式存放。高度聚合的数 维数据集(CUBE)中。 通过SQL的方式,呈现传统OLAP的切片、 据以MOLAP的形势展现,以获得更灵活方 切块等功能。 式以及更快捷的性能。 h c e T T M a S 优点: 优点: CUBE包含所有维度的聚合结果,查询速度 扩展性强,基于关系存放数据,按照一定的 将MOLAP与HOLAP的优势结合使用,结 非常快。 关系设计,灵活性强。 合实际的业务场景,利用不同的OLAP特 不足: 性。 预计算的方式对灵活性及扩展性支持不足, 现场计算,查询的响应时间相较MOLAP较 不足: 维度组合多、数据量过大,会造成资源占用 长,大数据量及复杂查询返回较慢,且多 成熟度不足,统一的引擎较少。系统切 急剧膨胀,数据产出时间无法有效保障。 节点并行计算,存在木桶效应。 换频繁的情况下,影响查询效率。 优点: 优劣 n lo 混合OLAP(HOLAP) 不足: Kylin Druid Doris Presto 多引擎特性结合
11. 开源OLAP组件 Kylin:空间换时间,预计算全部维度组合,提供亚秒级查询效率。 n lo MOLAP a S Druid:采用了列式存储/倒排索引/位图索引等关键技术,同时支持离线及实时查询和分析。 开源 OLAP h c e T T M ClickHouse:硬件优化,注重算法,特性场景优化,以及向量化执行。 MPP架构 ROLAP Doris:兼容MySQL协议,支持对海量数据快速分析,具备新型预聚合技术。 Presto:轻量快速,完全基于内存的并行计算,支持任意数据源。 Hive:分布式SQL on Hadoop方案,数据量越大,优势越明显。 通用计算框架 SparkSQL:基于DAG图执行以及利用缓存机制,弥补Hive查询效率。
12. 目录.CONTENTS 1. 常见应用分析技术简介 n lo a S 2. 美团批流一体下的多维分析建设 h c e T 3. 未来展望:流批一体数仓(D-I-K-W) T M
13. 美团到餐业务发展过程 业务发展阶段的分析特性 业务 阶段 初创期 业务 目标 扩大市占 业务 策略 交易业务-团购 业务 动作 数据 需求 分析 特性 (核心业务售卖) l 上单、下单 成熟期 a S 提升收入 h c e T T M n lo 交易+广告 (广告引流增加交易,多组合业务打包售卖) l 多业务、多形态(秒杀、量贩等) l 客户分层(品牌、连锁、单门店等) 发展期 收入稳定增长 创新+提效 (拆解业务过程获得更多客户贡献+客户精细分层) l 找到根因,需不停试错、交互式修正 l 全链路诊断及预测,探索新业务模式 l 重新梳理客户模型,精细化、品牌化 (核心业务指标监控) 多角度组合分析 (时间、地域、组织、品类、品牌、产品、行业等) 长周期、分团队、拆过程、做诊断,建立经营体系 维度少,固定结果 维度多,离线OLAP 细分维度,实时+离线OLAP 指标监控 (拜访、上单、推广、下单、消费、售后等)
14. 分析产品架构演进过程 OLAP架构演进过程 业务 阶段 数据 应用 数据 服务 OLAP 初创期 数据报表1 成熟期 数据报表2 数据报表3 定制化API SQL1 需求1 a S 数据看板 明细查询 h c e T T M SQL3 MR/Spark 需求2 数据 仓库 多维分析 需求3 SQL2 SQL3 MySQL Kylin Presto 应用视图1 应用视图2 应用表 主题宽表 按需开发、个性应用 业务数据 明细及汇总查询 专题分析 统一维度 业务数据 多维分析 统一DSL MySQL Presto Doris 统一汇总逻辑模型 集市1 宽表模型、数据组装 实时分析看板 统一数据服务 SQL1 统一事实 数据源 n lo 定制化API SQL2 MySQL 发展期 星型模型设计 集市2 统一事实 统一维度 集市化、场景驱动 业务数据
15. 流批一体架构演进 建立统一的实时+离线OLAP架构,提供一套安全、可靠的、灵活的数据服务 数据 应用 Lambda架构 实时OLAP架构 固定报表 专题分析 实时看板 固定报表 专题分析 自助分析 服务API 服务API 数据 服务 OLAP KV/RDS 离线同步 实时同步 实时 离线 数据 仓库 h c e T T M 时效性:秒、分钟 存储:Tair/Hbase/Kafka 应用层 应用层 汇总层 汇总层 DIM DIM 明细层 明细层 贴源层 贴源层 计算引擎:MR/Spark 计算引擎:Flink/Storm 业务数据库 查询协议 固定报表 专题分析 经营分析 自助分析 服务API 统一数据服务(数据+元数据) OLAP(预计算+现计算) OLAP(ETL:Doris2Doris) 实时同步 应用层(结果整合) 汇总层(集市主题整合实时、离线数据) 时效性:天 存储:HDFS/Hive 应用层 实时 离线 时效性:秒、分钟 存储: Tair/Hbase/Kafka 明细层 明细层 DIM DIM 贴源层 贴源层 计算引擎:MR/Spark 存储:Beluga 调度:离线+实时 Kafka2Doris Hive2Doris 流批一体 DIM 计算引擎:Flink/Storm 汇总层 明细层 贴源层 存量 + 增量 统一 集成 工具 计算引擎:Flink 埋点日志 业务数据库 应用层 汇总层 明细层 埋点日志 业务数据库 DIM 贴源层 增量读写、批量读写 消息队列 消息队列 消息队列 数据源 n lo a S 统一数据服务(数据+元数据) 离线+实时结果整合 时效性:天 存储:HDFS/Hive 流批一体架构 埋点日志
16. 到餐离线+实时的分析场景 监控、OLAP、过程分析场景 大促战役 营销活动 业 务 分 析 场 景 组织层级目标监控,关注历史和实 时分时数据比对,实时策略调整。 效果分析,关注实时分析,及时发 现问题,指导具体动作。 过程提效,关注结果到过程拆解, 实时过程管理,优化组织效率。 分 析 模 式 时空维、组织维的上卷下钻,目标 达成率监控。 按指标结构、漏斗、公式进行拆 解,结合离线和实时数据进行OLAP 分析。 汇总和过程明细灵活查询 场 景 要 求 数据准确、低延迟 开发快、查询快 数据产出快、灵活性 h c e T T M n lo a S 组织效能
17. 流批一体的架构面临的挑战 缓慢变化维的历史回看、明细+汇总灵活查询、实时+离线多维分析,如何保障数据准确性及时效性 数据质量保障 l 数据源差异,实时、离线数据的一 致性难保障。 l 实时数据的准确性难保障,问题修 复数据回刷成本高。 流批融合,统一架构 数据生产/查询效率 数据开发成本 n lo a S l 长周期、跨周期、多表JOIN、复杂 h c e T T M 逻辑的生产耗时。 l 实时+离线的OLAP分析,以及缓慢 变化维的历史回看、汇总+明细的 灵活查询效率。 智能元数据,自动优化 l 技术栈不统一,两套实现方式,学 习成本高,开发周期长。 l 烟囱式开发,分时、分钟对比场景 重复建设,开发及运维成本高。 集市口径收敛,统一逻辑
18. 统一架构:基于Doris构建流批数仓 借助OLAP系统的存储及计算能力,构建流批数仓,支持业务需求 基于Doris引擎流批一体数据整合 从业务需求,看引擎特性 ① ② ③ ④ ⑤ 分钟级数据产出 秒级查询响应 明细及汇总灵活查询 实时+离线多维分析 高效快速支持,满足多样化的数据需求 数据幂等 h c e T T M Uniq模型 复杂JOIN 标准SQL ETL性能 秒级返回 时效性 实时导入 高可靠 Doris核心 特性 高性能 n lo a S Kafka HDFS Hive 离线同步 聚合 模型 Doris 统一数据集市建设 唯一 模型 数据生产稳 定性 微批流入 高并发 高效聚合 多维分析 Flink Kafka
19. 架构落地 平衡模型灵活扩展和业务高效查询,聚合计算由Doris引擎承担,减轻实时计算部分的预处理的压力。 汇总层:实时离线一体 数据 应用 营销分析 大促看板 h c e T T M a S 逻辑模型组装 应用层 数仓 建设 n lo 固定报表 实时分析 汇总层 明细层 Hive2Doris 数据 来源 Hive批数据 Flink微批处理 Kafka2Doris Kafka实时流
20. 模型升级:集市层整合 架构上通过层次优化,提升生产效率;模型上通过共性下沉,逻辑统一,提升质量以及开发成本;任务上执行优化,资源优化,提升生产效率。 模型 架构 离线数仓 应用层 灵活组装 汇总层 集市主题 汇总层 模型整合 分钟级 调度 明细层 明细层 简化层级、减少生产链路 实时流入 a S l 加工个性复合指标,按需组装 h c e T T M 分钟级 调度 集市主题 n lo 实时数仓 l 面向应用需求 应用层 任务 组织维度 品牌维度 门店维度 l 面向分析聚合,划分集市分析主题 l 加工领域共性复合指标,星型模型呈现 l 面向明细整合,划分业务主题 l 加工原子指标,支持多维扩展 l 内存表方式 l 多副本设置 l 内存调配 执行器(BE) 分区分桶 l MV设置 l 集群磁盘数量 l 单桶数据量大小 l 唯一键更新,保证数据幂等 多维分析统一,共性逻辑下沉 副本、分区分桶合理设置
21. 效率优化:统一元数据管理,智能优化 建立业务、技术标准,统一元数据管理,强化逻辑模型构建,简化物理执行过程,自动效率优化。 指标管理 原子指标规范 业务过程 量化对象 + 度量 汇总方式 建模设计 指标线 指标分类 时间周期 修饰词 + 原子指标 复合指标 四则公式 维度分类 修饰词管理 维表绑定 业务限定规范 共性复合 技术元数据配置 模型线 自动命名 ETL模板 规则校验 参数配置 Cube预生成 四则生成计算指标 质量监控 数仓标准 维度管理 基础/衍生维 原子生成复合指标 口径配置 计算指标 原子指标 原子粒度 h c e T T M 指标构成 评估指标 n lo 领域逻辑模型 原子指标 维度构成 复合指标规范 应用服务 SLA 一致性校验 访问热度 a S 维度组合 时间周期 指标组合 慢查询 投影下推 分区分桶 谓词下推 数据倾斜 distributed by Bitmap类型 字段聚合类型 大表广播 join group by 索引命中 口径版本 SQL优化 热度触发 + 查询耗时 结果量级 数据扫描 计算资源 范围物化 去JOIN 大查询触发 + aggr key 资源占用 DQC 不物化 tablet where distinct 物化方式 规则平衡 请求PV/UV select 阈值设定 定制物化 去指标计算 慢查询触发 结果评估
22. 应用架构落地 面向应用分析,更全、更快的支持业务需要求。 用户 数据 产品 商户 管理者 C端 行 为 分 析 用 户 画 像 营 销 分 析 评 价 分 析 商 户 特 征 商 户 诊 断 供 给 质 量 数据 服务 查询 管理 营 销 分 析 品 牌 分 析 数据服务 交互 功能 二次 计算 数据 转化 内容 展现 SQL 优化 自动 路由 管 理 大 盘 a S C端 获客 激活 用户 数据源 留存 转化 销售 认知 供给 兴趣 购买 交易 离线数据 C端 业 绩 分 析 奖 金 计 算 维度 指标 指标 口径 标签 配置 版本 控制 数据 标准 建模 开发 质量 评估 数据 资产 M端 忠诚 广告 目标 策略 流量 实时数据 M端 目 标 分 析 元数据服务 B端 商户 B端 战 役 看 板 离线OLAP 实时OLAP 数据 仓库 数据管理 M端 h c e T T M 数据服务 销售 n lo B端 活 动 评 估 数据 鉴权 产运 B/C端 执行 评价 检核 复盘 特征 工厂 结算 元数据 分析 工具
23. 目录.CONTENTS 1. 常见应用分析技术简介 a S n lo 2. 美团批流一体下的多维分析建设 h c e 3. 未来展望:流批一体数仓(D-I-K-W) T T M
24. 流批一体数仓 将数据建造为一项资产而非累赘,将治理工具做到提效而非阻碍,需要每一个数据管理人员持续反思与迭代 数据源 流批入仓及治理 分析应用 数据-D 数据采集 结构化 批量加载 h c e T T M 指标线 数据加载 数据清洗 半结构化 n lo a S 对目标观察和记录的结 果,本身没有意义。 共享服务 固定报表 功能服务 信息-I 被赋予了意义和目标的 数据,提供功能性和结 构性的决策行动支持。 自助分析 数据服务 模型线 数据建模 流式采集 数据整合 OLAP操作 非结构化 被处理、组织过、应用 或付诸行动的信息。 专题模板 元数据服务 智慧-W 关注的是未来,是正确 判断和决定的能力,包 括对知识的最佳使用。 数据汇总 生产打通 知识-K 统一治理 诊断归因 分析决策 统一服务 统一 API
25. n lo h Q&A c e T a S T M

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-17 18:50
浙ICP备14020137号-1 $Map of visitor$