paimon之aggregation统计数据纠正验证

背景

我们在过往尝试过使用paimon进行分层 Flink & Paimon & StarRocks & Dinky 流式湖仓分层实践验证,一共制作了如下4张表,其中流任务的merge-engine分别为:

  • order_dw.dwd_orders (partial-update)
  • order_dw.dwm_users_shops (aggregation )
  • order_dw.dws_users (aggregation )
  • order_dw.dws_shops (aggregation )

我们经常会有这样的疑问:

1、假设mysql源表中的order_dw.orders的buy_fee在下游paimon流任务表dwm_users_shopsdws_usersdws_shops中都已经完成聚合统计后,这时候,这时候突然对order_dw.orders表中的某一条数据就行修改纠正,正常的业务场景就是改价,那么下游的aggregation任务会是如何?数据是否会纠正?纠正的原理和逻辑是什么?
2、假设我的dwm_users_shops任务突然终止,并且需要从某一个checkpoint/savepoint恢复,那么这时候aggregation任务又会是如何处理聚合数据的?

带着这个疑惑,我们来实践验证一下

实践

我们以Flink & Paimon & StarRocks & Dinky 流式湖仓分层实践验证为基础