hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Liu Shaohui (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-11263) Share the open/close store file thread pool for all store in a region
Date Wed, 28 May 2014 13:55:01 GMT
Liu Shaohui created HBASE-11263:
-----------------------------------

             Summary: Share the open/close store file thread pool for all store in a region
                 Key: HBASE-11263
                 URL: https://issues.apache.org/jira/browse/HBASE-11263
             Project: HBase
          Issue Type: Improvement
          Components: regionserver
            Reporter: Liu Shaohui
            Priority: Minor


Currently, the open/close store file thread pool is divided equally to all stores of a region.

{code}
  protected ThreadPoolExecutor getStoreFileOpenAndCloseThreadPool(
      final String threadNamePrefix) {
    int numStores = Math.max(1, this.htableDescriptor.getFamilies().size());
    int maxThreads = Math.max(1,
        conf.getInt(HConstants.HSTORE_OPEN_AND_CLOSE_THREADS_MAX,
            HConstants.DEFAULT_HSTORE_OPEN_AND_CLOSE_THREADS_MAX)
            / numStores);
    return getOpenAndCloseThreadPool(maxThreads, threadNamePrefix);
  }
{code}
This is not very optimal in following scenarios:
# The data of some column families are very large and there are many hfiles in those stores,
and others may be very small and in-memory column families. 
# Usually we preserve some column families for later needs. The thread pool for these column
families are wasted。

The simple way is to share a big thread pool for all stores to open/close hfiles.  

Suggestions are welcomed. 
Thanks. 




--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message