[
https://issues.apache.org/jira/browse/HBASE-14757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14989274#comment-14989274
]
Anoop Sam John commented on HBASE-14757:
----------------------------------------
When DBE is in place and we use SeekerState, the Cells will get key part in new
byte[] (after recreation).. But the value part will be still referring to the
same byte[] which was created and read data into (from HDFS) This byte[] is
free for reuse after all cells from it got shipped.. So we might need some
way like what we did for Bucket Cache (ref counting to know whether a bucket BB
is really free for eviction)
> Reduce allocation pressure imposed by HFile block processing
> ------------------------------------------------------------
>
> Key: HBASE-14757
> URL: https://issues.apache.org/jira/browse/HBASE-14757
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 2.0.0, 1.2.0, 1.3.0, 0.98.17
>
>
> Using Flight Recorder to look at the object allocation profiles of
> regionservers processing the various YCSB workloads when block encoding is
> enabled (specifically, FAST_DIFF, but this applies to any), we can see:
> - Allocations of byte[] for block encoding contribute 40-70% of all
> allocation pressure in TLABs.
> - Of that subset of allocation pressure, ~50-70% is byte[] for SeekerState
> - Greater than 99% of allocation of byte[] outside of TLABs are for read
> buffers for HFileBlock#readBlockDataInternal.
> This issue is for investigation of strategy for and impact of reducing that
> allocation pressure. Reducing allocation pressure reduces demand for GC,
> which reduces GC activity overall, which reduces a source of system latency.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)