PostgreSQL 9.6 黑科技 bloom 算法索引,一个索引支撑任意列组合查询

  1. 云栖社区>
  2. 阿里云数据库ApsaraDB>
  3. 博客>
  4. 正文

PostgreSQL 9.6 黑科技 bloom 算法索引,一个索引支撑任意列组合查询

德哥 2016-05-23 15:37:55 浏览12923
展开阅读全文

PostgreSQL 确实是学术界和工业界的璀璨明珠,它总是喜欢将学术界的一些玩意工业化,这次的bloom又是一个代表。
在PG很多的地方都能看到学术的影子,比如pgbench支持产生泊松分布,高斯分布的随机值。
bloom filter是一个有损过滤器,使用有限的比特位存储一些唯一值集合所产生的bits。
通过这些bits可以满足这样的场景需求,给定一个值,判断这个值是否属于这个集合。
例如

create table test(c1 int);
insert into test select trunc(random()*100000) from generate_series(1,10000);

使用所有的 test.c1 值,通过bloom filter算法生成一个值val。
然后给定一个值例如 100,判断100是否

网友评论

登录后评论
0/500
评论
德哥
+ 关注
所属团队号: 阿里云数据库ApsaraDB