快手基于flink构建实时数仓场景化实践

学而知之@ 学而知之@     2022-12-13     670

关键词:

摘要:今天主要分享的内容是 Flink 在快手的实践和应用,分享日期:2021年5月22日。内容包括:

  1. 快手实时计算场景

  2. 快手实时数仓架构及保障措施

  3. 快手场景问题及解决方案

  4. 未来规划

Tips:点击文末「阅读原文」即可回顾作者原版分享视频~

1. 快手实时计算场景

主要是分为四大块:

  1. 公司级核心数据大盘:主要是提供公司大盘指标,还有不同业务线的核心指标,提供实时看板

  2. 大型活动的实时指标:最核心的事情就是活动的实时大屏,比如春晚活动,会有一个总体的大屏,会看总体的活动现状,因为大型活动又分为n多个不同的模块,每个模块会根据不同的玩法提供实时看板。

  3. 运营数据体系:主要是包括两块,创作者和内容,比如我上线了一个大v的活动,我非常想看到这个直播间的现状以及这个直播间对大盘的牵引情况,还有一个运营的策略调整。

  4. 实时特征:给搜索推荐和广告提供实时特征数据。

2. 快手实时数仓架构及保障措施

目标:

  1. 数据准确性,离线差异1%以内

  2. 数据延迟,活动核心报表<5min

  3. 数据稳定性,数据不出现尖刺掉坑

难点:

  1. 数据量大,数据量万亿级别,QPS峰值亿/秒

  2. 组件依赖复杂,链路涉及5~6个组件(kafka,kv,rpc接口,olap引擎)

  3. 链路复杂,200+核心业务实时作业,50+核心数据源,整体作业量级超过1000+


基于以上难点,我们看一下数仓架构:

  • 最下层接入了3个不同的数据源

  • 公共基础层做了两层,dwd(明细数据)和wds(公共聚合数据),dim层就是常说的维度。在这个层级上做主题与分层:流量、用户设备、直播生产、指标消费、社交、视频生产、视频消费、风控等等

  • dwd主要核心做的是标准的化的清洗

  • dws层主要是把维度的数据和dwd层做关联,生产一个通用粒度的聚合层次。

  • 应用层主要是支持大盘的数据,多维分析模型,业务专题数据

整体分为三步:1、业务数据化,把数据接入进来 2、数据资产化,资产化就是把数据内容进行清洗,形成规则有序的数据 3、数据业务化,我们可以这么理解实时数据可以反哺业务的,为数据价值建设提供一些赋能。

基于上面的分层模型,我们来看一下保障措施(干货!!!!反复看)

  1. 质量保障,蓝色部分

  2. 时效保障,绿色部分

  3. 稳定性保障,黄色部分

3. 快手场景问题及解决方案

下面是快手的春晚应用场景,主要是统计每个页面来了多少人,某个挂件点击了多少人,曝光了多少人。

我们抽象一下这个场景。就是写sql,简单点就是从一个表查询,通过筛选条件取数据,然后通过维度聚合。

  • 按照热点key做分桶

  • 通过localwindow agg做聚合,然后再按照维度合桶global window agg,主要是解决热点key的问题。

遇到了问题:

  1. 重启掉坑

  2. 曲线点无法对其

  3. 回溯曲线一场

  4. 重启不平滑

解决方案:

watermark+event_time

4. 未来规划


识别下方二维码,回复“快手01”,即可获取PPT下载地址,记得设为星标

欢迎大家扫码关注,博主会持续不断为大家输出好文章。最后为大家奉上一篇关于Click House的好文:ClickHouse在苏宁用户画像场景的实践,希望大家喜欢~

快手基于flink构建实时数仓场景化实践

摘要:今天主要分享的内容是Flink在快手的实践和应用,分享日期:2021年5月22日。内容包括:快手实时计算场景快手实时数仓架构及保障措施快手场景问题及解决方案未来规划Tips:点击文末「阅读原文」即可回顾... 查看详情

快手基于flink构建实时数仓场景化实践

一、快手实时计算场景快手业务中的实时计算场景主要分为四块:公司级别的核心数据:包括公司经营大盘,实时核心日报,以及移动版数据。相当于团队会有公司的大盘指标,以及各个业务线,比如视频... 查看详情

基于flink构建实时数仓实践

...仓的建设变得越发重要起来。本文主要介绍用户增长业务基于Flink构建实时数仓的实践之路。实时数仓1.0介绍如下图是早期的实时计算架构,实时数据需求较 查看详情

基于flink+iceberg的全场景实时数仓建设实践

...台部高级工程师苏舒分享,主要介绍腾讯大数据部门基于ApacheFlink和ApacheIceberg构建实时数仓的应用实践,介绍主要包括如下几个方面:背景及痛点数据湖ApacheIceberg介绍Flink+Iceberg构建实时数仓未来规划一、背景及痛... 查看详情

基于flink+iceberg的全场景实时数仓建设实践

ApacheFlink是目前大数据领域非常流行的流批统一的计算引擎,数据湖是顺应云时代发展潮流的新型技术架构,以Iceberg、Hudi、Delta为代表的解决方案应运而生,Iceberg目前支持Flink通过DataStreamAPI/TableAPI将数据写入Iceberg的... 查看详情

基于flink构建企业级实时数仓(附项目源码)

...较高的场景,要把链路延时降低到秒级,就需要基于Flink的实时数仓出马了。企业级实时数仓的应用场景很多,比如:实时OLAP分析;实时数据看板;实时业务监控;实时数据接口服务。很多公司实时数... 查看详情

实时数仓系列-网易云音乐基于flink+kafka的实时数仓建设实践

简介:本文由网易云音乐实时计算平台研发工程师岳猛分享,主要从以下四个部分将为大家介绍Flink+Kafka在网易云音乐的应用实战:背景Flink+Kafka平台化设计Kafka在实时数仓中的应用问题&改进直播回放:https://developer.aliyun.com/li... 查看详情

快手实时数仓建设实践

一、快手实时计算场景快手业务中的实时计算场景主要分为四块:公司级别的核心数据:包括公司经营大盘,实时核心日报,以及移动版数据。相当于团队会有公司的大盘指标,以及各个业务线,比如视频相关、直播相关,都会... 查看详情

快手实时数仓保障体系研发实践

1.业务特点及实时数仓保障痛点快手最大的业务特点就是数据量大。每天入口流量为万亿级别。对于这么大的流量入口,需要做合理的模型设计,防止重复读取的过度消耗。另外还要在数据源读取和标准化过程中,极... 查看详情

低代码实时数仓构建系统的设计与实践

1导读本文介绍58信安基于Flink实现低代码实时数仓构建系统,我们将数仓构建这一过程进行抽象,通过工程化的思想去解决,将固有领域问题交给系统,让开发人员关注数据本身,解放人力缩短数仓构建周期。... 查看详情

流批一体架构在快手的实践和思考

摘要:本文整理自快手技术专家、ApacheFlink&ApacheCalciteCommitter张静,在FFA流批一体专场的分享。本篇内容主要分为四个部分:Flink在快手的发展流批一体在快手的规划第一阶段(加强批能力)的进展第二阶段(业务视角的流批... 查看详情

flink在顺丰的应用实践

简介: 顺丰基于Flink建设实时数仓的思路,引入HudiOnFlink加速数仓宽表,以及实时数仓平台化建设的实践。本⽂由社区志愿者苗文婷整理,内容源⾃顺丰科技大数据平台研发工程师龙逸尘在FlinkForwardAsia2020分享的... 查看详情

实时数仓入门训练营:实时计算flink版sql实践

简介: 《实时数仓入门训练营》由阿里云研究员王峰、阿里云资深技术专家金晓军、阿里云高级产品专家刘一鸣等实时计算Flink版和Hologres的多名技术/产品一线专家齐上阵,合力搭建此次训练营的课程体系,精心打... 查看详情

实时数仓入门训练营:实时计算flink版sql实践

简介:《实时数仓入门训练营》由阿里云研究员王峰、阿里云高级产品专家刘一鸣等实时计算Flink版和Hologres的多名技术/产品一线专家齐上阵,合力搭建此次训练营的课程体系,精心打磨课程内容,直击当下同学... 查看详情

flink在伴鱼的实践:如何保障数据的准确性(代码片段)

...ff0c;以及ClickHouse等多维分析引擎。伴鱼实时作业应用场景基于平台提供了稳定的环境(统一调度方式,统一管理,统一监控等)。我们构建了一些实时服务,通过服务化的方式去支持各个业务方。实时数仓:数据同... 查看详情

淘菜菜:基于flink和hologres的实时数仓架构升级之路

...时数仓场景下的最佳实践、开发实践、开发规范等,基于此背景,我们将会合作推出系列文章,介绍淘菜菜基于Hologres搭建实时数仓的最佳实践,内容将会包括架构升级、场景实践、容灾实践以及最近业界比较关... 查看详情

flink与tidb联合发布实时数仓最佳实践白皮书

...c;ApacheFlink社区与PingCAP在DevCon2021技术峰会上联合发布了「基于TiDB与 Flink的 查看详情

flinksql1.11新功能详解:hive数仓实时化&flinksql+cdc实践(代码片段)

...获MySQL和Postgres的数据变更?3.怎样利用FlinkSQL做多流join后实时同步到Elasticsearch中?1Flink1.8~1.11社区发展趋势回顾自2019年初阿里巴巴宣布向Flink社区贡献Blink源码并在同年4月发布Flink1.8版本后&#x 查看详情