[
https://issues.apache.org/jira/browse/HBASE-4089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14007751#comment-14007751
]
stack commented on HBASE-4089:
------------------------------
Can dump out a blockcache page that lists the BlockCaches involved. For the
lrublockcache can dump out the metrics and a summary listing size, and
histogram of block ages
2014-05-23 14:40:10,399 INFO [main] hfile.TestBlockCacheSummary(66):
hitCount=0, hitCachingCount=0, missCount=0, missCachingCount=0,
evictionCount=0, evictedBlockCount=0
2014-05-23 14:40:10,414 INFO [main] hfile.TestBlockCacheSummary(68):
LruBlockCache Summary count=100, size=32800, mean age=1.24991E7, stddev
age=3681288.5576173523, min age=1.1762E7, max age=4.8877E7, 95th percentile
age=1.251815E7, 99th percentile age=4.8513689999999814E7
Would follow the above with a list of files involved and per file a summary:
2014-05-23 14:40:10,429 INFO [main] hfile.TestBlockCacheSummary(85): file=f,
blockCount=100, blockCountData=100, size=32800
Maybe the file summary is clickable and then you get listing of all blocks with
offset into the file, size of block, age in nanos, and type:
2014-05-23 14:40:10,428 INFO [main] hfile.TestBlockCacheSummary(80):
offset=93, size=328, ageInNanos=11806000, priority=SINGLE, blockType=DATA
You might in this screen get the full filename so you can find table and column
family.
Above is doable for the lrublockcache.
For BucketCache, there is less info available. In this case we'd dump out a
summary followed by stats per bucket from the bucketallocator.
> blockCache contents report
> --------------------------
>
> Key: HBASE-4089
> URL: https://issues.apache.org/jira/browse/HBASE-4089
> Project: HBase
> Issue Type: New Feature
> Reporter: Doug Meil
> Assignee: Doug Meil
> Attachments: hbase_4089_blockcachereport.pdf,
> java_blockcache_checkpoint_2011_08_11.patch
>
>
> Summarized block-cache report for a RegionServer would be helpful. For
> example ...
> table1
> cf1 100 blocks, totalBytes=yyyyy, averageTimeInCache=XXXX hours
> cf2 200 blocks, totalBytes=zzzzz, averageTimeInCache=XXXX hours
> table2
> cf1 75 blocks, totalBytes=yyyyy, averageTimeInCache=XXXX hours
> cf2 150 blocks, totalBytes=zzzzz, averageTimeInCache=XXXX hours
> ... Etc.
> The current metrics list blockCacheSize and blockCacheFree, but there is no
> way to know what's in there. Any single block isn't really important, but
> the patterns of what CF/Table they came from, how big are they, and how long
> (on average) they've been in the cache, are important.
> No such interface exists in HRegionInterface. But I think it would be
> helpful from an operational perspective.
> Updated (7-29): Removing suggestion for UI. I would be happy just to get
> this report on a configured interval dumped to a log file.
--
This message was sent by Atlassian JIRA
(v6.2#6252)