-
Notifications
You must be signed in to change notification settings - Fork 256
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EPIC: Node & key format #548
Comments
Other steps:
Can be done later, but needed pre-integration for pruning:
|
modify the key format from a hash of the data to be write_version|node_path_in_tree. where write_version is the left side and node_path_in_tree is the right side? Or is it like, both sides have that? |
NOTE: |
So this proposal will increase a Few important questions
|
thank you, but as mentioned in a few places store/v2 work is unknown at this time for countless reasons. |
@marbar3778 |
this is expected, do you see a problem with this? cc @ValarDragon |
@marbar3778, I'm also working on this, can you assign me as well |
Currently IAVL does not take advantage of data locality on disk. The way IAVL store nodes on disk is with a hash that gets stored in a random location on disk and makes it so that IAVL needs to do a random search of disk in order to find the data. With the recent work from osmosis on fast node we saw a large performance improvement with a trade off on writes.
Secondly, there are two key formats, live keys and orphan keys referenced by node hash which also indexes the orphan nodes.
A next step would be to modify IAVL to structure data on disk in a logical manner to reduce random searches and reduce random compaction of disk data.
There are two things that can be done in order to take advantage of this.
Work Scope:
Phase 1:
write_version|node_path_in_tree
.Phase 2:
(Proposed by @ValarDragon)
The text was updated successfully, but these errors were encountered: