Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
HBase, mail # dev - possible improvement to compaction invocation


+
Ted Yu 2013-03-20, 21:14
Copy link to this message
-
Re: possible improvement to compaction invocation
Jesse Yates 2013-03-20, 21:27
Since compactions are long running, async jobs anyways, I don't see much
gain in grouping these together. Sure, we might save a round-trip, but
these are neither high-volume calls nor bottle-necked in the RTT of the
request.

It could be nice to see this unified though into a general multi-region
Callable that can do do this same logic cleanly; certainly could think of a
couple places we might want to do that.
-------------------
Jesse Yates
@jesse_yates
jyates.github.com
On Wed, Mar 20, 2013 at 2:14 PM, Ted Yu <[EMAIL PROTECTED]> wrote:

> Hi,
> I was looking at how compaction is invoked from HBaseAdmin (line 1460 in
> trunk code)
>
>         final String tableName = tableNameString(tableNameOrRegionName,
> ct);
>
>         List<Pair<HRegionInfo, ServerName>> pairs >
>           MetaReader.getTableRegionsAndLocations(ct,
>
>               tableName);
>
>         for (Pair<HRegionInfo, ServerName> pair: pairs) {
>
>           if (pair.getFirst().isOffline()) continue;
>
>           if (pair.getSecond() == null) continue;
>
>           try {
>
>             compact(pair.getSecond(), pair.getFirst(), major,
> columnFamily);
>
> We issue one compaction request per region.
>
> Looks like we can group regions which reside on the same server and make
> one network trip per region server.
>
>
> Your comment on this would be appreciated.
>