过滤器
如何在100 亿URL中判断某个URL是否存在
1. 布隆过滤器
使用:布隆过滤器。可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难
效果:文章提到:如果将 100 亿 url(64bit) 放到 HashMap 中需要 640GB,那么使用布隆过滤器后又需要多少空间呢?答案是约等于 23 GB
2. 布谷过滤器-cuckoo filter
优化:布隆过滤器只支持新增、查找,布谷过滤器支持删除
使用:布隆过滤器。可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难
效果:文章提到:如果将 100 亿 url(64bit) 放到 HashMap 中需要 640GB,那么使用布隆过滤器后又需要多少空间呢?答案是约等于 23 GB
优化:布隆过滤器只支持新增、查找,布谷过滤器支持删除