Flink实时数仓项目—ODS&DWD&DIM层总结
前言
到这里已经完成了Flink实时数仓项目的ODS层、DWD层&DIM层的设计和实现了,进行一个简单的总结。
一、ODS层
需要掌握以下内容:
项目的数据来源:行为数据,业务数据
架构分析:实时数仓的项目架构
Flink-CDC:
DataStream/FlinkSQL两种使用方法的特点。
Flink-CDC/Maxwell/Cannal之间的优缺点,选取原因。
ODS层的主要工作:保持数据原貌,不做任何修改!
两个主题:ods_base_log,ods_base_db
二、DWD&DIM层
1.行为数据
行为数据:DWD(存放于Kafka)
主要任务:
1)过滤脏数据 --> 脏数据存放到测输出流,还可以计算出脏数据率
2)新老用户校验 --> 前台校验不准确
3)分流 --> 不同类型的日志进行分流,页面日志、启动日志、曝光日志(离线数仓中还有动作日志和错误日志)
4)将分流后的数据分别写入Kafka的不同主题
2.业务数据
业务数据:DWD(存放到Kafka)——DIM(利用Phoenix存放到HBase)
主要任务: