You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We have already templated the library for the Key in a branch. The other thing that we need to do to cleanly address the leaf data layout is template the tree for the Value as well as the key. When doing that, we should create a union of the leaf type which is optimized for at least the case where both Key and Value are fixed length.
I do think it is worth optimizing the leaf for the case where just the key or just the value are fixed length. The latter supports the common case of variable length composite keys to record identifiers for secondary indices. The former case (int => bytes) is the case originally supported by the library. I am not sure how much maximum efficiency matters there, but ensuring that we do not regress this matters.
There are various code paths which should get optimized when templating the Value type. Most of the ground work for doing that is being addressed (on the key side) for #661.
The text was updated successfully, but these errors were encountered:
We have already templated the library for the Key in a branch. The other thing that we need to do to cleanly address the leaf data layout is template the tree for the Value as well as the key. When doing that, we should create a union of the leaf type which is optimized for at least the case where both Key and Value are fixed length.
I do think it is worth optimizing the leaf for the case where just the key or just the value are fixed length. The latter supports the common case of variable length composite keys to record identifiers for secondary indices. The former case (int => bytes) is the case originally supported by the library. I am not sure how much maximum efficiency matters there, but ensuring that we do not regress this matters.
There are various code paths which should get optimized when templating the Value type. Most of the ground work for doing that is being addressed (on the key side) for #661.
The text was updated successfully, but these errors were encountered: