软件架构|基于Flink和ClickHouse打造轻量级点击流实时数仓
【软件架构|基于Flink和ClickHouse打造轻量级点击流实时数仓】Flink和ClickHouse分别是实时计算和(近实时)OLAP领域的翘楚 , 也是近些年非常火爆的开源框架 , 很多大厂都在将两者结合使用来构建各种用途的实时平台 , 效果很好 。
点击流数仓分层设计
点击流实时数仓的分层设计仍然可以借鉴传统数仓的方案 , 以扁平为上策 , 尽量减少数据传输中途的延迟 。 简图如下 。
文章图片
*DIM层:维度层 , MySQL镜像库 , 存储所有维度数据 。
*ODS层:贴源层 , 原始数据由Flume直接进入Kafka的对应topic 。
*DWD层:明细层 , 通过Flink将Kafka中数据进行必要的ETL与实时维度join操作 , 形成规范的明细数据 , 并写回Kafka以便下游与其他业务使用 。 再通过Flink将明细数据分别写入ClickHouse和Hive打成大宽表 , 前者作为查询与分析的核心 , 后者作为备份和数据质量保证(对数、补数等) 。
*DWS层:服务层 , 部分指标通过Flink实时汇总至Redis , 供大屏类业务使用 。 更多的指标则通过ClickHouse物化视图等机制周期性汇总 , 形成报表与页面热力图 。 特别地 , 部分明细数据也在此层开放 , 方便高级BI人员进行漏斗、留存、用户路径等灵活的ad-hoc查询 , 这些也是ClickHouse远超过其他OLAP引擎的强大之处 。
- 文件系统(02):基于SpringBoot管理Xml和CSV
- 思科宣布以7.5亿美元收购IMImobile 加强AI软件能力
- 免费小程序制作软件哪个好呢?值得推荐的制作平台
- 1分钟制作朋友圈9宫格照片,不用任何P图软件,新手小白也能会
- 低调使用!超级好用的ePub阅读工具!|PC软件
- 真效率神器!MaxLauncher(快速启动工具)|PC软件
- 基于本质安全的化工行业工业互联网平台“星智链”发布
- AMD锐龙5000系列处理器曝光 Zen3架构加持性能提升
- 面向销售自动化的基于数据扩增和真实图像合成的鲁棒多目标检测
- 王城:从事软件设计,需要慢慢的雕琢