栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

3.Flink实时项目之流程分析及环境搭建

3.Flink实时项目之流程分析及环境搭建

1. 流程分析

前面已经将日志数据(ods_base_log)及业务数据(ods_base_db_m)发送到kafka,作为ods层,接下来要做的就是通过flink消费kafka 的ods数据,进行简单的处理作为dwd层,然后再写回到kafka。

每层职能

分层数据描述计算工具存储介质
ODS原始数据,日志和业务日志服务器,maxwellkafka
DWD根据数据对象为单位进行分流,比如订单、页面访问等等。flinkkafka
DWM对于部分数据对象进行进一步加工,比如独立访问、跳出行为。依旧是明细数据。flinkkafka
DIM维度数据flinkhbase
DWS根据某个维度主题将多个事实数据轻度聚合,形成主题宽表。flinkclickhouse
ADS把 Clickhouse 中的数据根据可视化需要进行筛选聚合。clickhouse,sql可视化展示

目前进行到的阶段

2. 环境搭建

https://github.com/zhangbaohpu/gmall-flink-parent

环境

jdk-1.8flink-1.12scala-2.12hadoop-2.7.7

在项目中新建maven模块gmall-realtime,没有父工程,pom文件如下



    4.0.0

    com.zhangbao.gmall
    gmall-realtime
    1.0-SNAPSHOT

    
        1.8
        8
        8
        1.12.0
        2.12
        2.7.7
    
    
        
            org.apache.flink
            flink-java
            ${flink.version}
        
        
            org.apache.flink
            flink-streaming-java_${scala.version}
            ${flink.version}
        
        
            org.apache.flink
            flink-connector-kafka_${scala.version}
            ${flink.version}
        
        
            org.apache.flink
            flink-clients_${scala.version}
            ${flink.version}
        
        
            org.apache.flink
            flink-cep_${scala.version}
            ${flink.version}
        
        
            org.apache.flink
            flink-json
            ${flink.version}
        
        
            com.alibaba
            fastjson
            1.2.68
        
        
        
            org.apache.hadoop
            hadoop-client
            ${hadoop.version}
        
        
        
            org.slf4j
            slf4j-api
            1.7.25
        
        
            org.slf4j
            slf4j-log4j12
            1.7.25
        
        
            org.apache.logging.log4j
            log4j-to-slf4j
            2.14.0
        

    
    
        
            
                org.apache.maven.plugins
                maven-assembly-plugin
                3.0.0
                
                    
                        jar-with-dependencies
                    
                
                
                    
                        make-assembly
                        package
                        
                            single
                        
                    
                
            
        
    

项目结构

log4j.properties

log4j.rootLogger=warn,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

接下来的准备:

我们前面采集的日志数据已经保存到 Kafka 中,作为日志数据的 ODS 层,从 kafka 的ODS 层读取的日志数据分为 3 类, 页面日志、启动日志和曝光日志。这三类数据虽然都是用户行为数据,但是有着完全不一样的数据结构,所以要拆分处理。将拆分后的不同的日志写回 Kafka 不同主题中,作为日志 DWD 层。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/735258.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号