hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13291) Lift the scan ceiling
Date Mon, 06 Apr 2015 21:11:13 GMT

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

Lars Hofhansl commented on HBASE-13291:
---------------------------------------

SQM.match() was changed in truck to be expressed in term of operations on Cells (before it
was hand "optimized" to deconstruct KVs in the most efficient way). I do not know how much
that costs, but might be worth investigating.

So far our introduction of Cells has made a bunch of things slower, but since we haven't finished
I am not aware of a single perf advantage (when finished we should be able to make block encoding
and prefix tries much faster). Maybe it's time to make a concerted effort and get rid of KeyValue.getKey()
and KeyValue.getBuffer() for real, it's those two methods that prevent a lot of cool optimizations.

> Lift the scan ceiling
> ---------------------
>
>                 Key: HBASE-13291
>                 URL: https://issues.apache.org/jira/browse/HBASE-13291
>             Project: HBase
>          Issue Type: Improvement
>          Components: Scanners
>    Affects Versions: 1.0.0
>            Reporter: stack
>            Assignee: stack
>         Attachments: 13291.hacks.txt, 13291.inlining.txt, Screen Shot 2015-03-26 at 12.12.13
PM.png, Screen Shot 2015-03-26 at 3.39.33 PM.png, hack_to_bypass_bb.txt, nonBBposAndInineMvccVint.txt,
q (1).png, scan_no_mvcc_optimized.svg, traces.7.svg, traces.filterall.svg, traces.nofilter.svg,
traces.small2.svg, traces.smaller.svg
>
>
> Scanning medium sized rows with multiple concurrent scanners exhibits interesting 'ceiling'
properties. A server runs at about 6.7k ops a second using 450% of possible 1600% of CPUs
 when 4 clients each with 10 threads doing scan 1000 rows.  If I add '--filterAll' argument
(do not return results), then we run at 1450% of possible 1600% possible but we do 8k ops
a second.
> Let me attach flame graphs for two cases. Unfortunately, there is some frustrating dark
art going on. Let me try figure it... Filing issue in meantime to keep score in.



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

Mime
View raw message