开发者社区> 问答> 正文

reduce side join + BloomFilter是什么?

reduce side join + BloomFilter是什么?

展开
收起
芯在这 2021-12-06 00:20:15 300 0
1 条回答
写回答
取消 提交回答
  •  在某些情况下,SemiJoin抽取出来的小表的key集合在内存中仍然存放不下,这时候可以使用BloomFiler以节省空间。

      BloomFilter最常见的作用是:判断某个元素是否在一个集合里面。它最重要的两个方法是:add() 和contains()。最大的特点是不会存在false negative,即:如果contains()返回false,则该元素一定不在集合中,但会存在一定的true negative,即:如果contains()返回true,则该元素可能在集合中。

      因而可将小表中的key保存到BloomFilter中,在map阶段过滤大表,可能有一些不在小表中的记录没有过滤掉(但是在小表中的记录一定不会过滤掉),这没关系,只不过增加了少量的网络IO而已。

    2021-12-06 00:20:30
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Lazy Join Optimizations Without Upfront Statistics 立即下载
Lazy-Join Optimizations withou 立即下载
低代码开发师(初级)实战教程 立即下载