-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Restructuring: separate index with it's disk state and index subtree restructing * Fix minor issues * B+ tree work in progress * Now it works with trees with height higher than 1 * Add one node case processing * Fix bug with pick of first elem in node * Remove panic in bptree module * Write test, restructure and find bug * Fix bug and rewrite bad tests * Fix namings and warning * Fix last recs bug * Fix review issues * Implement builder pattern for bptree serialize process * Change serializer's dynamic check on static one * IndexStruct doesn't use IndexHeader now * Fix duplicated code * Make file index independent from filter * Start generalization (serializer is generalized) * Remove redundant bound * Revert "Remove redundant bound" This reverts commit f4fa7e2. * Revert "Start generalization (serializer is generalized)" (there is a performance hit in this version, so I decided to postpone it. This generic implementation may be found and is discussed here: #101) This reverts commit e156056. * Fix review issues * Add benchmarks for indices * Change benchmarks params * Fix error when last node gets only 1 key * Rewrite elems distribution per layer logic * Add root node in serialized form in RAM * Add search in serialized node (seems like deserialization is expensive) * Remove deserialization from leaf nodes (that's also expensive) * Remove vector creation operation and change distribution strategy a bit again * Change keys distribution in leaf node * Ordered headers are used as leaves * Remove redundant read in file on the left side of leaf node and push record headers from newest to oldest (reversed order) * Make get_any return the latest header instead of first one (to enable update option) * Reverse tree in file and move headers after tree (now during search block are read from left to right only instead of from right to left) * Revert "Make get_any return the latest header instead of first one (to enable update option)" This reverts commit bdecc68. * Remove leaves stage because now it's redundant (headers are used as leaves) * Fix description of b+-tree indices * Bloom filter offload * Fix * Shorter default impl * Platform agnosting bloom filter buffer * Add BloomDataProvider trait * Add method to get allocated memory * Fix errors and add unit test * Update CHANGELOG.md * Fix review issues * Fix review issues * Fix review issues Co-authored-by: Perestoronin Pavel <[email protected]> Co-authored-by: Pavel Iakushin <[email protected]>
- Loading branch information
1 parent
f10d727
commit a4e99f2
Showing
8 changed files
with
342 additions
and
63 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.