开发者社区 问答 正文

请教Cumulate Windows问题

看到社区文档说是Blink的去重是一种特殊Top-N。经了解Top-N会保留一个最小堆,麻烦问下那其他数据是被机制清除了,还是会保存在内存中呀。用了这个Blink去重还需要用Idle State Retention Time来设置状态的TTL吗? *来自志愿者整理的flink邮件归档

展开
收起
JACKJACK 2021-12-08 15:37:35 1234 分享 版权
1 条回答
写回答
取消 提交回答
  • 对的是我!

    特殊的Top-N是说去重的语义是Top 1, 所以只用保留一个大小的堆,其底层实现和其他Top-N的数据结构不一样,并不需要维护一个堆, 其他的数据根据语义 要么被丢掉,要么撤回下发新值,另外这种有状态的算子,数据都是放在state里的,设置的TTL是生效的,表示state中的数据有效期时多久,这个数据会用来判断新来的数据是丢掉还是撤回旧值并下发新的值。*来自志愿者整理的flink邮件归档

    2021-12-08 16:44:13
    赞同 展开评论
问答标签:
问答地址: