[
https://issues.apache.org/jira/browse/HBASE-3928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13040855#comment-13040855
]
Andrew Purtell commented on HBASE-3928:
---------------------------------------
+1
KV comparison is a key hotspot in memstore and upsert especially.
@Stack If you want additional confirmation I can see about running jprofiler in
all-localhost with an upsert heavy workload. Any % improvement would be worth
it though in my opinion.
> Some potential performance improvements to Bytes/KeyValue
> ---------------------------------------------------------
>
> Key: HBASE-3928
> URL: https://issues.apache.org/jira/browse/HBASE-3928
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 0.92.0
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Priority: Minor
> Fix For: 0.92.0
>
> Attachments: hbase-3928.txt
>
>
> We use Bytes.compareTo() a lot where we could be using a more efficient
> equals() method. The trick that makes equals() faster than compareTo is that
> we can short-circuit two common cases:
> Case 1) the length is not the same - only need to do one comparison
> Case 2) the two arrays have the same length and a common prefix: compare the
> last byte first, since it's the one most likely to differ (given we are
> usually comparing adjacent sorted data).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira