Flink 实时计算在微博的应用
2021-05-26 本文已影响0人
bigdata张凯翔
Flink 实时计算在微博的应用
https://zhuanlan.zhihu.com/p/375032985
Flink GitHub 地址
https://github.com/apache/flink
一、微博介绍
二、数据计算平台介绍
1. 数据计算平台概况
基于 K8s 和 Yarn 分别部署了实时数据处理的 Flink、Storm,以及用于离线处理的 SQL 服务。
结合 Hive 的 SQL,SparkSQL 构建一个 SQL 计算服务
实时计算的作业将近 1000 多个,离线作业超过了 5000 多个,每天处理的数据量超过了 3 PB。
2. 数据计算
实时计算:也提供一些基础的 flink 实时计算和 storm 实时计算。
离线计算:离线计算主要包括 SQL 计算。主要包括 SQL 的即席查询、数据生成、数据查询和表管理。
表管理主要就是数仓的管理,包括表的元数据的管理,表的使用权限,还有表的上下游的血缘关系。
3. 实时特征
基于 Flink 和 Storm 构建了一个实时特征生成的服务
4. 流批一体
基于 FlinkSQL 构建的批流一体
目前调度层支持的计算引擎主要就是 HiveSQL,SparkSQL 跟 FlinkSQL。Hive 和 Spark 的 SQL 主要用于批量计算,FlinkSQL 是做批流混跑。
5. 数据仓库
建立实时数仓主要是去解决离线特征生成的周期长的问题
另外就是使用 FlinkSQL 去解决 streaming 作业开发周期比较长的问题。
其中的一个关键点还是离线数仓跟实时数仓的元数据的管理。
三、Flink 在数据计算平台的典型应用
- 流式机器学习
特征的实时化和模型的实时化
2.微博流式机器学习的特点:
3.流式机器学习有几个比较难的问题
4.流失机器学习流程
5.样本
6.样本平台
7.流式机器学习项目的样本 UI
8.流失机器学习的应用 - 多模态内容理解
1.简介
2.平台
3.UI - 内容去重服务
1.背景
2.架构
3.应用
4.最后
我们通过将 Flink 实时流计算框架跟业务场景相结合,在平台化、服务化方面做了很大的工作,在开发效率、稳定性方面也做了很多优化。
我们通过模块化设计和平台化开发,提高开发效率。
目前实时数据计算平台自带全链路监控,数据指标统计和 debug case 追踪(日志回看)系统。另外,基于 FlinkSQL 在批流一体这块目前也有一定的应用。这些都是 Flink 给我们带来的一些新的变化,我们会持续不断的探索 Flink 在微博中更大的应用空间。