一般是按时间(比如天)来group by,state配置了超时过期的时间。 基本的去重方式就是靠state(比如RocksDbState)。 有mini-batch来减少对state的访问。
如果有倾斜,那是解倾斜问题的话题了。 Best, Jingsong Lee ------------------------------------------------------------------ From:lvwenyuan <lvwenyuan...@163.com> Send Time:2019年9月4日(星期三) 15:11 To:user-zh <user-zh@flink.apache.org> Subject:Re:回复: 关于Flink SQL DISTINCT问题 对,肯定是按照窗口去重的。我就想问下,窗口去重时,所采用的方式 在 2019-09-04 14:38:29,"athlon...@gmail.com" <athlon...@gmail.com> 写道: >在窗口内去重吧,不可能无限保留去重数据的 > > > >athlon...@gmail.com > >发件人: lvwenyuan >发送时间: 2019-09-04 14:28 >收件人: user-zh >主题: 关于Flink SQL DISTINCT问题 >各位大佬好: > 我想问下,关于flink sql的实时去重,就是count(distinct user_id) > 。就是Flink内部是如何做到实时去重,如果对于数据量比较大的时候实时去重,是否会有性能问题。用的Blink Planner