目前比较流行的实时数仓架构有两类,其中一类是以Flink+Doris为核心的实时数仓架构方案;另一类是以湖仓一体架构为核心的实时数仓架构方案。本文针对Flink+Hudi湖仓一体架构进行介绍,这套架构的特点是可以基于一套数据完全实现Lambda架构。实时数仓架构图如下:

-
技术框架
- Kafka:用于接入数据源;
- Flink CDC:如果直接接入业务数据源可以考虑CDC方式,如果通过Kafka缓冲接入业务数据可以忽略;
- Flink:用于数据ETL,包括接入数据、处理数据及输出数据全链路数据计算任务;
- Spark:用于数据ETL,包括处理数据及输出数据全链路数据计算任务;
- Hudi:湖仓一体数据管理框架,用来管理模型数据,包括ODS/DWD/DWS/DIM/ADS等;
- Doris:OLAP引擎,同步数仓结果模型,对外提供数据服务支持;
- Hbase:用来存储维表信息,维表数据来源一部分有Flink加工实时写入,另一部分是从Spark任务生产,其主要作用用来支持Flink ETL处理过程中的Lookup Join功能。这里选用Hbase原因主要因为Table的Hbase Connector支持异步IO功能。
- Hera:调度系统,用来调度离线Spark任务;
- StreamX:Flink任务管理工具,用于部署管理以及监控Flink实时任务;
-
数仓架构
采用维度模型标准三层架构,ODS/DWD/DWS/DIM/ADS,分层架构符合Kimball维度模型建仓指导原则。
+ ODS层:增量方式接入业务数据和日志数据,ODS层分区保留当日增量结果,包含备份和支持下游数据源功能;
+ DIM层

最低0.47元/天 解锁文章
705

被折叠的 条评论
为什么被折叠?



