You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Hari Mankude <hm...@talena-inc.com> on 2013/04/29 17:30:19 UTC

batch version of checkAndPut

Is there a batch version of checkAndPut() in the trunk? If so, can you
point me to the appropriate jira?

thanks
hari

Re: batch version of checkAndPut

Posted by Hari Mankude <hm...@talena-inc.com>.
Done, hbase-8458.

thanks
hari

On Mon, Apr 29, 2013 at 1:31 PM, Ted Yu <yu...@gmail.com> wrote:

> Hari:
> Do you mind logging a JIRA to capture the requirement ?
>
> Thanks
>
> On Mon, Apr 29, 2013 at 1:30 PM, Hari Mankude <hmankude@talena-inc.com
> >wrote:
>
> > Yes, client side will partition the puts on region boundaries. However,
> > instead of doing batch put, it would be required to do something
> equivalent
> > of batch checkAndPut().
> >
> > thanks
> > hari
> >
> > On Mon, Apr 29, 2013 at 10:57 AM, Ted Yu <yu...@gmail.com> wrote:
> >
> > > Looks like this would require client side to partition the batch Puts
> > > according to region boundaries.
> > >
> > > Is my understanding correct ?
> > >
> > > On Mon, Apr 29, 2013 at 10:54 AM, Hari Mankude <
> hmankude@talena-inc.com
> > > >wrote:
> > >
> > > > Sure, the use case is updating 100s of rows [each row has to be
> updated
> > > > atomically] by multiple threads. Batching is setup to do aggregate
> data
> > > on
> > > > a regionserver granularity. The objective is to reduce the rpc
> overhead
> > > > similar to batch get or batch put. The objective is NOT to do
> cross-row
> > > > locking or expect any type of multi-row atomicity.
> > > >
> > > > hari
> > > >
> > > > On Mon, Apr 29, 2013 at 9:13 AM, Ted Yu <yu...@gmail.com> wrote:
> > > >
> > > > > checkAndPut() checks specific row. Can you outline your requirement
> > in
> > > a
> > > > > bit more detail ?
> > > > >
> > > > > Meaning, if you supply List of Puts to the batch API. Are the Puts
> > > > > targeting the same row ? If not, how would the Puts outside the
> > region
> > > > > where the checked row belongs be handled ?
> > > > >
> > > > > Cheers
> > > > >
> > > > > On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <
> > hmankude@talena-inc.com
> > > > > >wrote:
> > > > >
> > > > > > Is there a batch version of checkAndPut() in the trunk? If so,
> can
> > > you
> > > > > > point me to the appropriate jira?
> > > > > >
> > > > > > thanks
> > > > > > hari
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: batch version of checkAndPut

Posted by Ted Yu <yu...@gmail.com>.
Hari:
Do you mind logging a JIRA to capture the requirement ?

Thanks

On Mon, Apr 29, 2013 at 1:30 PM, Hari Mankude <hm...@talena-inc.com>wrote:

> Yes, client side will partition the puts on region boundaries. However,
> instead of doing batch put, it would be required to do something equivalent
> of batch checkAndPut().
>
> thanks
> hari
>
> On Mon, Apr 29, 2013 at 10:57 AM, Ted Yu <yu...@gmail.com> wrote:
>
> > Looks like this would require client side to partition the batch Puts
> > according to region boundaries.
> >
> > Is my understanding correct ?
> >
> > On Mon, Apr 29, 2013 at 10:54 AM, Hari Mankude <hmankude@talena-inc.com
> > >wrote:
> >
> > > Sure, the use case is updating 100s of rows [each row has to be updated
> > > atomically] by multiple threads. Batching is setup to do aggregate data
> > on
> > > a regionserver granularity. The objective is to reduce the rpc overhead
> > > similar to batch get or batch put. The objective is NOT to do cross-row
> > > locking or expect any type of multi-row atomicity.
> > >
> > > hari
> > >
> > > On Mon, Apr 29, 2013 at 9:13 AM, Ted Yu <yu...@gmail.com> wrote:
> > >
> > > > checkAndPut() checks specific row. Can you outline your requirement
> in
> > a
> > > > bit more detail ?
> > > >
> > > > Meaning, if you supply List of Puts to the batch API. Are the Puts
> > > > targeting the same row ? If not, how would the Puts outside the
> region
> > > > where the checked row belongs be handled ?
> > > >
> > > > Cheers
> > > >
> > > > On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <
> hmankude@talena-inc.com
> > > > >wrote:
> > > >
> > > > > Is there a batch version of checkAndPut() in the trunk? If so, can
> > you
> > > > > point me to the appropriate jira?
> > > > >
> > > > > thanks
> > > > > hari
> > > > >
> > > >
> > >
> >
>

Re: batch version of checkAndPut

Posted by Hari Mankude <hm...@talena-inc.com>.
Yes, client side will partition the puts on region boundaries. However,
instead of doing batch put, it would be required to do something equivalent
of batch checkAndPut().

thanks
hari

On Mon, Apr 29, 2013 at 10:57 AM, Ted Yu <yu...@gmail.com> wrote:

> Looks like this would require client side to partition the batch Puts
> according to region boundaries.
>
> Is my understanding correct ?
>
> On Mon, Apr 29, 2013 at 10:54 AM, Hari Mankude <hmankude@talena-inc.com
> >wrote:
>
> > Sure, the use case is updating 100s of rows [each row has to be updated
> > atomically] by multiple threads. Batching is setup to do aggregate data
> on
> > a regionserver granularity. The objective is to reduce the rpc overhead
> > similar to batch get or batch put. The objective is NOT to do cross-row
> > locking or expect any type of multi-row atomicity.
> >
> > hari
> >
> > On Mon, Apr 29, 2013 at 9:13 AM, Ted Yu <yu...@gmail.com> wrote:
> >
> > > checkAndPut() checks specific row. Can you outline your requirement in
> a
> > > bit more detail ?
> > >
> > > Meaning, if you supply List of Puts to the batch API. Are the Puts
> > > targeting the same row ? If not, how would the Puts outside the region
> > > where the checked row belongs be handled ?
> > >
> > > Cheers
> > >
> > > On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <hmankude@talena-inc.com
> > > >wrote:
> > >
> > > > Is there a batch version of checkAndPut() in the trunk? If so, can
> you
> > > > point me to the appropriate jira?
> > > >
> > > > thanks
> > > > hari
> > > >
> > >
> >
>

Re: batch version of checkAndPut

Posted by Ted Yu <yu...@gmail.com>.
Looks like this would require client side to partition the batch Puts
according to region boundaries.

Is my understanding correct ?

On Mon, Apr 29, 2013 at 10:54 AM, Hari Mankude <hm...@talena-inc.com>wrote:

> Sure, the use case is updating 100s of rows [each row has to be updated
> atomically] by multiple threads. Batching is setup to do aggregate data on
> a regionserver granularity. The objective is to reduce the rpc overhead
> similar to batch get or batch put. The objective is NOT to do cross-row
> locking or expect any type of multi-row atomicity.
>
> hari
>
> On Mon, Apr 29, 2013 at 9:13 AM, Ted Yu <yu...@gmail.com> wrote:
>
> > checkAndPut() checks specific row. Can you outline your requirement in a
> > bit more detail ?
> >
> > Meaning, if you supply List of Puts to the batch API. Are the Puts
> > targeting the same row ? If not, how would the Puts outside the region
> > where the checked row belongs be handled ?
> >
> > Cheers
> >
> > On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <hmankude@talena-inc.com
> > >wrote:
> >
> > > Is there a batch version of checkAndPut() in the trunk? If so, can you
> > > point me to the appropriate jira?
> > >
> > > thanks
> > > hari
> > >
> >
>

Re: batch version of checkAndPut

Posted by Hari Mankude <hm...@talena-inc.com>.
Sure, the use case is updating 100s of rows [each row has to be updated
atomically] by multiple threads. Batching is setup to do aggregate data on
a regionserver granularity. The objective is to reduce the rpc overhead
similar to batch get or batch put. The objective is NOT to do cross-row
locking or expect any type of multi-row atomicity.

hari

On Mon, Apr 29, 2013 at 9:13 AM, Ted Yu <yu...@gmail.com> wrote:

> checkAndPut() checks specific row. Can you outline your requirement in a
> bit more detail ?
>
> Meaning, if you supply List of Puts to the batch API. Are the Puts
> targeting the same row ? If not, how would the Puts outside the region
> where the checked row belongs be handled ?
>
> Cheers
>
> On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <hmankude@talena-inc.com
> >wrote:
>
> > Is there a batch version of checkAndPut() in the trunk? If so, can you
> > point me to the appropriate jira?
> >
> > thanks
> > hari
> >
>

Re: batch version of checkAndPut

Posted by Jesse Yates <je...@gmail.com>.
You also might want to consider looking at the Constraint code - its not
batch, but you could pretty easily adopt it to be a batch-based endpoint

-Jesse

On Monday, April 29, 2013, Ted Yu wrote:

> checkAndPut() checks specific row. Can you outline your requirement in a
> bit more detail ?
>
> Meaning, if you supply List of Puts to the batch API. Are the Puts
> targeting the same row ? If not, how would the Puts outside the region
> where the checked row belongs be handled ?
>
> Cheers
>
> On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <hmankude@talena-inc.com<javascript:;>
> >wrote:
>
> > Is there a batch version of checkAndPut() in the trunk? If so, can you
> > point me to the appropriate jira?
> >
> > thanks
> > hari
> >
>


-- 
-------------------
Jesse Yates
@jesse_yates
jyates.github.com

Re: batch version of checkAndPut

Posted by Ted Yu <yu...@gmail.com>.
checkAndPut() checks specific row. Can you outline your requirement in a
bit more detail ?

Meaning, if you supply List of Puts to the batch API. Are the Puts
targeting the same row ? If not, how would the Puts outside the region
where the checked row belongs be handled ?

Cheers

On Mon, Apr 29, 2013 at 8:30 AM, Hari Mankude <hm...@talena-inc.com>wrote:

> Is there a batch version of checkAndPut() in the trunk? If so, can you
> point me to the appropriate jira?
>
> thanks
> hari
>