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.