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

Implement getMultiSlices method for HBase storage backend #3864

Open
porunov opened this issue Jun 26, 2023 · 0 comments
Open

Implement getMultiSlices method for HBase storage backend #3864

porunov opened this issue Jun 26, 2023 · 0 comments

Comments

@porunov
Copy link
Member

porunov commented Jun 26, 2023

Currently HBaseKeyColumnValueStore doesn't implement a new multi-slices method Map<SliceQuery, Map<StaticBuffer, EntryList>> getMultiSlices(MultiKeysQueryGroups<StaticBuffer, SliceQuery> multiKeysQueryGroups, StoreTransaction txh).
It means that HBase storage backend executes each Slice query sequentially instead of doing so in parallel.
Thus, the performance of using HBase storage backend for multi-slice queries might be affected.

Ideally HBaseKeyColumnValueStore would need to overwrite a default getMultiSlices implementation with the one which queries each Slice query in parallel using either a thread pool, asynchronous execution, or grouping of multiple slices together.
If so, HBase performance should quite improve for multi-slice scenarios (i.e. for queries like .valueMap("foo", "bar"), .has("foo", "bar").has("bar", "foo"), out("foo", "bar"), etc.).

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

No branches or pull requests

1 participant