摘要: Keyby点进去看源码,KeySelector是你new 的匿名内部类,重写getkey函数。 它主要是new 一个KeyedStream类(this就是上游的父dataStream,clean检测是不是序列化的) 进到keyStream里面,new了一个 PartitionTransformati 阅读全文
posted @ 2022-01-07 20:50 习惯了蓝 阅读(167) 评论(0) 推荐(0)
摘要: debug一下找到reduce算子的调用链,进到下图这个类里面 主要去看下图这个函数 1. 先拿到 这次进入的value 2.判断是不是在历史状态values里面,拿到历史聚合过的状态值。(这里就已经初步可以看出flink的基于状态是怎么回事了) 2.如果在的话,就调用你new 的reduceFun 阅读全文
posted @ 2022-01-07 18:42 习惯了蓝 阅读(164) 评论(0) 推荐(0)
摘要: flink的keyby算子作用是把相同key的数据发送到一个分区(即一个subtask里面去),采用的是哈希分区方法。 用法多样,主要整理了下图中的四种用法。 第一种是 key(Interger) 用法,传入一个整数,这个整数对应的是元组中的元素顺序是第几个,(注:可以是多个key,不一定只有一个, 阅读全文
posted @ 2022-01-07 17:46 习惯了蓝 阅读(3518) 评论(0) 推荐(0)