Transform
map
示图
映射:将数据流中的数据进行转换, 形成新的数据流,消费一个元素并产出一个元元素<br>
参数:lambda表达式/MapFunction 实现类
返回类型 :DataStream
flatMap
示图
扁平映射:将数据流中的整体拆分成一个一个的个体使用,消费一个元素并产生零到多个元素
参数:lambda表达式/FlatMapFunction 实现类
返回类型:DataStream
filter
示图
过滤:根据指定规则,将符合条件的数据保留,不符合的数据 舍弃
参数:lambda表达式/FilterFunction 实现类
返回类型:DataStream
keyby
示图
分流:根据key的hashcode将元素分到不同的分区,keby()是通过hash 来分区的
参数:POJO属性/元组索引/KeySelector实现类,不能使用数组
返回类型:keyedStream
针对keyedStream 的处理
滚动聚合算子(Rolling Aggregation)
max
sum
min
reduce
// TODO Reduce<br> // 1.输入的类型要一致,输出的类型也要一致<br> // 2.第一条来的数据,不会进入reduce,其他每次数据都会进入reduce<br> // 3.帮我们保存了中间状态,能获取上一次的执行结果
process
获取环境相关信息,可使用process 自定义算子
shuffle
示图
洗牌:将数据随机分布打散到下游
参数:无
返回类型:DataStream
筛选
OutputTag
getSideOutput
connect
示图
连接:俩个流放在一起处理
示例:A.connect(B)
返回类型:ConnectedStreams<br>
union
示图
合并:将多个流合在一起处理。流必须类型一致,输出类型也一致
示例:A.union(B)
返回类型:DataStream