-
技术框架
- 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层:增量方式接入业务数据和日志数据,