Per-(table, columnFamily) metrics with configurable table name inclusion
------------------------------------------------------------------------

                 Key: HBASE-4768
                 URL: https://issues.apache.org/jira/browse/HBASE-4768
             Project: HBase
          Issue Type: New Feature
            Reporter: Mikhail Bautin
            Assignee: Mikhail Bautin


As we kept adding more granular block read and block cache usage statistics, a 
combinatorial explosion of various cases to monitor started to happen, 
especially when we wanted both per-table/column family/block type statistics 
and aggregate statistics on various subsets of these dimensions. Here, we 
un-clutters HFile readers, LruBlockCache, StoreFile, etc. by creating a 
centralized class that knows how to update all kinds of per-table/CF/block type 
counters. 

Table name and column family configuration have been pushed to a base class, 
SchemaConfigured. This is convenient as many of existing classes that have 
these properties (HFile readers/writers, HFile blocks, etc.) did not have a 
base class. Whether to collect per-(table, columnFamily) or per-columnFamily 
only metrics can be configured with the hbase.metrics.showTableName 
configuration key. We don't expect this configuration to change at runtime, so 
we cache the setting statically and log a warning when an attempt is made to 
flip it once already set. This way we don't have to pass configuration to a lot 
more places, e.g. everywhere an HFile reader is instantiated.

Thanks to Liyin for his initial version of per-table metrics patch and a lot of 
valuable feedback.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to