《Apache Flink 案例集(2022版)》——2.数据分析——美团-Flink 的实时数仓平台建设(1)

简介: 《Apache Flink 案例集(2022版)》——2.数据分析——美团-Flink 的实时数仓平台建设(1)

作者:姚冬阳


用户背景

美团作为一家吃、喝、行、游、购、娱一站式的平台,要创造的价值不仅是帮大家吃得更好,还要为人们的生活创造更多的价值,帮大家日常生活的方方面面变得更好,帮大家的旅行生活变得更好。


平台现状

image.png

美团于 2018 年首次引入 Flink 实时计算引擎,当时的实时数仓概念还不太普及,平台只提供了 Flink Jar 任务的生命周期管理和监控报警。   2


019 年,美团注意到实时计算的主要应用场景是解决离线数仓时效性低的问题。离线数仓已经比较成熟,通过 SQL 方式开发很简单,而数仓的实时部分主要通过 Flink DataStream API 来开发,门槛比较高,而且与离线数仓的开发方式相比较为割裂。因此,美团开始调研实时数仓的解决方案,目标是降低开发门槛,并尝试推广 FlinkSQL,最终将实时数仓平台取名为 NAU。  2


020 年,美团实时数仓平台正式上线。它向业务提供 FlinkSQL 作业开发入口,主要负责两个方面的工作:

首先,将实时数仓常见的数据源与离线表概念对齐,用数据模型进行管理;

其次,提供 FlinkSQL 开发配套的效率工具,比如校验和调试功能。


image.png


实时数仓目前已基本覆盖了美团的全部业务,为 100 多个业务团队提供了支持,比如美团优选、美团买菜、金融、骑行等业务。托管了 7000 多个实时数据模型,主要为 Kafka 表和 KV 表模型。线上运行 FlinkSQL 作业 4000+,新增的实时 SQL 作业占比已经达到 70% 以上。从数据上看,FlinkSQL 已经可以解决美团实时数仓大部分流处理的问题。


image.png


上图是实时数仓平台的架构,分为集成、开发、运维、治理、安全 5 个模块分别建设。


集成模块主要关注的是数据模型的管理,具体包括 Kafka 和 KV 两种模型管理,管理的内容有数据源的 schema 信息和连接信息等;


开发模块主要关注的是 FlinkSQL 转化业务需求,比如提供版本管理来记录业务需求的迭代过程,提供 FlinkSQL 的校验和调试,来确保开发的 SQL 正确表达了业务逻辑,支持业务使用自定义的 Flink UDF 函数和自定义的 Format 解析,让 FlinkSQL 可以扩展满足更多业务需求场景;


运维模块关注的是 SQL 作业的部署和运行时的监控。在监控方面,我们提供了 SQL 作业的监控报警、异常日志和作业诊断,能够帮助业务快速发现和定位作业的异常;部署方面,我们提供 SQL 作业的快照管理、AB 部署和参数调优,来帮助业务解决 SQL 作业变更时的问题;


治理模块关注的是实时数仓的数据质量、资源成本,通过建设实时数仓的 DQC 监控,帮助业务发现上游数据或产出数据的异常值/异常波动;通过链路血缘和资源计费,让业务可以量化实时数仓的生产成本,方便进行成本治理;


安全模块主要关注的是对数据流向的管控,提供数据源读写权限的管理和受限域机制,保证公司业务数据的安全性。



《Apache Flink 案例集(2022版)》——2.数据分析——美团-Flink 的实时数仓平台建设(2) https://developer.aliyun.com/article/1228306




相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
4月前
|
消息中间件 监控 Java
Apache Kafka 分布式流处理平台技术详解与实践指南
本文档全面介绍 Apache Kafka 分布式流处理平台的核心概念、架构设计和实践应用。作为高吞吐量、低延迟的分布式消息系统,Kafka 已成为现代数据管道和流处理应用的事实标准。本文将深入探讨其生产者-消费者模型、主题分区机制、副本复制、流处理API等核心机制,帮助开发者构建可靠、可扩展的实时数据流处理系统。
442 4
|
消息中间件 数据挖掘 Kafka
Apache Kafka流处理实战:构建实时数据分析应用
【10月更文挑战第24天】在当今这个数据爆炸的时代,能够快速准确地处理实时数据变得尤为重要。无论是金融交易监控、网络行为分析还是物联网设备的数据收集,实时数据处理技术都是不可或缺的一部分。Apache Kafka作为一款高性能的消息队列系统,不仅支持传统的消息传递模式,还提供了强大的流处理能力,能够帮助开发者构建高效、可扩展的实时数据分析应用。
826 5
|
12月前
|
SQL 监控 关系型数据库
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
本文整理自用友畅捷通数据架构师王龙强在FFA2024上的分享,介绍了公司在Flink上构建实时数仓的经验。内容涵盖业务背景、数仓建设、当前挑战、最佳实践和未来展望。随着数据量增长,公司面临数据库性能瓶颈及实时数据处理需求,通过引入Flink技术逐步解决了数据同步、链路稳定性和表结构差异等问题,并计划在未来进一步优化链路稳定性、探索湖仓一体架构以及结合AI技术推进数据资源高效利用。
835 25
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
|
12月前
|
存储 消息中间件 OLAP
Hologres+Flink企业级实时数仓核心能力介绍-2024实时数仓Hologres线上公开课03
本次分享由阿里云产品经理骆撷冬(观秋)主讲,主题为“Hologres+Flink企业级实时数仓核心能力”,是2024实时数仓Hologres线上公开课的第三期。课程详细介绍了Hologres与Flink结合搭建的企业级实时数仓的核心能力,包括解决实时数仓分层问题、基于Flink Catalog的Streaming Warehouse实践,并通过典型客户案例展示了其应用效果。
390 10
Hologres+Flink企业级实时数仓核心能力介绍-2024实时数仓Hologres线上公开课03
|
12月前
|
存储 运维 监控
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
中信银行信用卡中心每日新增日志数据 140 亿条(80TB),全量归档日志量超 40PB,早期基于 Elasticsearch 构建的日志云平台,面临存储成本高、实时写入性能差、文本检索慢以及日志分析能力不足等问题。因此使用 Apache Doris 替换 Elasticsearch,实现资源投入降低 50%、查询速度提升 2~4 倍,同时显著提高了运维效率。
699 3
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
|
存储 SQL 监控
计算效率提升 10 倍,存储成本降低 60%,灵犀科技基于 Apache Doris 建设统一数据服务平台
灵犀科技早期基于 Hadoop 构建大数据平台,在战略调整和需求的持续扩增下,数据处理效率、查询性能、资源成本问题随之出现。为此,引入 [Apache Doris](https://doris.apache.org/) 替换了复杂技术栈,升级为集存储、加工、服务为一体的统一架构,实现存储成本下降 60%,计算效率提升超 10 倍的显著成效。
539 0
计算效率提升 10 倍,存储成本降低 60%,灵犀科技基于 Apache Doris 建设统一数据服务平台
|
消息中间件 监控 数据可视化
Apache Airflow 开源最顶级的分布式工作流平台
Apache Airflow 是一个用于创作、调度和监控工作流的平台,通过将工作流定义为代码,实现更好的可维护性和协作性。Airflow 使用有向无环图(DAG)定义任务,支持动态生成、扩展和优雅的管道设计。其丰富的命令行工具和用户界面使得任务管理和监控更加便捷。适用于静态和缓慢变化的工作流,常用于数据处理。
Apache Airflow 开源最顶级的分布式工作流平台
|
运维 数据挖掘 网络安全
场景实践 | 基于Flink+Hologres搭建GitHub实时数据分析
基于Flink和Hologres构建的实时数仓方案在数据开发运维体验、成本与收益等方面均表现出色。同时,该产品还具有与其他产品联动组合的可能性,能够为企业提供更全面、更智能的数据处理和分析解决方案。
|
存储 数据挖掘 数据处理
Apache Paimon 是一款高性能的数据湖框架,支持流式和批处理,适用于实时数据分析
【10月更文挑战第8天】随着数据湖技术的发展,越来越多企业开始利用这一技术优化数据处理。Apache Paimon 是一款高性能的数据湖框架,支持流式和批处理,适用于实时数据分析。本文分享了巴别时代在构建基于 Paimon 的 Streaming Lakehouse 的探索和实践经验,包括示例代码和实际应用中的优势与挑战。
670 1
|
Java Spring 安全
Spring 框架邂逅 OAuth2:解锁现代应用安全认证的秘密武器,你准备好迎接变革了吗?
【8月更文挑战第31天】现代化应用的安全性至关重要,OAuth2 作为实现认证和授权的标准协议之一,被广泛采用。Spring 框架通过 Spring Security 提供了强大的 OAuth2 支持,简化了集成过程。本文将通过问答形式详细介绍如何在 Spring 应用中集成 OAuth2,包括 OAuth2 的基本概念、集成步骤及资源服务器保护方法。首先,需要在项目中添加 `spring-security-oauth2-client` 和 `spring-security-oauth2-resource-server` 依赖。
284 0

相关产品

  • 实时计算 Flink版
  • 推荐镜像

    更多