2008-09-23 10:51:22 -04:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
|
|
|
|
<!--
|
|
|
|
/**
|
|
|
|
* Copyright 2007 The Apache Software Foundation
|
|
|
|
*
|
|
|
|
* Licensed to the Apache Software Foundation (ASF) under one
|
|
|
|
* or more contributor license agreements. See the NOTICE file
|
|
|
|
* distributed with this work for additional information
|
|
|
|
* regarding copyright ownership. The ASF licenses this file
|
|
|
|
* to you under the Apache License, Version 2.0 (the
|
|
|
|
* "License"); you may not use this file except in compliance
|
|
|
|
* with the License. You may obtain a copy of the License at
|
|
|
|
*
|
|
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
*
|
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
* See the License for the specific language governing permissions and
|
|
|
|
* limitations under the License.
|
|
|
|
*/
|
|
|
|
-->
|
|
|
|
<configuration>
|
|
|
|
<property>
|
|
|
|
<name>hbase.rootdir</name>
|
|
|
|
<value>file:///tmp/hbase-${user.name}/hbase</value>
|
|
|
|
<description>The directory shared by region servers.
|
|
|
|
Should be fully-qualified to include the filesystem to use.
|
|
|
|
E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-10-15 01:18:31 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.master</name>
|
|
|
|
<value>local</value>
|
|
|
|
<description>The host and port that the HBase master runs at.
|
|
|
|
A value of 'local' runs the master and a regionserver in
|
|
|
|
a single process.
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-09-23 10:51:22 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.master.info.port</name>
|
|
|
|
<value>60010</value>
|
|
|
|
<description>The port for the hbase master web UI
|
|
|
|
Set to -1 if you do not want the info server to run.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.master.info.bindAddress</name>
|
|
|
|
<value>0.0.0.0</value>
|
|
|
|
<description>The address for the hbase master web UI
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-10-15 01:18:31 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.master.meta.thread.rescanfrequency</name>
|
|
|
|
<value>60000</value>
|
|
|
|
<description>How long the HMaster sleeps (in milliseconds) between scans of
|
|
|
|
the root and meta tables.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.master.lease.period</name>
|
|
|
|
<value>120000</value>
|
|
|
|
<description>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.</description>
|
|
|
|
</property>
|
2008-09-23 10:51:22 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver</name>
|
|
|
|
<value>0.0.0.0:60020</value>
|
|
|
|
<description>The host and port a HBase region server runs at.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.dns.interface</name>
|
|
|
|
<value>default</value>
|
|
|
|
<description>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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.info.port</name>
|
|
|
|
<value>60030</value>
|
|
|
|
<description>The port for the hbase regionserver web UI
|
|
|
|
Set to -1 if you do not want the info server to run.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.info.bindAddress</name>
|
|
|
|
<value>0.0.0.0</value>
|
|
|
|
<description>The address for the hbase regionserver web UI
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.class</name>
|
|
|
|
<value>org.apache.hadoop.hbase.ipc.HRegionInterface</value>
|
|
|
|
<description>An interface that is assignable to HRegionInterface. Used in HClient for
|
|
|
|
opening proxy to remote region server.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.client.pause</name>
|
|
|
|
<value>2000</value>
|
|
|
|
<description>General client pause value. Used mostly as value to wait
|
|
|
|
before running a retry of a failed get, region lookup, etc.</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.client.retries.number</name>
|
|
|
|
<value>10</value>
|
|
|
|
<description>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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.client.scanner.caching</name>
|
|
|
|
<value>30</value>
|
|
|
|
<description>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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.lease.period</name>
|
|
|
|
<value>60000</value>
|
|
|
|
<description>HRegion server lease period in milliseconds. Default is
|
|
|
|
60 seconds. Clients must report in within this period else they are
|
|
|
|
considered dead.</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.handler.count</name>
|
|
|
|
<value>10</value>
|
|
|
|
<description>Count of RPC Server instances spun up on RegionServers
|
|
|
|
Same property is used by the HMaster for count of master handlers.
|
|
|
|
Default is 10.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.msginterval</name>
|
|
|
|
<value>3000</value>
|
|
|
|
<description>Interval between messages from the RegionServer to HMaster
|
2008-10-11 00:06:10 -04:00
|
|
|
in milliseconds. Default is 3 seconds.
|
2008-09-23 10:51:22 -04:00
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.maxlogentries</name>
|
|
|
|
<value>30000</value>
|
|
|
|
<description>Rotate the HRegion HLogs when count of entries exceeds this
|
|
|
|
value. Default: 30,000. Value is checked by a thread that runs every
|
|
|
|
hbase.server.thread.wakefrequency.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.optionalcacheflushinterval</name>
|
|
|
|
<value>1800000</value>
|
|
|
|
<description>
|
|
|
|
Amount of time to wait since the last time a region was flushed before
|
|
|
|
invoking an optional cache flush (An optional cache flush is a
|
|
|
|
flush even though memcache is not at the memcache.flush.size).
|
|
|
|
Default: 30 minutes (in miliseconds)
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.optionallogrollinterval</name>
|
|
|
|
<value>1800000</value>
|
|
|
|
<description>
|
|
|
|
Amount of time to wait since the last time a the region server's log was
|
|
|
|
rolled before invoking an optional log roll (An optional log roll is a
|
|
|
|
one in which the log does not contain hbase.regionserver.maxlogentries).
|
|
|
|
Default: 30 minutes (in miliseconds)
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-10-15 01:18:31 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.thread.splitcompactcheckfrequency</name>
|
|
|
|
<value>20000</value>
|
|
|
|
<description>How often a region server runs the split/compaction check.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.nbreservationblocks</name>
|
|
|
|
<value>4</value>
|
|
|
|
<description>The number of reservation blocks which are used to prevent
|
|
|
|
unstable region servers caused by an OOME.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.globalMemcacheLimit</name>
|
|
|
|
<value>536870912</value>
|
|
|
|
<description>Maximum size of all memcaches in a region server before new
|
|
|
|
updates are blocked and flushes are forced. Defaults to 512MB.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.regionserver.globalMemcacheLimitlowMark</name>
|
|
|
|
<value>256435456</value>
|
|
|
|
<description>When memcaches are being forced to flush to make room in
|
|
|
|
memory, keep flushing until we hit this mark. Defaults to 256MB. Setting
|
|
|
|
this value equal to hbase.regionserver.globalmemcachelimit causes the
|
|
|
|
minimum possible flushing to occur when updates are blocked due to
|
|
|
|
memcache limiting.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hbasemaster.maxregionopen</name>
|
|
|
|
<value>120000</value>
|
|
|
|
<description>Period to wait for a region open. If regionserver
|
|
|
|
takes longer than this interval, assign to a new regionserver.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.server.thread.wakefrequency</name>
|
|
|
|
<value>10000</value>
|
|
|
|
<description>Time to sleep in between searches for work (in milliseconds).
|
|
|
|
Used as sleep interval by service threads such as META scanner and log roller.
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-09-23 10:51:22 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.hregion.memcache.flush.size</name>
|
|
|
|
<value>67108864</value>
|
|
|
|
<description>
|
|
|
|
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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hregion.memcache.block.multiplier</name>
|
|
|
|
<value>2</value>
|
|
|
|
<description>
|
|
|
|
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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hregion.max.filesize</name>
|
|
|
|
<value>268435456</value>
|
|
|
|
<description>
|
|
|
|
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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hstore.compactionThreshold</name>
|
|
|
|
<value>3</value>
|
|
|
|
<description>
|
|
|
|
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.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hstore.compaction.max</name>
|
|
|
|
<value>10</value>
|
|
|
|
<description>Max number of HStoreFiles to compact per 'minor' compaction.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hregion.majorcompaction</name>
|
|
|
|
<value>86400000</value>
|
|
|
|
<description>The time (in miliseconds) between 'major' compactions of all
|
|
|
|
HStoreFiles in a region. Default: 1 day.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
2008-10-15 01:18:31 -04:00
|
|
|
<name>hbase.regions.slop</name>
|
|
|
|
<value>0.1</value>
|
|
|
|
<description>Rebalance if regionserver has average + (average * slop) regions.
|
|
|
|
Default is 10% slop.
|
2008-09-23 10:51:22 -04:00
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.io.index.interval</name>
|
|
|
|
<value>32</value>
|
|
|
|
<description>The interval at which we record offsets in hbase
|
|
|
|
store files/mapfiles. Default for stock mapfiles is 128. Index
|
|
|
|
files are read into memory. If there are many of them, could prove
|
|
|
|
a burden. If so play with the hadoop io.map.index.skip property and
|
|
|
|
skip every nth index member when reading back the index into memory.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.io.seqfile.compression.type</name>
|
|
|
|
<value>NONE</value>
|
|
|
|
<description>The compression type for hbase sequencefile.Writers
|
|
|
|
such as hlog.
|
|
|
|
</description>
|
|
|
|
</property>
|
|
|
|
<property>
|
|
|
|
<name>hbase.hstore.blockCache.blockSize</name>
|
|
|
|
<value>65536</value>
|
|
|
|
<description>The size of each block in any block caches.
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-09-23 14:10:06 -04:00
|
|
|
<property>
|
|
|
|
<name>hbase.hash.type</name>
|
|
|
|
<value>murmur</value>
|
|
|
|
<description>The hashing algorithm for use in HashFunction. Two values are
|
|
|
|
supported now: murmur (MurmurHash) and jenkins (JenkinsHash).
|
|
|
|
</description>
|
|
|
|
</property>
|
2008-09-23 10:51:22 -04:00
|
|
|
</configuration>
|