ApacheFlink—是否可以用操作符状态模拟键控状态?

cwtwac6a  于 2021-06-24  发布在  Flink
关注(0)|答案(1)|浏览(324)

只是为了实验和学习。假设我们有一个使用keyed state的keyed进程函数,我们想使用operator state重写它。问题是,有没有可能保持完全相同的行为?例如,可以使用operator union list state,然后设置一个计时器来自动删除在给定时间内未使用的状态…这可能会起作用,但我更喜欢一种方法,即知道在恢复/还原后立即使用union list state的哪些元素,丢弃其他元素,根据已分配的当前操作符示例的键集。有可能做到这一点吗?

qvsjd97n

qvsjd97n1#

假设,是的,我认为这在某种程度上是可能的。您必须放弃所有需要keyedstream的东西,比如计时器和rocksdb状态后端。表现也会受到影响。
至于确定哪些密钥组(以及最终哪些密钥)由特定示例处理的问题,请参见以下邮件列表线程:
如何找出哪个键组属于哪个子任务
使用keyby确定地将每条记录散列到处理器/任务/插槽

相关问题