场景
在项目开发中,我们经常会遇到去重问题。比如:判断一个人有没有浏览过一篇文章,判断一个人当天是否登录过某个系统,判断一个ip是否发过一个请求,等等。
比较容易想到的是使用set来实现这个功能。但如果数据量较大,使用set会非常消耗内存,性能也不高。在前面的文章中,我们介绍了一种数据结构:BitMap来提高性能。但BitMap仍然比较消耗内存,尤其是在数据比较稀疏的情况下,使用BitMap并不划算。
2025年06月09日
场景
在项目开发中,我们经常会遇到去重问题。比如:判断一个人有没有浏览过一篇文章,判断一个人当天是否登录过某个系统,判断一个ip是否发过一个请求,等等。
比较容易想到的是使用set来实现这个功能。但如果数据量较大,使用set会非常消耗内存,性能也不高。在前面的文章中,我们介绍了一种数据结构:BitMap来提高性能。但BitMap仍然比较消耗内存,尤其是在数据比较稀疏的情况下,使用BitMap并不划算。