Skip to content
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

Store keys in ordinary indexes unsliced #652

Open
jeltsch opened this issue Mar 27, 2025 · 1 comment
Open

Store keys in ordinary indexes unsliced #652

jeltsch opened this issue Mar 27, 2025 · 1 comment
Assignees

Comments

@jeltsch
Copy link
Collaborator

jeltsch commented Mar 27, 2025

We shall change the representation of IndexCompact to use Unsliced SerialisedKey instead of SerialisedKey. This will give us the following advantages:

  • It is statically guaranteed that there are no additional prefixes and suffixes stored alongside key payloads.

  • The overhead for storing slice information, which also includes the overhead from the extra indirection in paths to byte arrays with payloads, doesn’t occur anymore.

@jeltsch jeltsch self-assigned this Mar 27, 2025
@jorisdral
Copy link
Collaborator

jorisdral commented Mar 27, 2025

Note that we currently use Unsliced only in the tie-breaker map of the compact index. The tie-breaker map is intended to rarely be consulted, so some of the operations like <= on Unsliced SerialisedKey are not super optimised. It will convert Unsliced SerialisedKey to SerialisedKey before using <= on that. For the ordinary index, they probably should be optimised by skipping the conversion step.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants