hbase.rootdir file:///tmp/hbase-${user.name}/hbase The directory shared by region servers. Should be fully-qualified to include the filesystem to use. E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR hbase.master.hostname local The host that the HBase master runs at. A value of 'local' runs the master and regionserver in a single process. hbase.master.port 60000 The port master should bind to. hbase.tmp.dir /tmp/hbase-${user.name} Temporary directory on the local filesystem. hbase.master.info.port 60010 The port for the hbase master web UI Set to -1 if you do not want the info server to run. hbase.master.info.bindAddress 0.0.0.0 The address for the hbase master web UI hbase.client.write.buffer 2097152 Size of the write buffer in bytes. A bigger buffer takes more memory -- on both the client and server side since server instantiates the passed write buffer to process it -- but reduces the number of RPC. For an estimate of server-side memory-used, evaluate hbase.client.write.buffer * hbase.regionserver.handler.count hbase.master.meta.thread.rescanfrequency 60000 How long the HMaster sleeps (in milliseconds) between scans of the root and meta tables. hbase.master.lease.period 120000 HMaster server lease period in milliseconds. Default is 120 seconds. Region servers must report in within this period else they are considered dead. On loaded cluster, may need to up this period. hbase.regionserver 0.0.0.0:60020 The host and port a HBase region server runs at. hbase.regionserver.dns.interface default Name of the network interface which a regionserver should use to determine it's "real" IP address. This lookup prevents strings like "localhost" and "127.0.0.1" from being reported back to the master. hbase.regionserver.info.port 60030 The port for the hbase regionserver web UI Set to -1 if you do not want the info server to run. hbase.regionserver.info.port.auto false Info server auto port bind. Enables automatic port search if hbase.regionserver.info.port is already in use. Useful for testing, turned off by default. hbase.regionserver.info.bindAddress 0.0.0.0 The address for the hbase regionserver web UI hbase.regionserver.class org.apache.hadoop.hbase.ipc.HRegionInterface An interface that is assignable to HRegionInterface. Used in HClient for opening proxy to remote region server. hbase.client.pause 2000 General client pause value. Used mostly as value to wait before running a retry of a failed get, region lookup, etc. hbase.client.retries.number 10 Maximum retries. Used as maximum for all retryable operations such as fetching of the root region from root region server, getting a cell's value, starting a row update, etc. Default: 10. hbase.client.scanner.caching 1 Number of rows that will be fetched when calling next on a scanner if it is not served from memory. Higher caching values will enable faster scanners but will eat up more memory and some calls of next may take longer and longer times when the cache is empty. hbase.regionserver.lease.period 60000 HRegion server lease period in milliseconds. Default is 60 seconds. Clients must report in within this period else they are considered dead. hbase.regionserver.handler.count 10 Count of RPC Server instances spun up on RegionServers Same property is used by the HMaster for count of master handlers. Default is 10. hbase.regionserver.msginterval 3000 Interval between messages from the RegionServer to HMaster in milliseconds. Default is 3 seconds. hbase.regionserver.maxlogentries 100000 Rotate the HRegion HLogs when count of entries exceeds this value. Default: 100,000. Value is checked by a thread that runs every hbase.server.thread.wakefrequency. hbase.regionserver.flushlogentries 100 Sync the HLog to the HDFS when it has accumulated this many entries. Default 100. Value is checked on every HLog.append hbase.regionserver.optionallogflushinterval 10000 Sync the HLog to the HDFS after this interval if it has not accumulated enough entries to trigger a sync. Default 10 seconds. Units: milliseconds. hbase.regionserver.hlog.blocksize 1048576 Block size for HLog files. To minimize potential data loss, the size should be (avg key length) * (avg value length) * flushlogentries. Default 1MB. hbase.regionserver.thread.splitcompactcheckfrequency 20000 How often a region server runs the split/compaction check. hbase.regionserver.nbreservationblocks 4 The number of reservation blocks which are used to prevent unstable region servers caused by an OOME. hbase.regionserver.dns.interface default The name of the Network Interface from which a region server should report its IP address. hbase.regionserver.dns.nameserver default The host name or IP address of the name server (DNS) which a region server should use to determine the host name used by the master for communication and display purposes. hbase.regionserver.globalMemcache.upperLimit 0.4 Maximum size of all memcaches in a region server before new updates are blocked and flushes are forced. Defaults to 40% of heap. hbase.regionserver.globalMemcache.lowerLimit 0.25 When memcaches are being forced to flush to make room in memory, keep flushing until we hit this mark. Defaults to 30% of heap. This value equal to hbase.regionserver.globalmemcache.upperLimit causes the minimum possible flushing to occur when updates are blocked due to memcache limiting. hbase.hbasemaster.maxregionopen 120000 Period to wait for a region open. If regionserver takes longer than this interval, assign to a new regionserver. hbase.regions.percheckin 10 Maximum number of regions that can be assigned in a single go to a region server. hbase.server.thread.wakefrequency 10000 Time to sleep in between searches for work (in milliseconds). Used as sleep interval by service threads such as META scanner and log roller. hbase.hregion.memcache.flush.size 67108864 A HRegion memcache will be flushed to disk if size of the memcache exceeds this number of bytes. Value is checked by a thread that runs every hbase.server.thread.wakefrequency. hbase.hregion.memcache.block.multiplier 2 Block updates if memcache has hbase.hregion.block.memcache time hbase.hregion.flush.size bytes. Useful preventing runaway memcache during spikes in update traffic. Without an upper-bound, memcache fills such that when it flushes the resultant flush files take a long time to compact or split, or worse, we OOME. hbase.hregion.max.filesize 268435456 Maximum HStoreFile size. If any one of a column families' HStoreFiles has grown to exceed this value, the hosting HRegion is split in two. Default: 256M. hbase.hstore.compactionThreshold 3 If more than this number of HStoreFiles in any one HStore (one HStoreFile is written per flush of memcache) then a compaction is run to rewrite all HStoreFiles files as one. Larger numbers put off compaction but when it runs, it takes longer to complete. During a compaction, updates cannot be flushed to disk. Long compactions require memory sufficient to carry the logging of all updates across the duration of the compaction. If too large, clients timeout during compaction. hbase.hstore.compaction.max 10 Max number of HStoreFiles to compact per 'minor' compaction. hbase.hregion.majorcompaction 86400000 The time (in miliseconds) between 'major' compactions of all HStoreFiles in a region. Default: 1 day. hbase.regions.slop 0.1 Rebalance if regionserver has average + (average * slop) regions. Default is 10% slop. hfile.min.blocksize.size 65536 Minimum store file block size. The smaller you make this, the bigger your index and the less you fetch on a random-access. Set size down if you have small cells and want faster random-access of individual cells. hbase.hstore.blockCache.blockSize 16384 The size of each block in the block cache. Enable blockcaching on a per column family basis; see the BLOCKCACHE setting in HColumnDescriptor. Blocks are kept in a java Soft Reference cache so are let go when high pressure on memory. Block caching is not enabled by default. hbase.hash.type murmur The hashing algorithm for use in HashFunction. Two values are supported now: murmur (MurmurHash) and jenkins (JenkinsHash). zookeeper.session.timeout 10000 ZooKeeper session timeout. This option is not used by HBase directly, it is for the internals of ZooKeeper. HBase merely passes it in whenever a connection is established to ZooKeeper. It is used by ZooKeeper for hearbeats. In milliseconds. zookeeper.retries 5 How many times to retry connections to ZooKeeper. Used for reading/writing root region location, checking/writing out of safe mode. Used together with ${zookeeper.pause} in an exponential backoff fashion when making queries to ZooKeeper. zookeeper.pause 2000 Sleep time between retries to ZooKeeper. In milliseconds. Used together with ${zookeeper.retries} in an exponential backoff fashion when making queries to ZooKeeper. zookeeper.znode.parent /hbase Root ZNode for HBase in ZooKeeper. All of HBase's ZooKeeper files that are configured with a relative path will go under this node. By default, all of HBase's ZooKeeper file patsh are configured with a relative path, so they will all go under this directory unless changed. zookeeper.znode.rootserver root-region-server Path to ZNode holding root region location. This is written by the master and read by clients and region servers. If a relative path is given, the parent folder will be ${zookeeper.znode.parent}. By default, this means the root location is stored at /hbase/root-region-server. zookeeper.znode.safemode safe-mode Path to ephemeral ZNode signifying cluster is out of safe mode. This is created by the master when scanning is done. Clients wait for this node before querying the cluster. If a relative path is given, the parent folder will be ${zookeeper.znode.parent}. By default, this means the safe mode flag is stored at /hbase/safe-mode.