You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by li...@apache.org on 2013/05/16 21:18:22 UTC

svn commit: r1483516 - /hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template

Author: liyin
Date: Thu May 16 19:18:22 2013
New Revision: 1483516

URL: http://svn.apache.org/r1483516
Log:
add hbase-site.xml.single-node.template

Added:
    hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template

Added: hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template?rev=1483516&view=auto
==============================================================================
--- hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template (added)
+++ hbase/branches/0.89-fb/conf/hbase-site.xml.single-node.template Thu May 16 19:18:22 2013
@@ -0,0 +1,518 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * Copyright 2009 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.regionserver.hlog.replication</name>
+  <value>1</value>
+  <description>For HBase to offer good data durability, we roll logs if
+  filesystem replication falls below a certain amount.  In psuedo-distributed
+  mode, you normally only have the local filesystem or 1 HDFS DataNode, so you
+  don't want to roll logs constantly.</description>
+</property>
+
+<property>
+  <name>hbase.tmp.dir</name>
+  <value>/tmp/hbase-testing</value>
+  <description>Temporary directory on the local filesystem.</description>
+</property>
+
+<!-- DEFAULT = use local filesystem, not HDFS
+     ADD THESE LINES if you have a copy of HDFS source and want to run HBase
+     psuedo-distributed over a psuedo-distributed HDFS cluster.
+     For HDFS psuedo-distributed setup, see their documentation:
+
+     http://hadoop.apache.org/common/docs/r0.20.2/quickstart.html#PseudoDistributed
+
+-->
+<property>
+  <name>hbase.rootdir</name>
+  <value>hdfs://localhost:9010/hbase-cluster</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>
+
+
+<!-- OPTIONAL: You might want to add these options depending upon your use case
+-->
+
+<property>
+  <name>dfs.support.append</name>
+  <value>true</value>
+  <description>Allow append support (if you want to test data durability with HDFS)
+  </description>
+</property>
+
+
+  <property>
+    <name>hbase.cluster.distributed</name>
+    <value>true</value>
+    <description>The mode the cluster will be in. Possible values are
+      false: standalone and pseudo-distributed setups with managed Zookeeper
+      true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
+    </description>
+  </property>
+  <property>
+    <name>hbase.regionserver.handler.count</name>
+    <value>300</value>
+  </property>
+
+  <!--
+  The following three properties are used together to create the list of
+  host:peer_port:leader_port quorum servers for ZooKeeper.
+  -->
+  <property>
+    <name>hbase.zookeeper.peerport</name>
+    <value>52888</value>
+    <description>Port used by ZooKeeper peers to talk to each other.
+    See http://hadoop.apache.org/zookeeper/docs/r3.1.1/zookeeperStarted.html#sc_RunningReplicatedZooKeeper
+    for more information.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.zookeeper.leaderport</name>
+    <value>53888</value>
+    <description>Port used by ZooKeeper for leader election.
+    See http://hadoop.apache.org/zookeeper/docs/r3.1.1/zookeeperStarted.html#sc_RunningReplicatedZooKeeper
+    for more information.
+    </description>
+  </property>
+  <!-- End of properties used to generate ZooKeeper host:port quorum list. -->
+
+  <property>
+    <name>hbase.hregion.memstore.flush.size</name>
+    <value>135266304</value>
+    <description>
+    128MB
+    Memstore will be flushed to disk if size of the memstore
+    exceeds this number of bytes.  Value is checked by a thread that runs
+    every hbase.server.thread.wakefrequency.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.regionserver.maxlogs</name>
+    <value>8</value>
+    <description>
+    When these many logs accumulate, memstores containing old edits
+    will get flushed preemptively even if they have not reached
+    their threshold size. This keeps an upper bound on recovery times.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.regionserver.logroll.multiplier</name>
+    <value>0.95</value>
+    <description>
+    Roll logs at this multiplier * HDFS block size.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.hregion.memstore.block.multiplier</name>
+    <value>4</value>
+    <description>
+    Block updates if memstore has hbase.hregion.block.memstore
+    time hbase.hregion.flush.size bytes.  Useful preventing
+    runaway memstore during spikes in update traffic.  Without an
+    upper-bound, memstore 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>2147483648000</value>
+    <description>
+    2000GB.
+   (Set high enough to avoid automatic splits. We want to do the splits
+    manually for now).
+    Maximum HStoreFile size. If any one of a column families' HStoreFiles has
+    grown to exceed this value, the hosting HRegion is split in two.
+    </description>
+  </property>
+  <property>
+   <name>hbase.hstore.compaction.max</name>
+   <value>12</value>
+   <description>Never compact more than these files, even if it is a 
+   major compaction. This is to safe guard against OOM.</description>
+  </property>
+  <property>
+   <name>hbase.hstore.compaction.min.size</name>
+   <value>4194304</value>
+   <description>
+     The "minimum" compaction size. All files below this size are always
+     included into a compaction, even if outside compaction ratio times
+     the total size of all files added to compaction so far.
+   </description>
+  </property>
+  <property>
+    <name>hbase.hregion.majorcompaction</name>
+    <value>2419200000</value>
+    <description>
+    Force a major compaction if any StoreFile is this old (28 days)
+    </description>
+  </property>
+  <property>
+    <name>hbase.hregion.majorcompaction.jitter</name>
+    <value>0.33</value>
+    <description>
+    Jitter in major compaction time (+/- 33% == 1 day)
+    </description>
+  </property>
+  <property>
+    <name>hbase.hstore.compaction.exclude.bulk</name>
+    <value>true</value>
+    <description>
+      Exclude bulk files from minor compaction to prevent compaction storms after an incremental HFileOutputFormat load
+    </description>
+  </property>
+  <property>
+    <name>hbase.regionserver.thread.compaction.small</name>
+    <value>1</value>
+    <description>
+      Number of threads dedicated to small-sized compactions
+    </description>
+  </property>
+  <property>
+    <name>hbase.regionserver.thread.compaction.throttle</name>
+    <value>1000000000</value>
+    <description>
+      Put all compactions over this size in a different thread pool than compactions under this size (1 GB)
+    </description>
+  </property>
+  
+  <property>
+    <name>hbase.hstore.blockingStoreFiles</name>
+    <value>25</value>
+    <description>
+    If more than this number of StoreFiles in any one Store
+    (one StoreFile is written per flush of MemStore) then updates are
+    blocked for this HRegion until a compaction is completed, or
+    until hbase.hstore.blockingWaitTime has been exceeded.
+    </description>
+  </property>
+  <property>
+    <name>hbase.client.keyvalue.maxsize</name>
+    <value>0</value>
+    <description>Specifies the combined maximum allowed size of a KeyValue
+    instance. This is to set an upper boundary for a single entry saved in a
+    storage file. Since they cannot be split it helps avoiding that a region
+    cannot be split any further because the data is too large. It seems wise
+    to set this to a fraction of the maximum region size. Setting it to zero
+    or less disables the check.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.master.logcleaner.maxdeletedlogs</name>
+    <value>1000</value>
+    <description>The max number of archived logs (logs in .oldlogs)
+    directory that we'll delete in one iteration of the oldLogsCleaner
+    background chore.
+    </description>
+  </property>
+
+  <property>
+     <name>hbase.hstore.compaction.ratio</name>
+     <value>1.4</value>
+     <description>During compaction file selection, a file is included in
+     compaction if it is within sum(newer_files) * compaction.ratio
+     </description>
+  </property>
+
+  <property>
+     <name>io.storefile.bloom.max.keys</name>
+     <value>128000000</value>
+     <description>If output might contain more than these many keys,
+     do not create a  bloom for the given store file. This avoids
+     creating blooms for the large (e.g. major compacted) files,
+     but retains the benefit of bloom to avoid seeking into
+     the larger number of small/recent files.
+     </description>
+  </property>
+
+  <property>
+     <name>hfile.io.bytes.per.checksum</name>
+     <value>4096</value>
+     <description>Generate a checksum for HFiles for every specified
+      number of bytes.
+     </description>
+  </property>
+
+  <property>
+     <name>hbase.regions.percheckin</name>
+     <value>1</value>
+     <description>
+     Max number of regions to give an RS when he heartbeats.
+     </description>
+  </property>
+
+  <property>
+     <name>hbase.regions.nobalancing.count</name>
+     <value>1</value>
+     <description>
+     Don't give a new region to an RS if it is still initializing a
+     previously-assigned region
+     </description>
+  </property>
+
+  <property>
+     <name>hbase.regions.close.max</name>
+     <value>1</value>
+     <description>
+     When balancing from a high-loaded RS to a low-loaded RS, only balance
+     one region at a time.  This smoothes out rebalancing in the case where
+     multiple RS have roughly the same load.
+     </description>
+  </property>
+
+  <property>
+     <name>hbase.regions.slop</name>
+     <value>0.05</value>
+     <description>
+     Percentage of variance allowed above the average before an RS is
+     considered high-loaded.  Note that we would put this lower, but we have
+     some clusters with 5 regions/server, so we wanted a min variance of:
+      10 * 0.05 == 0.5 i.e. about 1 region slop.
+     </description>
+  </property>
+
+  <property>
+      <name>hfile.block.cache.size</name>
+      <value>0.60</value>
+      <description>
+          Percentage of maximum heap (-Xmx setting) to allocate to block cache
+          used by HFile/StoreFile. Default of 0.2 means allocate 20%.
+          Set to 0 to disable.
+      </description>
+  </property>
+
+  <property>
+      <name>hbase.regionserver.discardLastNonExistantBlock</name>
+      <value>true</value>
+      <description>
+        If the RS dies before it could write any data to the last block of
+        HLog, then the lease recovery would get stuck trying to recover the
+        last block of that file (which was not even created). The fix is
+        to make the lease recovery code drop the last block of a file if
+        nobody has previously issued a hsync on that block.
+      </description>
+  </property>
+  
+  <property>
+    <name>hbase.master.applyPreferredAssignment.period</name>
+    <value>300000</value>
+    <description>Assign regioins based on the region locality in this period
+      (ms) of time when the master restarts. Also disable the preferred 
+      assignment by setting this variable to 0.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.master.regionLocality.snapshot.validity_time_ms</name>
+    <value>86400000</value>
+    <description>Ensure that we ignore region-locality preferences that were
+    calculated more than this time ago.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.rs.blockcache.lru.bucket.multi</name>
+    <value>0.8</value>
+    <description>
+      Fraction of total block cache size for multiple-access blocks
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.rs.blockcache.lru.bucket.single</name>
+    <value>0.19</value>
+    <description>
+      Fraction of total block cache size for single-access blocks
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.rs.blockcache.lru.bucket.inmemory</name>
+    <value>0.01</value>
+    <description>
+      Percentage of total size for in-memory blocks
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.rs.blockcache.lru.watermark.high</name>
+    <value>0.95</value>
+    <description>
+      Percentage of total block cache size that triggers eviction
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.rs.blockcache.lru.watermark.low</name>
+    <value>0.85</value>
+    <description>
+      Percentage of total block cache size that eviction will evict until
+    </description>
+  </property>
+
+
+  <property>
+    <name>hbase.offpeak.start.hour</name>
+    <value>21</value>
+    <description>
+      Start of the off-peak hour
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.offpeak.end.hour</name>
+    <value>22</value>
+    <description>
+      End of the off-peak hour
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.hstore.compaction.ratio.offpeak</name>
+    <value>3</value>
+    <description>
+      Compact selection ratio for the off-peak hours
+    </description>
+  </property>
+
+  <property>
+    <name>zookeeper.connection.retry.num</name>
+    <value>6</value>
+    <description>
+      The number of retry times if hbase gets zookeeper connection 
+			exception.
+    </description>
+  </property>
+
+  <property>
+    <name>zookeeper.connection.retry.freq</name>
+    <value>1000</value>
+    <description>
+    	The frequency in mill secs that hbase will retry to connect to zookeeper quorum when 
+			getting zookeeper connection exception.
+		</description>
+  </property>
+
+  <property>
+    <name>zookeeper.dump.connection.timeout</name>
+    <value>1000</value>
+    <description>
+    	The timeout in mill secs that HBase will try to connect to each server of zookeeper 
+    	quorum during the zk dump.
+		</description>
+  </property>
+
+  <property>
+    <name>hbase.master.logcleaner.ttl</name>
+    <value>604800000</value>
+    <description>Maximum time (in ms) a log can stay in the .oldlogdir
+    directory, after which it will be cleaned by a master thread.
+    </description>
+  </property>
+  
+	<property>
+    <name>hbase.master.distributed.log.splitting</name>
+    <value>true</value>
+  </property>
+
+  <property>
+    <name>hbase.thrift.minWorkerThreads</name>
+    <value>200</value>
+    <description>
+      The core size of the HBase Thrift server's thread pool. At least this
+      many threads will be running at all times after very short initial
+      warmup.
+    </description>
+  </property>
+
+  <property> 
+    <name>hbase.thrift.maxWorkerThreads</name>
+    <value>1000</value>
+    <description>
+      The maximum size of the HBase Thrift server thread pool.
+    </description>
+  </property>
+
+  <property> 
+    <name>hbase.thrift.maxQueuedRequests</name>
+    <value>1000</value>
+    <description>
+      The maximum number of queued requests (connections) outstanding while
+      waiting for Thrift worker threads to become available. When this queue
+      overflows, new connections will be closed.
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.regionserver.preferredAssignment.regionHoldPeriod</name>
+    <value>120000</value>
+    <description>
+      Time the master holds regions to reassign.
+    </description>
+  </property>
+
+  <property>
+    <name>zookeeper.session.timeout</name>
+    <value>600000</value>
+    <description>
+      controlls the zk session timeout for master and region servers.
+      master zk session timeout can be overridden by
+      hbase.master.zookeeper.session.timeout
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.zookeeper.property.maxSessionTimeout</name>
+    <value>600000</value>
+  </property>
+
+  <property>
+    <name>hbase.master.zookeeper.session.timeout</name>
+    <value>55000</value>
+    <description>
+      override zookeeper.session.timeout for master
+    </description>
+  </property>
+
+  <property>
+    <name>hbase.splitlog.manager.timeout</name>
+    <value>90000</value>
+    <description>
+      Distributed log splitting will preempt a task if it doesn't
+      get a heartbeat from the worker within this timeout
+      Mostly Depends upon DFS IPC/RPC/Socket timeouts
+    </description>
+  </property>
+
+</configuration>