Implement Blocked Bloom Filters #78
Labels
enhancement
New feature or request
good first issue
Good for newcomers
help wanted
Extra attention is needed
performance
Implement Blocked Bloom Filters as an alternative to the current "standard" bloom filters and benchmark its impact on point reads and FPR.
Add a benchmark to https://github.com/fjall-rs/lsm-tree/blob/be649abf47554f98c41056681b8edb1b34ff3a57/benches/bloom.rs.
There is a "filter type" byte in the filter section of the
Segment
so we can variably switch out different filter types without breaking change:lsm-tree/src/bloom/mod.rs
Line 70 in be649ab
0 = Standard bloom filter
The
Segment
"load from file" procedure needs to be adjusted to load the correct filter by matching on filter type byte, then we can use enum_dispatch as the top-level filter typeFilterType should also become an enum with conversion into a u8 (encode/decode trait).
The text was updated successfully, but these errors were encountered: