hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Purtell <apurt...@apache.org>
Subject Re: Help on Coprocessor
Date Wed, 18 Jan 2012 22:34:44 GMT
> What I fear is that my Region Server can enter into erratic gc because of a heavy coprocessor.

As you say, the coprocessor code is executing in the same JVM as the RegionServer, so you
have to be aware of this.

> If I hook in my coprocessor for client api calls (put, get), is my
> coprocessor executed synchronously or asynchronously with the api call
> itself ?

Synchronously.

If you want to take asynchronous action, you'll have to use an Executor or your own thread
pool, and dispatch work to it for async/background operation, that sort of thing.


> Will I be impacting the throughputs of write if my coprocessors are heavy on execution
?


Yes.

Best regards,


  - Andy

Problems worthy of attack prove their worth by hitting back. - Piet Hein (via Tom White)


----- Original Message -----
> From: kisalay <kisalay@gmail.com>
> To: user@hbase.apache.org
> Cc: 
> Sent: Wednesday, January 18, 2012 2:57 AM
> Subject: Help on Coprocessor
> 
> Hi,
> 
> I was evaluating to use coprocessors to process data as it is inserted in
> one table and subsequently insert it in another table. I was considering to
> hook the CP to postput on the first table. While evaluating I went through
> a couple of JIRAs like : HBASE-2000, HBASE-2001 and HBASE-1512.
> I understand that the coprocessors are code that run in-process on each
> region server.
> 
> The basic doubt that I had is:
> 
> 1. If the coprocessor runs in the same jvm instance as the region server
> itself, will it be a good idea to do some non-trivial processing / io /
> aggregation in my coprocessor ? What I fear is that my Region Server can
> enter into erratic gc because of a heavy coprocessor. My doubts came more
> from HBASE-1512.
> 
> 2. If I hook in my coprocessor for client api calls (put, get), is my
> coprocessor executed synchronously or asynchronously with the api call
> itself ? Will I be impacting the throughputs of write if my coprocessors
> are heavy on execution ?
> 
> Thanks
> Kisalay
> 

Mime
View raw message