bloom问题

代码中 init_bloomfilter_writer函数为啥是空的,4.0查询6亿条记录条件为:l_shipmode=’'或l_shipmode like ‘%aaaaaaaaa’时,奇慢啊

BloomFilter的结果表示:不存在那么一定不不存在,存在还是需要二分法扫描

Bloom过滤器不能在范围查询中使用。

你这个字段建了索引,如果是%aaaa都走不上索引,估计是全表扫描。
Explain 看看

这种我知道的,开源出来的代码中初始化布隆过滤器的代码去掉了,所以导致了布隆过滤失效;建表用了USE_BLOOM_FILTER = TRUE并且alter system set bf_cache_miss_count_threshold=1;按理说条件中值在所有记录中是没有的,应该立即返回,可是没有,估计开源没有彻底,把关键的代码去掉了,因为init_bloomfilter_writer函数是空的;还有当建表时,USE_BLOOM_FILTER = TRUE时,导致select count()非常的慢;USE_BLOOM_FILTER = FALSE,select count()正常,肯定是init_bloomfilter_writer没有内容导致

开源代码中缺少has_bloom_filter_macro_block()及get_bf_block_id()

通过比较测试,目前判断下来,这个数据库性能上不行。