一.背景说明 在Flink中对流数据进行去重计算是常有操作,如流量域对独立访客之类的统计,去重思路一般有三个: 基于Hashset来实现去重 数据存在内存,容量小,服务重启会丢失. 使用状态编程ValueState/MapState实现去重 常用方式,可以使用内存/文件系统/RocksDB作为状态后端存储. 结合Redis使用布隆过滤器实现去重 适用对上亿数据量进行去重实现,占用资源少效率高,有小概率误判. 这里以自定义布隆过滤器的方式,实现Flink窗口计算中独立访客的统计,数据集样例如下:…