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

stack commented on HBASE-20564:
-------------------------------

.002 Works on cluster (bug). Added compare of BBKVs. See attached svgs. See how 
1.4.pe.write is comparing with way less CPU. 2.pe.write is current profile 
where a bunch of cpu is deserializing shorts. 2.pe3.write is profile with this 
patch in place. Deserializing shorts no longer shows. We get a lift of about 
5-10% (~45k ops/sec to ~50k ops/sec) which is not enough. See how comparator 
still takes loads of CPU.

> Tighter ByteBufferKeyValue Cell Comparator
> ------------------------------------------
>
>                 Key: HBASE-20564
>                 URL: https://issues.apache.org/jira/browse/HBASE-20564
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Performance
>            Reporter: stack
>            Assignee: stack
>            Priority: Major
>             Fix For: 2.0.1
>
>         Attachments: 1.4.pe.write.0510.96203.cpu.svg, 
> 2.p3.write2.0514.104236.cpu.svg, 2.pe.write.135142.cpu.svg, 
> HBASE-20564.branch-2.0.001.patch, HBASE-20564.branch-2.0.002.patch, 
> HBASE-20564.branch-2.patch
>
>
> Comparing Cells in hbase2 takes almost 3x the CPU.
> In hbase1, its a keyValue backed by a byte array caching a few important 
> values.. In hbase2, its a NoTagByteBufferChunkKeyValue(?) deserializing the 
> row/family/qualifier lengths repeatedly.
> I tried making a purposed comparator -- one that was not generic -- and it 
> seemed to have a nicer profile coming close to hbase1 in percentage used 
> (I'll post graphs) when I ran it in my perpetual memstore filler (See scripts 
> attached to HBASE-20483). It doesn't work when I try to run it on cluster. 
> Let me run unit tests to see if it can figure what I have wrong.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to