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/04/05 20:34: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_v1.patch

Here is v1 patch, ready for reviews. 

To measure any possible impact, I've ran a YCSB setup on a single node. workloadc, all random reads, all of the data is in block cache, 3M records and 3M operations. Client with 100 threads running in a different node. 24 CPUs, 16GB heap, 105 handlers. Code is branch-1 head. 

Results without patch: 
{code}
Run1:
[OVERALL], RunTime(ms), 106555.0
[OVERALL], Throughput(ops/sec), 28154.47421519403
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2684.286083666667
[READ], MinLatency(us), 206.0
[READ], MaxLatency(us), 334079.0
[READ], 95thPercentileLatency(us), 4455.0
[READ], 99thPercentileLatency(us), 5699.0
[READ], Return=OK, 3000000

Run2:
[OVERALL], RunTime(ms), 107010.0
[OVERALL], Throughput(ops/sec), 28034.763106251754
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2689.838134
[READ], MinLatency(us), 200.0
[READ], MaxLatency(us), 245759.0
[READ], 95thPercentileLatency(us), 4299.0
[READ], 99thPercentileLatency(us), 5307.0
[READ], Return=OK, 3000000

Run3:
[OVERALL], RunTime(ms), 109902.0
[OVERALL], Throughput(ops/sec), 27297.046459573074
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2774.8841573333334
[READ], MinLatency(us), 193.0
[READ], MaxLatency(us), 265471.0
[READ], 95thPercentileLatency(us), 4427.0
[READ], 99thPercentileLatency(us), 5791.0
[READ], Return=OK, 3000000
{code}

And results with patch: 
{code}
Run 1:
[OVERALL], RunTime(ms), 110798.0
[OVERALL], Throughput(ops/sec), 27076.30101626383
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2821.4981636666666
[READ], MinLatency(us), 186.0
[READ], MaxLatency(us), 266239.0
[READ], 95thPercentileLatency(us), 4423.0
[READ], 99thPercentileLatency(us), 6423.0
[READ], Return=OK, 3000000

Run 2:
[OVERALL], RunTime(ms), 101048.0
[OVERALL], Throughput(ops/sec), 29688.86073945056
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2471.0225963333332
[READ], MinLatency(us), 193.0
[READ], MaxLatency(us), 270335.0
[READ], 95thPercentileLatency(us), 4067.0
[READ], 99thPercentileLatency(us), 5123.0
[READ], Return=OK, 3000000

Run 3:
[OVERALL], RunTime(ms), 111897.0
[OVERALL], Throughput(ops/sec), 26810.370251213168
[READ], Operations, 3000000.0
[READ], AverageLatency(us), 2808.053357
[READ], MinLatency(us), 186.0
[READ], MaxLatency(us), 267775.0
[READ], 95thPercentileLatency(us), 4539.0
[READ], 99thPercentileLatency(us), 5947.0
[READ], Return=OK, 3000000
{code}

The avg runtime without the patch is {{107822.33333333333}}, and with the patch it is {{107914.33333333333}}. From these results, there is no measured impact doing ~28K ops/sec. 



> 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, hbase-15519_v1.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)