Flink生产最jia实践

数据流上有状态的计算
对接处理Kafka的前端打点数据,写入到Doris
1.dwd 明细用户每天听课的打点数据(这里会对1分钟内的多个点数据进行去重,保证每分钟只会有一条记录)
2.dws 汇总用户每天每个课程下的累计听课时长
3.dwt 汇总用户在每一个课程下的总时长

1.获取上下文执行环境env
配置执行环境参数:
1.设置使用数据产生的时间:EventTime
2.设置全局并行度为4
3.根据 env 得到 table_env
2.得到Table 执行环境 table_env
配置t_env环境参数
为t_env注册自定义函数

3.使用table的方式注册 Kafka Source,同时注册结果数据的Sink 表

4.编写从Source到Sink的逻辑处理SQL语句

5.调用t_env.execute_sql(SQL逻辑语句)

时间语义:处理时间 事件时间 到达FLink程序的时间
时间:EventTime(性能时效性稍差,可以解决乱序) ProcessTime 到达FLink程序的时间
Window:无界流划分为有界流
1.根据是否keyby :
不带key的:调用windowAll划分窗口
带key的: 调用window划分窗口

2.划分之后可以作用上窗口函数:
增量类型:来一条处理一条 reduce agg
全量类型:比如求某个窗口的最大值 process ProcessWindowFunction<IN, OUT, KEY, W extends Window>[可以得到窗口的开始时间 结束时间等]

WindowFunction :对于整个窗口作用上一个函数,对其数据进行处理:
增量:一个窗口内

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值