On 04/24/2015 04:11 PM, Prasanna Rajaperumal wrote:
> Hello,
>
> My team has a need for doing batch puts to HBase. Much of the code for
> this is already in HBase implementation, but relevant interfaces are not
> present. I was planning to implement this in Kite.
> Here is a proposal (Interface with documentation) on what I was
> thinking. Would really appreciate if someone from here looked at it and
> gave their opinions.
>
>
https://gist.github.com/prazanna/b5d5d7e248b2076dfe30
I like the put and get methods, but I think the delete could be a little
more clear. What about delete(Iterable<E> entities) and
deleteByKey(Iterable<Key> keys)?
> I am particularly not sure about failure semantics for a batch put
> operation. Current semantics would mean that records until the error
> would be flushed to the dataset. Is it okay not to provide ALL or
> NOTHING transaction semantics for a batch operation like this.
>
> -Prasanna
I like how your `put` operation returns an iterable of booleans to
indicate whether the individual put operations succeeded. As long as we
can satisfy that API, I think the partial success makes sense. Might
need to do the same thing for the delete variants.
rb