[ 
https://issues.apache.org/jira/browse/HBASE-12219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14167274#comment-14167274
 ] 

Andrew Purtell commented on HBASE-12219:
----------------------------------------

bq. I'm not really concerned about the staleness if the TTL is as short as 1 
second 

Then definitely the suggested alternative could make a big difference in the 
number of NN ops totally, if descriptors for a table rarely or never change.

> Use optionally a TTL based cache for FSTableDescriptors#getAll() and 
> FSTableDescriptors#TableDescriptorAndModtime()
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-12219
>                 URL: https://issues.apache.org/jira/browse/HBASE-12219
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>    Affects Versions: 0.94.24, 0.99.1, 0.98.6.1
>            Reporter: Esteban Gutierrez
>            Assignee: Esteban Gutierrez
>              Labels: scalability
>
> Currently table descriptors and tables are cached once they are accessed for 
> the first time. Next calls to the master only require a trip to HDFS to 
> lookup the modified time in order to reload the table descriptors if 
> modified. However in clusters with a large number of tables or concurrent 
> clients and this can be too aggressive to HDFS and the master causing 
> contention to process other requests. A simple solution is to have a TTL 
> based cached for FSTableDescriptors#getAll() and  
> FSTableDescriptors#TableDescriptorAndModtime() that can allow the master to 
> process those calls faster without causing contention without having to 
> perform a trip to HDFS for every call. to listtables() or getTableDescriptor()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to