hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From st...@apache.org
Subject svn commit: r1124467 - /hbase/trunk/src/docbkx/book.xml
Date Wed, 18 May 2011 23:49:53 GMT
Author: stack
Date: Wed May 18 23:49:53 2011
New Revision: 1124467

URL: http://svn.apache.org/viewvc?rev=1124467&view=rev
Log:
HBASE-3888 book.xml - filled in architecture 'daemon' section

Modified:
    hbase/trunk/src/docbkx/book.xml

Modified: hbase/trunk/src/docbkx/book.xml
URL: http://svn.apache.org/viewvc/hbase/trunk/src/docbkx/book.xml?rev=1124467&r1=1124466&r2=1124467&view=diff
==============================================================================
--- hbase/trunk/src/docbkx/book.xml (original)
+++ hbase/trunk/src/docbkx/book.xml Wed May 18 23:49:53 2011
@@ -748,8 +748,70 @@ HTable table2 = new HTable(conf2, "myTab
     <section xml:id="daemons">
      <title>Daemons</title>
      <section xml:id="master"><title>Master</title>
+       <para><code>HMaster</code> is the implementation of the Master Server.
 The Master server
+       is responsible for monitoring all RegionServer instances in the cluster, and is
+       the interface for all metadata changes.
+       </para>
+       <section xml:id="master.startup"><title>Startup Behavior</title>
+         <para>If run in a multi-Master environment, all Masters compete to run the
cluster.  If the active
+         Master loses it's lease in ZooKeeper (or the Master shuts down), then then the remaining
Masters jostle to 
+         take over the Master role.
+         </para>
+       </section>
+       <section xml:id="master.api"><title>Interface</title>
+         <para>The methods exposed by <code>HMasterInterface</code> are
primarily metadata-oriented methods:
+         <itemizedlist>
+            <listitem>Table (createTable, modifyTable, removeTable, enable, disable)
+            </listitem>
+            <listitem>ColumnFamily (addColumn, modifyColumn, removeColumn) 
+            </listitem>
+            <listitem>Region (move, assign, unassign)
+            </listitem>
+         </itemizedlist>
+         For example, when the <code>HBaseAdmin</code> method <code>disableTable</code>
is invoked, it is serviced by the Master server. 
+         </para>
+       </section>
+       <section xml:id="master.processes"><title>Processes</title>
+         <para>The Master runs several background threads:
+           <itemizedlist>
+             <listitem><code>LoadBalancer</code> periodically reassign
regions in the cluster.
+             </listitem>
+             <listitem><code>CatalogJanitor</code> periodically checks
and cleans up the .META. table. 
+             </listitem>
+           </itemizedlist>
+         </para>
+       </section>
+
      </section>
      <section xml:id="regionserver.arch"><title>RegionServer</title>
+       <para><code>HRegionServer</code> is the RegionServer implementation.
 It is responsible for serving and managing regions.  
+       </para>
+       <section xml:id="regionserver.arch.api"><title>Interface</title>
+         <para>The methods exposed by <code>HRegionRegionInterface</code>
contain both data-oriented and region-maintenance methods:
+         <itemizedlist>
+            <listitem>Data (get, put, delete, next, etc.)
+            </listitem>
+            <listitem>Region (splitRegion, compactRegion, etc.)  
+            </listitem>
+         </itemizedlist>
+         For example, when the <code>HBaseAdmin</code> method <code>majorCompact</code>
is invoked on a table, the client is actually iterating through
+         all regions for the specified table and requesting a major compaction directly to
each region. 
+         </para>
+       </section>
+       <section xml:id="regionserver.arch.processes"><title>Processes</title>
+         <para>The RegionServer runs a variety of background threads:</para>
+         <itemizedlist>
+            <listitem><code>CompactSplitThread</code> checks for splits
and handle minor compactions.
+            </listitem>
+            <listitem><code>MajorCompactionChecker</code> checks for major
compactions.
+            </listitem>
+            <listitem><code>MemStoreFlusher</code> periodically flushes
in-memory writes in the MemStore to StoreFiles.
+            </listitem>
+            <listitem><code>LogRoller</code> periodically checks the RegionServer's
HLog.
+            </listitem>
+         </itemizedlist>        
+       </section>
+
      </section>
     </section>
 



Mime
View raw message