Flink SQL 功能解密系列 —— 流计算“撤回(Retraction)”案例分析
什么是retraction(撤回) 通俗讲retract就是传统数据里面的更新操作,也就是说retract是流式计算场景下对数据更新的处理 方式。 首先来看下流场景下的一个词频统计列子。 没有retract会导致最终结果不正确↑: retract发挥的作用 下面再分享两个双十一期间retract保证数据正确性的业务case: case1: 菜鸟物流订单统计 同一个订单的商品在运输过程中,因为各种原因,物流公司是有可能从A变成B的。为了统计物流公司承担的订单数目,菜鸟团队使用blink计算的retraction机制进行变key汇总操作。 -- TT source_table 数据如下: order_id tms_company 0001 中通 0002 中通 0003 圆通
