HBASE-5601. Add per-column-family data block cache hit ratios. First shot at the patch.
Review Request #4675 - Created April 7, 2012 and updated
HBASE-5601. Add per-column-family data block cache hit ratios. First shot at the patch. Changes are as follows (some are backwards incompatible): - Renamed hbase.RegionServerDynamicStatistics.XXX -> hbase.regionserver.dyn.XXX - Renamed the metrics name generation from hbase.RegionServerDynamicStatistics.tbl.usertable.cf.ycsb.bt.Data.fsBlockReadCacheHitCnt -> tbl=usertable.cf=ycsb.bt=Data.at=scan.blockCacheHitCount Notice that tbl.TableName is changed to tbl=TableName, cf.Family is changed to cf=Family, the fs or compaction prefix is changed to at=scan or at=compaction. at stands for access type. - Through using CacheAccessStats/CacheSizeStats, metric names across per-cf and global are made consistent. - For compaction, per-block type metrics are disabled. For compaction we do not need to distinguish between block types. - Added a configuration "hbase.metrics.dynamic.enabled" for disabling dynamic metrics. It is enabled by default. - Changed bloom filter metrics from keyMaybeInBloomCnt -> bloomHitCount - Removed some code for keeping BC related to META block types Some changes in HFileReaders are due to automatic trailing whitespace settings in my eclipse. I can regenerate those parts if it is hard to review.
Tested with existing unit tests, and manually using FileContext