-
Notifications
You must be signed in to change notification settings - Fork 0
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
Multi-Get and Multi-Put with list of keys #39
Comments
Since I haven't really worked with the fossilDB yet, I might not be the best to give feedback, but my current thoughts are:
However, I understand that this introduces a bit of redundancy, since the keys are encoded again. Not sure whether this is a performance hit. All in all, I don't have a strong opinion here. |
What are the expected error cases. Does it make sense to treat the multi-get/puts as atomic transactions? They could even use the transaction system from rocksdb. |
I agree, I like the
Yes, might be a valid use case, I guess we can encode that by versions containing exactly one entry.
It might!
So in summary I agree that this would bring possible benefits for various codepaths. However, I’m not super sure that this would directly solve problems in wk, since there are a few ways in which the wk code is breaking up transactions into chunks. To achieve end-to-end transactions, larger changes in wk would be required. Also, I don’t know if transactions across column families are possible with rocksDB, those would probably be required to have truly transactional saves |
Sometimes users know a specific list of keys they want to get or put. Currently, they have to send many grpcs, one per key (except for the special case of prefix scan gets). To reduce overhead, it would be nice to add API endpoints that directly support this.
(Note that the name GetMultipleKeys was unfortunately already taken by the prefix-scan-based request)
Any comments on the API draft? @normanrz @philippotto
The text was updated successfully, but these errors were encountered: