Hi hiliuxg,

count distinct 用的MapVIew来做的去重:
在batch场景下,MapView的底层实现就是HashMap;
在streaming场景下,MapView的底层实现是MapState,因为必须要用到state+cp,才能保证任务重启后状态不会丢失。

hiliuxg <736742...@qq.com> 于2020年3月19日周四 下午11:31写道:

> hi all:
> 请问flink sql&nbsp; count(disitinct)&nbsp; 底层的算法是怎样的? 是bitmap ?
> 还是简单通过java的set容器去重的呢?



-- 

Benchao Li
School of Electronics Engineering and Computer Science, Peking University
Tel:+86-15650713730
Email: libenc...@gmail.com; libenc...@pku.edu.cn

回复