hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-3614) Expose per-region request rate metrics
Date Thu, 19 Apr 2012 04:36:16 GMT

    [ https://issues.apache.org/jira/browse/HBASE-3614?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13257226#comment-13257226

stack commented on HBASE-3614:

This could be final: '+  private RegionOperationMetrics regionMetrics;'?

100 chars per line.

Just pass HRegionInfo altogether to the below?

+    this.regionMetrics = new RegionOperationMetrics(conf, this.regionInfo.getTableNameAsString(),

Err... your replacement is better than what was there previously in the below:

-    final String metricPrefix = SchemaMetrics.generateSchemaMetricsPrefix(
-        getTableDesc().getNameAsString(), familyMap.keySet());
-    if (!metricPrefix.isEmpty()) {
-      RegionMetricsStorage.incrTimeVaryingMetric(metricPrefix + "delete_", after - now);
-    }
+    this.regionMetrics.updateDeleteMetrics(familyMap.keySet(), after-now);

Whats happening here?

+        if (cfSet == null) {
+          cfSet = put.getFamilyMap().keySet();
+        } else {
+          cfSetConsistent = cfSetConsistent && put.equals(cfSet);

Do we have to get the column family set each time through?  It never changes (currently) while
the region is open.

Whats a cfSetConsistent?  A comment would  help?

Yeah, I don't follow this stuff:

+      //See if the column families were consistent through the whole thing.
+      //if they were then keep them.  If they were not then pass a null.
+      //null will be treated as unknown.

Should be hbase.metrics.region.exposeOperationTimes instead of hbase.metrics.exposeOperationTimes
to convey its on/off for per-region metrics?

This patch is great.
> Expose per-region request rate metrics
> --------------------------------------
>                 Key: HBASE-3614
>                 URL: https://issues.apache.org/jira/browse/HBASE-3614
>             Project: HBase
>          Issue Type: Improvement
>          Components: metrics, regionserver
>            Reporter: Gary Helmling
>            Assignee: Elliott Clark
>            Priority: Minor
>         Attachments: HBASE-3614-0.patch, HBASE-3614-1.patch, HBASE-3614-2.patch, HBASE-3614-3.patch,
HBASE-3614-4.patch, Screen Shot 2012-04-17 at 2.41.27 PM.png
> We currently export metrics on request rates for each region server, and this can help
with identifying uneven load at a high level. But once you see a given server under high load,
you're forced to extrapolate based on your application patterns and the data it's serving
what the likely culprit is.  This can and should be much easier if we just exported request
rate metrics per-region on each server.
> Dynamically updating the metrics keys based on assigned regions may pose some minor challenges,
but this seems a very valuable diagnostic tool to have available.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message