You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Liu Shaohui (JIRA)" <ji...@apache.org> on 2014/05/28 15:55:01 UTC
[jira] [Created] (HBASE-11263) Share the open/close store file
thread pool for all store in a region
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)