On Mon, Jul 25, 2011 at 2:26 PM, Gary Helmling wrote:
Unfortunately there's no easy patch set to pull coprocessors into any 0.90
HBase version (including CDH3 HBase). The changes are extensive and
invasive and include RPC protocol changes. Internally at Trend Micro we
a heavily, heavily patched 0.90-based version of HBase that includes
coprocessors and security. But that is only possible with a lot of effort
to keep things up to date with the HBase 0.90 development.
At one point we had made a 0.90-coprocessor branch available, but it's
simply too much work to keep it up to date. It's in everyone's best
interests if we instead focus on getting out a 0.92 release that includes
HBase trunk (and by extension 0.92) of course supports running on CDH3, so
you should have no problem plugging in the new version once HBase 0.92 is
On Mon, Jul 25, 2011 at 1:23 PM, Paul Nickerson <
We currently run on the cloudera stack. Would this be something that we can
pull, compile, and plug right into that stack?
----- Original Message -----
From: "Gary Helmling" <firstname.lastname@example.org>
Sent: Monday, July 25, 2011 2:02:50 PM
Subject: Re: Fanning out hbase queries in parallel
Coprocessors are currently only in trunk. They will be in the 0.92 release
once we get that out. There's no set date for that, but personally I'll be
trying to help get it out sooner than later.
On Mon, Jul 25, 2011 at 7:37 AM, Michel Segel <email@example.com
Which release(s) have coprocessors enabled?
Sent from a remote device. Please excuse any typos...
On Jul 24, 2011, at 11:03 PM, Sonal Goyal wrote:
Have you taken a look at HBase coprocessors? I think you will find
I would like to implement a multidimensional query system that
large amounts of data on-the-fly by fanning out queries in parallel.
should be fast enough for interactive exploration of the data and
enough to take sets of hundreds or thousands of dimensions with high
cardinality, and aggregate them from high granularity to low
Dimensions and their values are stored in the row key. For instance,
keys look like this
and each row contains numerical values within their column families,
as plays=100, versioned by the date of calculation.
User wants the top "Foo" values with blah=123 sorted downward by
plays in july. My current thinking is that a query would get
grouping all Foo-prefixed row keys by region server, and send the
each of those. Each region server iterates through all of it's row
start with Foo=something,blah=, and passes the query on to all
containing blahs that equal 123, which then contain play counts.
row keys, as well as the sum of all their play values within july,
passed back up the chain and sorted/truncated when possible.
It seems quite complicated and would involve either modifying hbase
code or at the very least using the deep internals of the api. Does
seem like a practical solution or could someone offer some ideas?