Flink入门(五)--Flink算子

Map 


DataStream → DataStream 

一个接受一个元素并产生一个元素的函数。

示例

dataStream.map { x => x * 2 }


FlatMap 


DataStream → DataStream 

一个接受一个元素并产生零个、一个或多个元素的函数。

例如

dataStream.flatMap { str => str.split(" ") }


Filter 


DataStream → DataStream 

对于每个元素,设定一个布尔函数,并保留那些使函数返回true的元素。

例如 

dataStream.filter { _ != 0 }


KeyBy 


DataStream → KeyedStream 

逻辑上将流划分为不相交的分区。所有具有相同键的记录都被分配到同一个分区中。在内部,keyBy() 是通过哈希分区来实现的。指定键的方式有多种。

注意:没有实现hashcode()方法的POJO类和任何类型的数组都无法作为Key!!!

Reduce

KeyedStream → WindowedStream

该操作会连续地将当前元素与上一个reduce操作的结果(即最后一个reduced值)进行合并,并发出新的合并后的值。这种操作通常用于计算流数据的累积或滚动汇总。

 例如

keyedStream.reduce { 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值