Flink双流Join底层原理
底层原理简介 LState:存储左边数据流中的数据。 RState:存储右边数据流中的数据。 当左边数据流数据到达的时候会保存到LState,并且到RState中进行Join。将Join生成的结果数据发送到下游。 右边数据流中数据到达的时候,会保存到RState当中,并且到LState中进行Join,然后将Join之嚄胡的结果数据发送到下游。 为了保障左右两边流中需要Join的数据出现在相同节点,Flink SQL会利用Join中的on的关联条件进行分区,把相同关联条件 的数据分发到同一个分区里面。 普通双流Join 现有订单表A和支付表B进行关联得到汇总表C。订单表和支付表初始数据如下: 表A:订单表数据 order_id timestamp 1001 2023-02-04 10:00:00 1002 2023-01-04 10:01:02 表B:支付表数据 order_id pay_money order_id pay_money 1001 80 1002 100 inner join 当A表中每一条数据到达时,都会和B表中....