《Apache Flink 案例集(2022版)》——5.数字化转型——移动云Apache Flink 在移动云实时计算的实践(上)

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 《Apache Flink 案例集(2022版)》——5.数字化转型——移动云Apache Flink 在移动云实时计算的实践(上)

作者:谢磊


用户背景

中移(苏州)软件技术有限公司是中国移动通信有限公司的全资子公司,公司定位为中国移动云设施的构建者、云服务的提供者、云生态的绘制者。公司以移动云为运营中心,产品和服务在电信、政务、金融、交通等领域都有广泛应用。


平台建设

image.png

实时计算引擎在移动的演进分为


• 2015 年到 16 年,使用一代实时计算引擎 Apache Storm


2017年开始调研 Apache Spark Streaming可以与研框架进行整合,降低了压力和维护成本;


2018年,用计算的需求多,Storm Spark已经法很好满足业务。移动究了流计算出名,发Apache Flink 已经比完整提到的一些语,开始基于Flink实实时计算平台;


• 2019- 2020年,开始实务,并实时计算平台上线至公有


• 2020- 2021年,开始调研实时数仓,并将 LakeHouse 上线移动


目前 Flink 主要用于中移信令数字的处理、实时用户画像和埋点、实时数仓、实时运维监控、实时推荐以及移动云的数据管道服务。


中移的实时计算平台功能分为三大部分:  


第一部分是服务管理,支持了任务生命周期的托管、Flink 和 SQL 作业、Spark Streaming 作业以及引擎多版本的支持;


第二部分是 SQL 的支持,提供了在线 Notebook 编写、SQL 语法检测、UDF 管理和元数据管理;


第三部分是任务运维,支持实时任务的日志检索、实时性能指标采集以及消息延迟报警和任务反压报警等。



生产实践


1. 中移信令业务优化

image.png


中国移动信令业务的出现是为了解决各级政府部门有关于移动用户资源数据的需求,包括旅游部门、应急部门、交通行业等,如交通规划、交通调查、旅游景区等重点区域的人口流量监测、流动人口监测管理等等。依赖于中国移动手机用户的高覆盖率,利用移动通信网络区域服务技术以及 GIS 技术,通过对移动用户信令数据的统计,对城市人口数量、流动性等要素进行分析预测,为城市规划、交通规划、管理、资源配置、外来人口管理、政策制定等政府管理行为提供决策数据支持。   中国移动信令业务的日均数据大概是 10PB,20 万亿/天,单条数据大小 0.5KB,包含了 2345G 上网数据、位置信令、省份城市、网络类型、接口类型等等。数据处理也比较复杂,要做数据加密、压缩以及版本的统一等。



早期的业务架构使用Flume集群对上报网关收集的各地信令数据进行数据接收,再通过Kafka传输到 Hadoop 集群,由Spark Streaming进行消费处理。这个业务架构主要遇到了两类问题:


第一类是写入性能问题。Kafka 在写入的时候频繁超时,生产性能存在瓶颈。以及 Flume 在发送数据时无法达到网卡的上限速度;


第二类是架构设计问题。架构涉及的组件比较多导致维护的成本比较高;此外,组件职责不清晰,比如 Flume 中存在数据清洗的逻辑;还有 Spark 逻辑和处理逻辑复杂,存在多处 shuffle,处理性能不稳定。


image.png


经过调研和实践,中移决定使用 Flink 代替 Flume 来解决问题。替换成 Flink 以后,提升了采集性能,解决了海量数据发送性能瓶颈,稳定性显著提高。同时明确了组件职责,将原有的服务中存在的逻辑全部转移至后端实时数据分解,让采集层专注于数据汇聚,处理层专注于数据分拣。另外统一了技术栈,端到端采用了 Flink 框架,获得了更高的性能,也降低了开发和运维成本。最终整体性能提升了 1/3 且降低了维护成本。


《Apache Flink 案例集(2022版)》——5.数字化转型——移动云Apache Flink 在移动云实时计算的实践(下):https://developer.aliyun.com/article/1227845


相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
16天前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
458 13
Apache Flink 2.0-preview released
|
20天前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
47 3
|
24天前
|
数据挖掘 物联网 数据处理
深入探讨Apache Flink:实时数据流处理的强大框架
在数据驱动时代,企业需高效处理实时数据流。Apache Flink作为开源流处理框架,以其高性能和灵活性成为首选平台。本文详细介绍Flink的核心特性和应用场景,包括实时流处理、强大的状态管理、灵活的窗口机制及批处理兼容性。无论在实时数据分析、金融服务、物联网还是广告技术领域,Flink均展现出巨大潜力,是企业实时数据处理的理想选择。随着大数据需求增长,Flink将继续在数据处理领域发挥重要作用。
|
3月前
|
存储 消息中间件 Java
Apache Flink 实践问题之原生TM UI日志问题如何解决
Apache Flink 实践问题之原生TM UI日志问题如何解决
44 1
|
2月前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。
|
3月前
|
消息中间件 监控 数据挖掘
基于RabbitMQ与Apache Flink构建实时分析系统
【8月更文第28天】本文将介绍如何利用RabbitMQ作为数据源,结合Apache Flink进行实时数据分析。我们将构建一个简单的实时分析系统,该系统能够接收来自不同来源的数据,对数据进行实时处理,并将结果输出到另一个队列或存储系统中。
189 2
|
3月前
|
消息中间件 分布式计算 Hadoop
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
45 3
|
3月前
|
消息中间件 运维 Kafka
Apache Flink 实践问题之达到网卡的最大速度如何解决
Apache Flink 实践问题之达到网卡的最大速度如何解决
44 2
|
3月前
|
消息中间件 前端开发 Kafka
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
|
2月前
|
消息中间件 资源调度 API
Apache Flink 流批融合技术介绍
本文源自阿里云高级研发工程师周云峰在Apache Asia Community OverCode 2024的分享,内容涵盖从“流批一体”到“流批融合”的演进、技术解决方案及社区进展。流批一体已在API、算子和引擎层面实现统一,但用户仍需手动配置作业模式。流批融合旨在通过动态调整优化策略,自动适应不同场景需求。文章详细介绍了如何通过量化指标(如isProcessingBacklog和isInsertOnly)实现这一目标,并展示了针对不同场景的具体优化措施。此外,还概述了社区当前进展及未来规划,包括将优化方案推向Flink社区、动态调整算子流程结构等。
369 31
Apache Flink 流批融合技术介绍

相关产品

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

    更多