You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Enis Soztutar (JIRA)" <ji...@apache.org> on 2016/03/29 05:52:25 UTC

[jira] [Updated] (HBASE-15519) Add per-user metrics

     [ https://issues.apache.org/jira/browse/HBASE-15519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Enis Soztutar updated HBASE-15519:
----------------------------------
    Attachment: hbase-15519_v0.patch

Here is a v0 patch. 

Adds metrics like this: 
{code}
{
    "name" : "Hadoop:service=HBase,name=RegionServer,sub=Users",
    "modelerType" : "RegionServer,sub=Users",
    "tag.Context" : "regionserver",
    "tag.Hostname" : "HW10676.local",
    "numUsers" : 2,
    "User_hbase_metric_append_num_ops" : 0,
    "User_hbase_metric_append_min" : 9223372036854775807,
    "User_hbase_metric_append_max" : 0,
    "User_hbase_metric_append_mean" : 0,
    "User_hbase_metric_append_25th_percentile" : 0,
    "User_hbase_metric_append_median" : 0,
    "User_hbase_metric_append_75th_percentile" : 0,
    "User_hbase_metric_append_90th_percentile" : 0,
    "User_hbase_metric_append_95th_percentile" : 0,
    "User_hbase_metric_append_98th_percentile" : 0,
    "User_hbase_metric_append_99th_percentile" : 0,
    "User_hbase_metric_append_99.9th_percentile" : 0,
    "User_enis_metric_append_num_ops" : 0,
    "User_enis_metric_append_min" : 9223372036854775807,
    "User_enis_metric_append_max" : 0,
    "User_enis_metric_append_mean" : 0,
    "User_enis_metric_append_25th_percentile" : 0,
    "User_enis_metric_append_median" : 0,
    "User_enis_metric_append_75th_percentile" : 0,
    "User_enis_metric_append_90th_percentile" : 0,
    "User_enis_metric_append_95th_percentile" : 0,
    "User_enis_metric_append_98th_percentile" : 0,
    "User_enis_metric_append_99th_percentile" : 0,
    "User_enis_metric_append_99.9th_percentile" : 0,
    "User_enis_metric_get_num_ops" : 44,
    "User_enis_metric_get_min" : 9223372036854775807,
    "User_enis_metric_get_max" : 0,
    "User_enis_metric_get_mean" : 0,
    "User_enis_metric_get_25th_percentile" : 0,
    "User_enis_metric_get_median" : 0,
    "User_enis_metric_get_75th_percentile" : 0,
    "User_enis_metric_get_90th_percentile" : 0,
    "User_enis_metric_get_95th_percentile" : 0,
    "User_enis_metric_get_98th_percentile" : 0,
    "User_enis_metric_get_99th_percentile" : 0,
    "User_enis_metric_get_99.9th_percentile" : 0,
    "User_hbase_metric_scanTime_num_ops" : 132,
    "User_hbase_metric_scanTime_min" : 9223372036854775807,
    "User_hbase_metric_scanTime_max" : 0,
    "User_hbase_metric_scanTime_mean" : 0,
    "User_hbase_metric_scanTime_25th_percentile" : 0,
    "User_hbase_metric_scanTime_median" : 0,
    "User_hbase_metric_scanTime_75th_percentile" : 0,
    "User_hbase_metric_scanTime_90th_percentile" : 0,
    "User_hbase_metric_scanTime_95th_percentile" : 0,
    "User_hbase_metric_scanTime_98th_percentile" : 0,
    "User_hbase_metric_scanTime_99th_percentile" : 0,
    "User_hbase_metric_scanTime_99.9th_percentile" : 0,
    "User_enis_metric_replay_num_ops" : 0,
    "User_enis_metric_replay_min" : 9223372036854775807,
    "User_enis_metric_replay_max" : 0,
    "User_enis_metric_replay_mean" : 0,
    "User_enis_metric_replay_25th_percentile" : 0,
    "User_enis_metric_replay_median" : 0,
    "User_enis_metric_replay_75th_percentile" : 0,
    "User_enis_metric_replay_90th_percentile" : 0,
    "User_enis_metric_replay_95th_percentile" : 0,
    "User_enis_metric_replay_98th_percentile" : 0,
    "User_enis_metric_replay_99th_percentile" : 0,
    "User_enis_metric_replay_99.9th_percentile" : 0,
    "User_hbase_metric_mutate_num_ops" : 2500581,
    "User_hbase_metric_mutate_min" : 0,
    "User_hbase_metric_mutate_max" : 282,
    "User_hbase_metric_mutate_mean" : 0,
    "User_hbase_metric_mutate_25th_percentile" : 0,
    "User_hbase_metric_mutate_median" : 0,
    "User_hbase_metric_mutate_75th_percentile" : 1,
    "User_hbase_metric_mutate_90th_percentile" : 1,
    "User_hbase_metric_mutate_95th_percentile" : 2,
    "User_hbase_metric_mutate_98th_percentile" : 3,
    "User_hbase_metric_mutate_99th_percentile" : 4,
    "User_hbase_metric_mutate_99.9th_percentile" : 12,
    "User_hbase_metric_mutate_TimeRangeCount_0-1" : 1709592,
    "User_hbase_metric_mutate_TimeRangeCount_1-3" : 120854,
    "User_hbase_metric_mutate_TimeRangeCount_3-10" : 17174,
    "User_hbase_metric_mutate_TimeRangeCount_10-30" : 2617,
    "User_hbase_metric_mutate_TimeRangeCount_30-100" : 11,
    "User_hbase_metric_mutate_TimeRangeCount_100-300" : 23,
    "User_hbase_metric_replay_num_ops" : 0,
    "User_hbase_metric_replay_min" : 9223372036854775807,
    "User_hbase_metric_replay_max" : 0,
    "User_hbase_metric_replay_mean" : 0,
    "User_hbase_metric_replay_25th_percentile" : 0,
    "User_hbase_metric_replay_median" : 0,
    "User_hbase_metric_replay_75th_percentile" : 0,
    "User_hbase_metric_replay_90th_percentile" : 0,
    "User_hbase_metric_replay_95th_percentile" : 0,
    "User_hbase_metric_replay_98th_percentile" : 0,
    "User_hbase_metric_replay_99th_percentile" : 0,
    "User_hbase_metric_replay_99.9th_percentile" : 0,
    "User_enis_metric_scanTime_num_ops" : 0,
    "User_enis_metric_scanTime_min" : 9223372036854775807,
    "User_enis_metric_scanTime_max" : 0,
    "User_enis_metric_scanTime_mean" : 0,
    "User_enis_metric_scanTime_25th_percentile" : 0,
    "User_enis_metric_scanTime_median" : 0,
    "User_enis_metric_scanTime_75th_percentile" : 0,
    "User_enis_metric_scanTime_90th_percentile" : 0,
    "User_enis_metric_scanTime_95th_percentile" : 0,
    "User_enis_metric_scanTime_98th_percentile" : 0,
    "User_enis_metric_scanTime_99th_percentile" : 0,
    "User_enis_metric_scanTime_99.9th_percentile" : 0,
    "User_enis_metric_mutate_num_ops" : 0,
    "User_enis_metric_mutate_min" : 9223372036854775807,
    "User_enis_metric_mutate_max" : 0,
    "User_enis_metric_mutate_mean" : 0,
    "User_enis_metric_mutate_25th_percentile" : 0,
    "User_enis_metric_mutate_median" : 0,
    "User_enis_metric_mutate_75th_percentile" : 0,
    "User_enis_metric_mutate_90th_percentile" : 0,
    "User_enis_metric_mutate_95th_percentile" : 0,
    "User_enis_metric_mutate_98th_percentile" : 0,
    "User_enis_metric_mutate_99th_percentile" : 0,
    "User_enis_metric_mutate_99.9th_percentile" : 0,
    "User_hbase_metric_get_num_ops" : 2431993,
    "User_hbase_metric_get_min" : 0,
    "User_hbase_metric_get_max" : 41,
    "User_hbase_metric_get_mean" : 0,
    "User_hbase_metric_get_25th_percentile" : 0,
    "User_hbase_metric_get_median" : 0,
    "User_hbase_metric_get_75th_percentile" : 0,
    "User_hbase_metric_get_90th_percentile" : 0,
    "User_hbase_metric_get_95th_percentile" : 0,
    "User_hbase_metric_get_98th_percentile" : 1,
    "User_hbase_metric_get_99th_percentile" : 1,
    "User_hbase_metric_get_99.9th_percentile" : 2,
    "User_hbase_metric_get_TimeRangeCount_0-1" : 1757999,
    "User_hbase_metric_get_TimeRangeCount_1-3" : 1311,
    "User_hbase_metric_get_TimeRangeCount_3-10" : 582,
    "User_hbase_metric_get_TimeRangeCount_10-30" : 280,
    "User_hbase_metric_get_TimeRangeCount_30-100" : 7,
    "User_enis_metric_delete_num_ops" : 0,
    "User_enis_metric_delete_min" : 9223372036854775807,
    "User_enis_metric_delete_max" : 0,
    "User_enis_metric_delete_mean" : 0,
    "User_enis_metric_delete_25th_percentile" : 0,
    "User_enis_metric_delete_median" : 0,
    "User_enis_metric_delete_75th_percentile" : 0,
    "User_enis_metric_delete_90th_percentile" : 0,
    "User_enis_metric_delete_95th_percentile" : 0,
    "User_enis_metric_delete_98th_percentile" : 0,
    "User_enis_metric_delete_99th_percentile" : 0,
    "User_enis_metric_delete_99.9th_percentile" : 0,
    "User_hbase_metric_delete_num_ops" : 0,
    "User_hbase_metric_delete_min" : 9223372036854775807,
    "User_hbase_metric_delete_max" : 0,
    "User_hbase_metric_delete_mean" : 0,
    "User_hbase_metric_delete_25th_percentile" : 0,
    "User_hbase_metric_delete_median" : 0,
    "User_hbase_metric_delete_75th_percentile" : 0,
    "User_hbase_metric_delete_90th_percentile" : 0,
    "User_hbase_metric_delete_95th_percentile" : 0,
    "User_hbase_metric_delete_98th_percentile" : 0,
    "User_hbase_metric_delete_99th_percentile" : 0,
    "User_hbase_metric_delete_99.9th_percentile" : 0,
    "User_enis_metric_increment_num_ops" : 0,
    "User_enis_metric_increment_min" : 9223372036854775807,
    "User_enis_metric_increment_max" : 0,
    "User_enis_metric_increment_mean" : 0,
    "User_enis_metric_increment_25th_percentile" : 0,
    "User_enis_metric_increment_median" : 0,
    "User_enis_metric_increment_75th_percentile" : 0,
    "User_enis_metric_increment_90th_percentile" : 0,
    "User_enis_metric_increment_95th_percentile" : 0,
    "User_enis_metric_increment_98th_percentile" : 0,
    "User_enis_metric_increment_99th_percentile" : 0,
    "User_enis_metric_increment_99.9th_percentile" : 0,
    "User_hbase_metric_increment_num_ops" : 0,
    "User_hbase_metric_increment_min" : 9223372036854775807,
    "User_hbase_metric_increment_max" : 0,
    "User_hbase_metric_increment_mean" : 0,
    "User_hbase_metric_increment_25th_percentile" : 0,
    "User_hbase_metric_increment_median" : 0,
    "User_hbase_metric_increment_75th_percentile" : 0,
    "User_hbase_metric_increment_90th_percentile" : 0,
    "User_hbase_metric_increment_95th_percentile" : 0,
    "User_hbase_metric_increment_98th_percentile" : 0,
    "User_hbase_metric_increment_99th_percentile" : 0,
    "User_hbase_metric_increment_99.9th_percentile" : 0
  }
{code}

I'll do a quick perf test to see the impact if at all.  

> Add per-user metrics 
> ---------------------
>
>                 Key: HBASE-15519
>                 URL: https://issues.apache.org/jira/browse/HBASE-15519
>             Project: HBase
>          Issue Type: Sub-task
>          Components: metrics
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>         Attachments: hbase-15519_v0.patch
>
>
> Per-user metrics will be useful in multi-tenant cases where we can emit number of requests, operations, num RPCs etc at the per-user aggregate level per regionserver. We currently have throttles per user, but no way to monitor resource usage per-user. 
> Looking at these metrics, operators can adjust throttles, do capacity planning, etc per-user. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)