Author: stack
Date: Sun Oct 31 05:00:29 2010
New Revision: 1029241

URL: http://svn.apache.org/viewvc?rev=1029241&view=rev
Log:
Edit of the quick start and moving around some sections, appendices

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=1029241&r1=1029240&r2=1029241&view=diff
==============================================================================
--- hbase/trunk/src/docbkx/book.xml (original)
+++ hbase/trunk/src/docbkx/book.xml Sun Oct 31 05:00:29 2010
@@ -34,7 +34,7 @@
       <abstract>
     <para>This is the official book of
     <link xlink:href="http://www.hbase.org";>Apache HBase</link>,
-    a distributed column-oriented database built on top of
+    a distributed, versioned, column-oriented database built on top of
     Apache Hadoop <link xlink:href="http://hadoop.apache.org/";>Common and 
HDFS</link>.
       </para>
       </abstract>
@@ -89,35 +89,49 @@
 
       <para><itemizedlist>
           <para>Here is a quick guide to starting up a standalone HBase
-          instance, inserting rows into a table via the <link
-          linkend="shell">HBase Shell</link>, and then clean up and shutting
-          down your instance.</para>
+          instance, inserting rows into a table via the
+          <link linkend="shell">HBase Shell</link>, and then cleaning up and 
shutting
+          down your running instance.</para>
 
           <listitem>
             <para>Download and unpack the latest stable release.</para>
 
-            <para>Choose a download source from <link
+            <para>Choose a download site from this list of <link
             xlink:href="http://www.apache.org/dyn/closer.cgi/hbase/";>Apache
             Download Mirrors</link>. Click on it. This will take you to a
-            mirror of the <emphasis>HBase Releases</emphasis> page. Click on
+            mirror of <emphasis>HBase Releases</emphasis>. Click on
             the folder named <filename>stable</filename> and then download the
-            file <filename><?eval 
${project.version}?>.tar.gz</filename>.</para>
+            file that ends in <filename>.tar.gz</filename>;
+            e.g. <filename>hbase-<?eval 
${project.version}?>.tar.gz</filename>.</para>
 
-            <para>Decompress and untar your download. Then change into the
-            unpacked directory and startHBase</para>
+            <para>Decompress and untar your download and then change into the
+            unpacked directory and start HBase</para>
 
-            <para><programlisting>$ tar xfz <?eval ${project.version}?>.tar.gz
-$ cd <?eval ${project.version}
+            <para><programlisting>$ tar xfz hbase-<?eval 
${project.version}?>.tar.gz
+$ cd hbase-<?eval ${project.version}?>
 $ ./bin/start-hbase.sh
-starting master, logging to 
logs/hbase-user-master-example.org.out?></programlisting></para>
+starting master, logging to 
logs/hbase-user-master-example.org.out</programlisting></para>
 
             <para>You now have a running HBase instance. HBase logs can be
             found in the <filename>logs</filename> subdirectory. Check them
-            out.</para>
+            out especially if HBase had trouble starting.</para>
+
+            <note>
+            <title>Is <application>java</application> installed?</title>
+            <para>The above presumes a 1.6 version of Oracle java is installed 
on your
+            machine and available on your path; i.e. when you type
+            <application>java</application>, you see output that describes the 
options
+            the java program takes.  If this is not the case, HBase will not 
start.
+            Install java, edit <filename>conf/hbase-env.sh</filename>, 
uncommenting the
+            <envar>JAVA_HOME</envar> line pointing it  to your java install.  
Then,
+            retry the steps above.</para>
+            </note>
+            
           </listitem>
 
           <listitem>
-            <para>Connect to your running HBase via the HBase Shell</para>
+            <para>Connect to your running HBase via the 
+          <link linkend="shell">HBase Shell</link>.</para>
 
             <para><programlisting>$ ./bin/hbase shell
 HBase Shell; enter 'help&lt;RETURN&gt;' for list of supported commands.
@@ -126,7 +140,8 @@ Version: 0.89.20100924, r1001068, Fri Se
 
 hbase(main):001:0&gt; </programlisting></para>
 
-            <para>Type <command>help</command> to see a listing of shell
+            <para>Type <command>help</command> and then 
<command>&lt;RETURN&gt;</command>
+            to see a listing of shell
             commands and options. Browse at least the paragraphs at the end of
             the help emission for the gist of how variables are entered in the
             HBase shell; in particular note how table names, rows, and
@@ -135,27 +150,21 @@ hbase(main):001:0&gt; </programlisting><
 
           <listitem>
             <para>Create a table named <filename>test</filename> with a single
-            colum family named <filename>cf.</filename></para>
-
+            column family named <filename>cf.</filename> and then insert some
+            values.</para>
             <para><programlisting>hbase(main):003:0&gt; create 'test', 'cf'
-0 row(s) in 1.2200 seconds</programlisting></para>
-          </listitem>
-
-          <listitem>
-            <para>Insert some values into the table
-            <varname>test</varname>.</para>
-
-            <para>Below we insert 3 values. The first insert is at
-            <varname>row1</varname>, column <varname>cf:a</varname> -- columns
-            have a column family prefix delimited by the colon character --
-            with a value of <varname>value1</varname>.</para>
-
-            <para><programlisting>hbase(main):004:0&gt; put 'test', 'row1', 
'cf:a', 'value1'
+0 row(s) in 1.2200 seconds
+hbase(main):004:0&gt; put 'test', 'row1', 'cf:a', 'value1'
 0 row(s) in 0.0560 seconds
 hbase(main):005:0&gt; put 'test', 'row2', 'cf:b', 'value2'
 0 row(s) in 0.0370 seconds
 hbase(main):006:0&gt; put 'test', 'row3', 'cf:c', 'value3'
 0 row(s) in 0.0450 seconds</programlisting></para>
+
+            <para>Above we inserted 3 values, one at a time. The first insert 
is at
+            <varname>row1</varname>, column <varname>cf:a</varname> -- columns
+            have a column family prefix delimited by the colon character --
+            with a value of <varname>value1</varname>.</para>
           </listitem>
 
           <listitem>
@@ -164,17 +173,17 @@ hbase(main):006:0&gt; put 'test', 'row3'
             <para>Run a scan of the table by doing the following</para>
 
             <para><programlisting>hbase(main):007:0&gt; scan 'test'
-ROW    COLUMN+CELL
-row1   column=cf:a, timestamp=1288380727188, value=value1
-row2   column=cf:b, timestamp=1288380738440, value=value2
-row3   column=cf:c, timestamp=1288380747365, value=value3
+ROW        COLUMN+CELL
+row1       column=cf:a, timestamp=1288380727188, value=value1
+row2       column=cf:b, timestamp=1288380738440, value=value2
+row3       column=cf:c, timestamp=1288380747365, value=value3
 3 row(s) in 0.0590 seconds</programlisting></para>
 
             <para>Get a single row as follows</para>
 
             <para><programlisting>hbase(main):008:0&gt; get 'test', 'row1'
-COLUMN  CELL
-cf:a    timestamp=1288380727188, value=value1
+COLUMN      CELL
+cf:a        timestamp=1288380727188, value=value1
 1 row(s) in 0.0400 seconds</programlisting></para>
           </listitem>
 
@@ -191,8 +200,7 @@ hbase(main):013:0&gt; drop 'test'
           <listitem>
             <para>Exit the shell by typing exit.</para>
 
-            <para><programlisting>hbase(main):014:0&gt; exit
-$ </programlisting></para>
+            <para><programlisting>hbase(main):014:0&gt; 
exit</programlisting></para>
           </listitem>
 
           <listitem>
@@ -216,6 +224,64 @@ stopping hbase...............</programli
     </section>
   </chapter>
 
+  <chapter xml:id="configuration">
+    <title>Configuration</title>
+    <para>
+    </para>
+
+    <section>
+    <title><filename>hbase-site.xml</filename> and 
<filename>hbase-default.xml</filename></title>
+    <para>What are these?
+    </para>
+
+    <para>
+    Not all configuration options make it out to
+    <filename>hbase-default.xml</filename>.  Configuration
+    that it thought rare anyone would change can exist only
+    in code; the only way to turn up the configurations is
+    via a reading of the source code.
+    </para>
+
+    <!--The file hbase-default.xml is generated as part of
+    the build of the hbase site.  See the hbase pom.xml.
+    The generated file is a docbook section with a glossary
+    in it-->
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude";
+      href="../../target/site/hbase-default.xml" />
+      </section>
+
+      <section>
+      <title><filename>hbase-env.sh</filename></title>
+      <para></para>
+      </section>
+      <section>
+      <title><filename>log4j.properties</filename></title>
+      <para></para>
+      </section>
+      <section>
+      <title>Noteworthy Configuration</title>
+      <para>Below we review a couple of the key configurations.
+      We'll list those you must to change to suit your context
+      and others that you should review and consider moving on
+      from defaults after guaging your deploys load and query profiles.
+      </para>
+      <section>
+      <title>LZO compression</title>
+      <para>You should consider enabling LZO compression.  Its
+      near-frictionless and in most all cases boosts performance.
+      To enable LZO, TODO...
+      </para>
+      </section>
+
+      </section>
+  </chapter>
+
+  <chapter xml:id="shell">
+    <title>The HBase Shell</title>
+
+    <para></para>
+  </chapter>
+
   <chapter xml:id="datamodel">
     <title>Data Model</title>
   <para>The HBase data model resembles that a traditional RDBMS.
@@ -246,8 +312,29 @@ stopping hbase...............</programli
       <para></para>
     </section>
 
-    <section>
-      <title>Column Family</title>
+    <section xml:id="columnfamily">
+      <title>Column Family<indexterm><primary>Column 
Family</primary></indexterm></title>
+        <para>
+      Columns in HBase are grouped into <emphasis>column families</emphasis>.
+      All column members of a column family have a common prefix.  For 
example, the
+      columns <emphasis>courses:history</emphasis> and
+      <emphasis>courses:math</emphasis> are both members of the
+      <emphasis>courses</emphasis> column family.
+          The colon character (<literal
+          moreinfo="none">:</literal>) delimits the column family from the
+          column family <emphasis>qualifier</emphasis>.
+        The column family prefix must be composed of
+      <emphasis>printable</emphasis> characters. The qualifying tail, the
+      <indexterm>column family <emphasis>qualifier</emphasis><primary>Column 
Family Qualifier</primary></indexterm>, can be made of any
+      arbitrary bytes. Column families must be declared up front
+      at schema definition time whereas columns do not need to be
+      defined at schema time but can be conjured on the fly while
+      the table is up an running.</para>
+      <para>Physically, all column family members are stored together on the
+      filesystem.  Because tunings and
+      storage specifications are done at the column family level, it is
+      advised that all column family members have the same general access
+      pattern and size characteristics.</para>
 
       <para></para>
     </section>
@@ -442,11 +529,6 @@ stopping hbase...............</programli
     </section>
   </chapter>
 
-  <chapter xml:id="shell">
-    <title>The HBase Shell</title>
-
-    <para></para>
-  </chapter>
 
   <chapter xml:id="filesystem">
     <title>Filesystem Format</title>
@@ -472,7 +554,9 @@ stopping hbase...............</programli
     </section>
   </chapter>
 
-  <chapter xml:id="regions">
+  <chapter xml:id="architecture">
+    <title>Architecture</title>
+    <section>
     <title>Regions</title>
 
     <para>This chapter is all about Regions.</para>
@@ -1098,6 +1182,7 @@ stopping hbase...............</programli
         master.</para>
       </section>
     </section>
+    </section>
   </chapter>
 
   <chapter>
@@ -1348,86 +1433,8 @@ stopping hbase...............</programli
 
     </section>
   </appendix>
-  <appendix id="configuration">
-    <title xml:id="configuration">Configuration</title>
-    <para>
-    </para>
-
-    <section>
-    <title><filename>hbase-site.xml</filename> and 
<filename>hbase-default.xml</filename></title>
-    <para>What are these?
-    </para>
-
-    <para>
-    Not all configuration options make it out to
-    <filename>hbase-default.xml</filename>.  Configuration
-    that it thought rare anyone would change can exist only
-    in code; the only way to turn up the configurations is
-    via a reading of the source code.
-    </para>
-
-    <!--The file hbase-default.xml is generated as part of
-    the build of the hbase site.  See the hbase pom.xml.
-    The generated file is a docbook section with a glossary
-    in it-->
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude";
-      href="../../target/site/hbase-default.xml" />
-      </section>
-
-      <section>
-      <title><filename>hbase-env.sh</filename></title>
-      <para></para>
-      </section>
-      <section>
-      <title><filename>log4j.properties</filename></title>
-      <para></para>
-      </section>
-      <section>
-      <title>Noteworthy Configuration</title>
-      <para>Below we review a couple of the key configurations.
-      We'll list those you must to change to suit your context
-      and others that you should review and consider moving on
-      from defaults after guaging your deploys load and query profiles.
-      </para>
-      </section>
-  </appendix>
-
-  <glossary xml:id="glossary">
-    <title xml:id="glossary">HBase Glossary</title>
-
-    <glossentry>
-      <glossterm xml:id="cf">column family</glossterm>
-      <glossterm xml:id="cfqualifier">column family qualifier</glossterm>
-
-      <acronym>cf</acronym>
 
-      <abbrev>cf</abbrev>
 
-      <glossdef>
-        <para>
-      Columns in HBase are grouped into <emphasis>column families</emphasis>.
-      All column members of a column family have a common prefix.  For 
example, the
-      columns <emphasis>courses:history</emphasis> and
-      <emphasis>courses:math</emphasis> are both members of the
-      <emphasis>courses</emphasis> column family.
-          The colon character (<literal
-          moreinfo="none">:</literal>) delimits the column family from the
-          column family <emphasis>qualifier</emphasis>.
-        The column family prefix must be composed of
-      <emphasis>printable</emphasis> characters. The qualifying tail, the
-      column family <emphasis>qualifier</emphasis>, can be made of any
-      arbitrary bytes. Column families must be declared up front
-      at schema definition time whereas columns do not need to be
-      defined at schema time but can be conjured on the fly while
-      the table is up an running.</para>
-      <para>Physically, all column family members are stored together on the
-      filesystem.  Because tunings and
-      storage specifications are done at the column family level, it is
-      advised that all column family members have the same general access
-      pattern and size characteristics.</para>
-      </glossdef>
-    </glossentry>
-  </glossary>
   <index>
   <title>Index</title>
   </index>


Reply via email to