Flink Streaming函数操作

max与maxBy的区别。min与minBy同理

maxBy:对比某字段返回最大的一条记录,如果这条记录有N个字段,会全部返回

max:比某字段仅返回此字段,这条记录的吉他字段不返回

 

interval join 该操作需要制定event time

在给定的周期内,按照指定的key对两个keyedStream进行join操作,把符合条件的两个event弄到一起进行操作

例如:把一定时间范围内的分组数据拉成一宽表

streamA与streamB均是按照某个keySelector筛选出来的,后面他们有相同的key才能join

streamA.intervalJoin(streamB)                     [两个流join]

.between(timestamp1,timestamp2)               [在某时间范围内,streamB的时间在streamA的time1与time2之间]

.uperBoundExclusive().lowerBoundExclusive()            [包含刚好等于这两个时间点的数据]

.process(处理逻辑)

 

connect与union

connect之后生成connectStream,内部是一个松散结构,可以对2个流使用不同的方法处理,

但是他们之间可以共享状态,比如共享计数器.

union可以连接多个流.并且连接的流的类型必须一致.

 

 

split 与select

split后返回一个迭代器iterable.在迭代中声明一个list,把符合A条件的结果放入集合中,自己命名一个"AAA",符合B条件的结果也放入集合中,命名"BBB"......CCC...DDD..

然后对这个splitStream.select("XXX","XXX","XXX"....) 返回某个DataStream

 

project

删减event中不需要的属性.比如: Tuple20-> tuple5 降低IO.仅限java使用,scala不可用

 

 

 

 

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值