HBASE-7054 Have our website conform to apache branding requirements

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1402324 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2012-10-25 20:50:41 +00:00
parent 04381e1a6c
commit 4ecc39db33
25 changed files with 171 additions and 155 deletions

24
pom.xml
View File

@ -42,7 +42,7 @@
<version>0.95-SNAPSHOT</version>
<name>HBase</name>
<description>
HBase is the &amp;lt;a href="http://hadoop.apache.org"&amp;rt;Hadoop&lt;/a&amp;rt; database. Use it when you need
Apache HBase&#153; is the &amp;lt;a href="http://hadoop.apache.org"&amp;rt;Hadoop&lt;/a&amp;rt; database. Use it when you need
random, realtime read/write access to your Big Data.
This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters
of commodity hardware.
@ -396,7 +396,7 @@
profile on the command line as follows:
$ ~/bin/mvn/bin/mvn -Papache-release release:perform
I've also been kiling the release:prepare step mid-way to check the
release.properties it generates at the top-level. Sometimes it refers
to HEAD rather than to the svn branch.
@ -408,7 +408,7 @@
-->
<releaseProfiles>apache-release</releaseProfiles>
<!--This stops our running tests for each stage of maven release.
But it builds the test jar. From SUREFIRE-172.
But it builds the test jar. From SUREFIRE-172.
-->
<arguments>-Dmaven.test.skip.exec</arguments>
</configuration>
@ -429,8 +429,8 @@
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<dependencies>
<!-- by default surefire selects dynamically the connector to the unit tests
tool. We want to use always the same as the different connectors can have different
<!-- by default surefire selects dynamically the connector to the unit tests
tool. We want to use always the same as the different connectors can have different
bugs and behaviour. -->
<dependency>
<groupId>org.apache.maven.surefire</groupId>
@ -469,7 +469,7 @@
<perCoreThreadCount>false</perCoreThreadCount>
<threadCount>${surefire.secondPartThreadCount}</threadCount>
<parallel>classes</parallel>
<!-- surefire hack, if not we're using method
<!-- surefire hack, if not we're using method
parallelisation class ! -->
<groups>${surefire.secondPartGroups}</groups>
</configuration>
@ -558,11 +558,11 @@
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.8</version>
</plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It
has no influence on the Maven build itself. m2e does not provide any safeguards against
rogue maven plugins that leak classloaders, modify random files inside workspace
<!--This plugin's configuration is used to store Eclipse m2e settings only. It
has no influence on the Maven build itself. m2e does not provide any safeguards against
rogue maven plugins that leak classloaders, modify random files inside workspace
or throw nasty exceptions to fail the build -->
<!-- Top level doesn't do any specific configuration currently - left to modules
<!-- Top level doesn't do any specific configuration currently - left to modules
to decide what they want to bind -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
@ -1336,7 +1336,7 @@
</dependencies>
</dependencyManagement>
</profile>
<!-- profile for building against Hadoop 2.0.x
<!-- profile for building against Hadoop 2.0.x
Activate using: mvn -Dhadoop.profile=2.0 -->
<profile>
<id>hadoop-2.0</id>
@ -1364,7 +1364,7 @@
<artifactId>hadoop-annotations</artifactId>
<version>${hadoop-two.version}</version>
</dependency>
<!-- This was marked as test dep in earlier pom, but was scoped compile.
<!-- This was marked as test dep in earlier pom, but was scoped compile.
Where do we actually need it? -->
<dependency>
<groupId>org.apache.hadoop</groupId>

View File

@ -29,7 +29,7 @@
<info>
<title><link xlink:href="http://www.hbase.org">
Apache HBase Reference Guide
The Apache HBase&#153; Reference Guide
</link></title>
<subtitle><link xlink:href="http://www.hbase.org">
<inlinemediaobject>
@ -39,10 +39,13 @@
</inlinemediaobject>
</link>
</subtitle>
<copyright><year>2012</year><holder>Apache Software Foundation</holder></copyright>
<copyright><year>2012</year><holder>Apache Software Foundation.
All Rights Reserved. Apache Hadoop, Hadoop, MapReduce, HDFS, Zookeeper, HBase, and the HBase project logo are trademarks of the Apache Software Foundation.
</holder>
</copyright>
<abstract>
<para>This is the official reference guide of
<link xlink:href="http://www.hbase.org">Apache HBase</link>,
<link xlink:href="http://www.hbase.org">Apache HBase (TM)</link>,
a distributed, versioned, column-oriented database built on top of
<link xlink:href="http://hadoop.apache.org/">Apache Hadoop</link> and
<link xlink:href="http://zookeeper.apache.org/">Apache ZooKeeper</link>.
@ -175,7 +178,7 @@
from time stamp <literal>t9</literal>, the value of
<varname>anchor:my.look.ca</varname> from time stamp <literal>t8</literal>.
</para>
<para>For more information about the internals of how HBase stores data, see <xref linkend="regions.arch" />.
<para>For more information about the internals of how Apache HBase stores data, see <xref linkend="regions.arch" />.
</para>
</section>
@ -197,7 +200,7 @@
<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>.
Columns in Apache HBase are grouped into <emphasis>column families</emphasis>.
All column members of a column family have the same prefix. For example, the
columns <emphasis>courses:history</emphasis> and
<emphasis>courses:math</emphasis> are both members of the
@ -560,7 +563,7 @@ htable.put(put);
<chapter xml:id="schema">
<title>HBase and Schema Design</title>
<para>A good general introduction on the strength and weaknesses modelling on
the various non-rdbms datastores is Ian Varleys' Master thesis,
the various non-rdbms datastores is Ian Varley's Master thesis,
<link xlink:href="http://ianvarley.com/UT/MR/Varley_MastersReport_Full_2009-08-07.pdf">No Relation: The Mixed Blessings of Non-Relational Databases</link>.
Recommended. Also, read <xref linkend="keyvalue"/> for how HBase stores data internally.
</para>

View File

@ -26,11 +26,11 @@
* limitations under the License.
*/
-->
<title>Case Studies</title>
<title>Apache HBase (TM) Case Studies</title>
<section xml:id="casestudies.overview">
<title>Overview</title>
<para>This chapter will describe a variety of performance and troubleshooting case studies that can
provide a useful blueprint on diagnosing cluster issues.</para>
provide a useful blueprint on diagnosing Apache HBase (TM) cluster issues.</para>
<para>For more information on Performance and Troubleshooting, see <xref linkend="performance"/> and <xref linkend="trouble"/>.
</para>
</section>
@ -41,7 +41,7 @@
<section xml:id="casestudies.schema.listdata">
<title>List Data</title>
<para>The following is an exchange from the user dist-list regarding a fairly common question:
how to handle per-user list data in HBase.
how to handle per-user list data in Apache HBase.
</para>
<para>*** QUESTION ***</para>
<para>

View File

@ -32,7 +32,7 @@
<section xml:id="feature_branches">
<title>Feature Branches</title>
<para>Feature Branches are easy to make. You do not have to be a committer to make one. Just request the name of your branch be added to JIRA up on the
developer's mailing list and a committer will add it for you. Thereafter you can file issues against your feature branch in HBase JIRA. Your code you
developer's mailing list and a committer will add it for you. Thereafter you can file issues against your feature branch in Apache HBase (TM) JIRA. Your code you
keep elsewhere -- it should be public so it can be observed -- and you can update dev mailing list on progress. When the feature is ready for commit,
3 +1s from committers will get your feature merged<footnote><para>See <link xlink:href="http://search-hadoop.com/m/asM982C5FkS1">HBase, mail # dev - Thoughts about large feature dev branches</link></para></footnote>
</para>
@ -45,14 +45,14 @@ suggested policy rather than a hard requirement. We want to try it
first to see if it works before we cast it in stone.
</para>
<para>
HBase is made of
Apache HBase is made of
<link xlink:href="https://issues.apache.org/jira/browse/HBASE#selectedTab=com.atlassian.jira.plugin.system.project%3Acomponents-panel">components</link>.
Components have one or more <xref linkend="OWNER" />s. See the 'Description' field on the
<link xlink:href="https://issues.apache.org/jira/browse/HBASE#selectedTab=com.atlassian.jira.plugin.system.project%3Acomponents-panel">components</link>
JIRA page for who the current owners are by component.
</para>
<para>
Patches that fit within the scope of a single HBase component require,
Patches that fit within the scope of a single Apache HBase component require,
at least, a +1 by one of the component's owners before commit. If
owners are absent -- busy or otherwise -- two +1s by non-owners will
suffice.
@ -74,8 +74,7 @@ until the justification for the -1 is addressed.
<section xml:id="OWNER">
<title>Component Owner</title>
<para>
Component owners are listed in the description field on this JIRA HBase
<link xlink:href="https://issues.apache.org/jira/browse/HBASE#selectedTab=com.atlassian.jira.plugin.system.project%3Acomponents-panel">components</link>
Component owners are listed in the description field on this Apache HBase JIRA <link xlink:href="https://issues.apache.org/jira/browse/HBASE#selectedTab=com.atlassian.jira.plugin.system.project%3Acomponents-panel">components</link>
page. The owners are listed in the 'Description' field rather than in the 'Component
Lead' field because the latter only allows us list one individual
whereas it is encouraged that components have multiple owners.
@ -83,7 +82,7 @@ whereas it is encouraged that components have multiple owners.
<para>
Owners are volunteers who are (usually, but not necessarily) expert in
their component domain and may have an agenda on how they think their
HBase component should evolve.
Apache HBase component should evolve.
</para>
<para>
Duties include:

View File

@ -26,16 +26,16 @@
* limitations under the License.
*/
-->
<title>Configuration</title>
<para>This chapter is the Not-So-Quick start guide to HBase configuration. It goes
over system requirements, Hadoop setup, the different HBase run modes, and the
<title>Apache HBase (TM) Configuration</title>
<para>This chapter is the Not-So-Quick start guide to Apache HBase (TM) configuration. It goes
over system requirements, Hadoop setup, the different Apache HBase run modes, and the
various configurations in HBase. Please read this chapter carefully. At a mimimum
ensure that all <xref linkend="basic.prerequisites" /> have
been satisfied. Failure to do so will cause you (and us) grief debugging strange errors
and/or data loss.</para>
<para>
HBase uses the same configuration system as Hadoop.
Apache HBase uses the same configuration system as Apache Hadoop.
To configure a deploy, edit a file of environment variables
in <filename>conf/hbase-env.sh</filename> -- this configuration
is used mostly by the launcher shell scripts getting the cluster
@ -142,7 +142,7 @@ to ensure well-formedness of your document after an edit session.
</indexterm>
</title>
<para>HBase is a database. It uses a lot of files all at the same time.
<para>Apache HBase is a database. It uses a lot of files all at the same time.
The default ulimit -n -- i.e. user file limit -- of 1024 on most *nix systems
is insufficient (On mac os x its 256). Any significant amount of loading will
lead you to <xref linkend="trouble.rs.runtime.filehandles"/>.
@ -163,7 +163,7 @@ to ensure well-formedness of your document after an edit session.
<footnote><para>See Jack Levin's <link xlink:href="">major hdfs issues</link>
note up on the user list.</para></footnote>
<footnote><para>The requirement that a database requires upping of system limits
is not peculiar to HBase. See for example the section
is not peculiar to Apache HBase. See for example the section
<emphasis>Setting Shell Limits for the Oracle User</emphasis> in
<link xlink:href="http://www.akadia.com/services/ora_linux_install_10g.html">
Short Guide to install Oracle 10 on Linux</link>.</para></footnote>.
@ -208,7 +208,7 @@ to ensure well-formedness of your document after an edit session.
<section xml:id="windows">
<title>Windows</title>
<para>HBase has been little tested running on Windows. Running a
<para>Apache HBase has been little tested running on Windows. Running a
production install of HBase on top of Windows is not
recommended.</para>
@ -270,18 +270,18 @@ to ensure well-formedness of your document after an edit session.
branch had a working sync but no official release was ever made from this branch.
You had to build it yourself. Michael Noll wrote a detailed blog,
<link xlink:href="http://www.michael-noll.com/blog/2011/04/14/building-an-hadoop-0-20-x-version-for-hbase-0-90-2/">Building
an Hadoop 0.20.x version for HBase 0.90.2</link>, on how to build an
an Hadoop 0.20.x version for Apache HBase 0.90.2</link>, on how to build an
Hadoop from branch-0.20-append. Recommended.</para></footnote>
<footnote><para>Praveen Kumar has written
a complimentary article,
<link xlink:href="http://praveen.kumar.in/2011/06/20/building-hadoop-and-hbase-for-hbase-maven-application-development/">Building Hadoop and HBase for HBase Maven application development</link>.
</para></footnote><footnote>Cloudera have <varname>dfs.support.append</varname> set to true by default.</footnote>.
Please use the most up-to-date Hadoop possible.</para>
<note><title>HBase 0.96.0 requires Hadoop 1.0.0 at a minimum</title>
<para>As of HBase 0.96.x, Hadoop 1.0.x at least is required. We will no
<note><title>Apache HBase 0.96.0 requires Apache Hadoop 1.0.0 at a minimum</title>
<para>As of Apache HBase 0.96.x, Apache Hadoop 1.0.x at least is required. We will no
longer run properly on older Hadoops such as <filename>0.20.205</filename> or <filename>branch-0.20-append</filename>.
Do not move to 0.96.x if you cannot upgrade your Hadoop<footnote><para>See <link xlink:href="http://search-hadoop.com/m/7vFVx4EsUb2">HBase, mail # dev - DISCUSS: Have hbase require at least hadoop 1.0.0 in hbase 0.96.0?</link></para></footnote>.</para>
<para>HBase 0.96.0 runs on Hadoop 2.0.
Do not move to Apache HBase 0.96.x if you cannot upgrade your Hadoop<footnote><para>See <link xlink:href="http://search-hadoop.com/m/7vFVx4EsUb2">HBase, mail # dev - DISCUSS: Have hbase require at least hadoop 1.0.0 in hbase 0.96.0?</link></para></footnote>.</para>
<para>Apache HBase 0.96.0 runs on Apache Hadoop 2.0.
</para>
</note>
@ -323,8 +323,8 @@ to ensure well-formedness of your document after an edit session.
</note>
<section xml:id="hadoop.security">
<title>HBase on Secure Hadoop</title>
<para>HBase will run on any Hadoop 0.20.x that incorporates Hadoop
<title>Apache HBase on Secure Hadoop</title>
<para>Apache HBase will run on any Hadoop 0.20.x that incorporates Hadoop
security features -- e.g. Y! 0.20S or CDH3B3 -- as long as you do as
suggested above and replace the Hadoop jar that ships with HBase
with the secure version. If you want to read more about how to setup

View File

@ -26,13 +26,13 @@
* limitations under the License.
*/
-->
<title>Building and Developing HBase</title>
<para>This chapter will be of interest only to those building and developing HBase (i.e., as opposed to
<title>Building and Developing Apache HBase (TM)</title>
<para>This chapter will be of interest only to those building and developing Apache HBase (TM) (i.e., as opposed to
just downloading the latest distribution).
</para>
<section xml:id="repos">
<title>HBase Repositories</title>
<para>There are two different repositories for HBase: Subversion (SVN) and Git. The former is the system of record for committers, but the latter is easier to work with to build and contribute. SVN updates get automatically propagated to the Git repo.</para>
<title>Apache HBase Repositories</title>
<para>There are two different repositories for Apache HBase: Subversion (SVN) and Git. The former is the system of record for committers, but the latter is easier to work with to build and contribute. SVN updates get automatically propagated to the Git repo.</para>
<section xml:id="svn">
<title>SVN</title>
<programlisting>
@ -140,7 +140,7 @@ Access restriction: The method getLong(Object, long) from the type Unsafe is not
</section>
<section xml:id="build">
<title>Building HBase</title>
<title>Building Apache HBase</title>
<section xml:id="build.basic">
<title>Basic Compile</title>
<para>Thanks to maven, building HBase is pretty easy. You can read about the various maven commands in <xref linkend="maven.build.commands"/>, but the simplest command to compile HBase from its java source code is:
@ -176,7 +176,7 @@ mvn clean package -DskipTests
</section>
</section> <!-- build -->
<section xml:id="mvn_repo">
<title>Adding an HBase release to Apache's Maven Repository</title>
<title>Adding an Apache HBase release to Apache's Maven Repository</title>
<para>Follow the instructions at
<link xlink:href="http://www.apache.org/dev/publishing-maven-artifacts.html">Publishing Maven Artifacts</link> after
reading the below miscellaney.
@ -313,7 +313,7 @@ What is the new development version for "HBase"? (org.apache.hbase:hbase) 0.92.3
<title>Updating hbase.apache.org</title>
<section xml:id="hbase.org.site.contributing">
<title>Contributing to hbase.apache.org</title>
<para>The HBase apache web site (including this reference guide) is maintained as part of the main HBase source tree, under <filename>/src/docbkx</filename> and <filename>/src/site</filename>. The former is this reference guide; the latter, in most cases, are legacy pages that are in the process of being merged into the docbkx tree.</para>
<para>The Apache HBase apache web site (including this reference guide) is maintained as part of the main Apache HBase source tree, under <filename>/src/docbkx</filename> and <filename>/src/site</filename>. The former is this reference guide; the latter, in most cases, are legacy pages that are in the process of being merged into the docbkx tree.</para>
<para>To contribute to the reference guide, edit these files and submit them as a patch (see <xref linkend="submitting.patches"/>). Your Jira should contain a summary of the changes in each section (see <link xlink:href="https://issues.apache.org/jira/browse/HBASE-6081">HBASE-6081</link> for an example).</para>
<para>To generate the site locally while you're working on it, run:
<programlisting>mvn site</programlisting>
@ -337,8 +337,8 @@ What is the new development version for "HBase"? (org.apache.hbase:hbase) 0.92.3
HBase have a character not usually seen in other projects.</para>
<section xml:id="hbase.moduletests">
<title>HBase Modules</title>
<para>As of 0.96, HBase is split into multiple modules which creates "interesting" rules for
<title>Apache HBase Modules</title>
<para>As of 0.96, Apache HBase is split into multiple modules which creates "interesting" rules for
how and where tests are written. If you are writting code for <classname>hbase-server</classname>, see
<xref linkend="hbase.unittests"/> for how to write your tests; these tests can spin
up a minicluster and will need to be categorized. For any other module, for example
@ -366,7 +366,7 @@ given the dependency tree).</para>
<section xml:id="hbase.unittests">
<title>Unit Tests</title>
<para>HBase unit tests are subdivided into four categories: small, medium, large, and
<para>Apache HBase unit tests are subdivided into four categories: small, medium, large, and
integration with corresponding JUnit <link xlink:href="http://www.junit.org/node/581">categories</link>:
<classname>SmallTests</classname>, <classname>MediumTests</classname>,
<classname>LargeTests</classname>, <classname>IntegrationTests</classname>.
@ -419,14 +419,14 @@ the developer machine as well.
</para>
</section>
<para>
HBase uses a patched maven surefire plugin and maven profiles to implement
Apache HBase uses a patched maven surefire plugin and maven profiles to implement
its unit test characterizations.
</para>
</section>
<section xml:id="hbase.unittests.cmds">
<title>Running tests</title>
<para>Below we describe how to run the HBase junit categories.</para>
<para>Below we describe how to run the Apache HBase junit categories.</para>
<section xml:id="hbase.unittests.cmds.test">
<title>Default: small and medium category tests
@ -614,7 +614,7 @@ mvn compile
<section xml:id="maven.build.hadoop">
<title>Building against various hadoop versions.</title>
<para>As of 0.96, HBase supports building against hadoop versions: 1.0.3, 2.0.0-alpha and 3.0.0-SNAPSHOT.
<para>As of 0.96, Apache HBase supports building against Apache Hadoop versions: 1.0.3, 2.0.0-alpha and 3.0.0-SNAPSHOT.
By default, we will build with Hadoop-1.0.3. To change the version to run with Hadoop-2.0.0-alpha, you would run:</para>
<programlisting>mvn -Dhadoop.profile=2.0 ...</programlisting>
<para>
@ -625,7 +625,7 @@ mvn compile
Similarly, for 3.0, you would just replace the profile value. Note that Hadoop-3.0.0-SNAPSHOT does not currently have a deployed maven artificat - you will need to build and install your own in your local maven repository if you want to run against this profile.
</para>
<para>
In earilier verions of HBase, you can build against older versions of hadoop, notably, Hadoop 0.22.x and 0.23.x.
In earilier verions of Apache HBase, you can build against older versions of Apache Hadoop, notably, Hadoop 0.22.x and 0.23.x.
If you are running, for example HBase-0.94 and wanted to build against Hadoop 0.23.x, you would run with:</para>
<programlisting>mvn -Dhadoop.profile=22 ...</programlisting>
</section>
@ -633,9 +633,9 @@ mvn compile
<section xml:id="getting.involved">
<title>Getting Involved</title>
<para>HBase gets better only when people contribute!
<para>Apache HBase gets better only when people contribute!
</para>
<para>As HBase is an Apache Software Foundation project, see <xref linkend="asf"/> for more information about how the ASF functions.
<para>As Apache HBase is an Apache Software Foundation project, see <xref linkend="asf"/> for more information about how the ASF functions.
</para>
<section xml:id="mailing.list">
<title>Mailing Lists</title>
@ -748,7 +748,7 @@ mvn compile
<section xml:id="run.insitu">
<title>Running In-Situ</title>
<para>If you are developing HBase, frequently it is useful to test your changes against a more-real cluster than what you find in unit tests. In this case, HBase can be run directly from the source in local-mode.
<para>If you are developing Apache HBase, frequently it is useful to test your changes against a more-real cluster than what you find in unit tests. In this case, HBase can be run directly from the source in local-mode.
All you need to do is run:
</para>
<programlisting>${HBASE_HOME}/bin/start-hbase.sh</programlisting>
@ -768,7 +768,7 @@ mvn compile
<para>If you are new to submitting patches to open source or new to submitting patches to Apache,
I'd suggest you start by reading the <link xlink:href="http://commons.apache.org/patches.html">On Contributing Patches</link>
page from <link xlink:href="http://commons.apache.org/">Apache Commons Project</link>. Its a nice overview that
applies equally to the HBase Project.</para>
applies equally to the Apache HBase Project.</para>
<section xml:id="submitting.patches.create">
<title>Create Patch</title>
<para>See the aforementioned Apache Commons link for how to make patches against a checked out subversion
@ -781,8 +781,8 @@ mvn compile
</section>
<section xml:id="submitting.patches.naming">
<title>Patch File Naming</title>
<para>The patch file should have the HBase Jira ticket in the name. For example, if a patch was submitted for <filename>Foo.java</filename>, then
a patch file called <filename>Foo_HBASE_XXXX.patch</filename> would be acceptable where XXXX is the HBase Jira number.
<para>The patch file should have the Apache HBase Jira ticket in the name. For example, if a patch was submitted for <filename>Foo.java</filename>, then
a patch file called <filename>Foo_HBASE_XXXX.patch</filename> would be acceptable where XXXX is the Apache HBase Jira number.
</para>
<para>If you generating from a branch, then including the target branch in the filename is advised, e.g., <filename>HBASE-XXXX-0.90.patch</filename>.
</para>
@ -805,7 +805,7 @@ mvn compile
<para>Once attached to the ticket, click "Submit Patch" and
the status of the ticket will change. Committers will review submitted patches for inclusion into the codebase. Please
understand that not every patch may get committed, and that feedback will likely be provided on the patch. Fear not, though,
because the HBase community is helpful!
because the Apache HBase community is helpful!
</para>
</section>
@ -932,7 +932,7 @@ Bar bar = foo.getBar(); &lt;--- imagine there's an extra space(s) after the
<section xml:id="committing.patches">
<title>Committing Patches</title>
<para>
Committers do this. See <link xlink:href="http://wiki.apache.org/hadoop/Hbase/HowToCommit">How To Commit</link> in the HBase wiki.
Committers do this. See <link xlink:href="http://wiki.apache.org/hadoop/Hbase/HowToCommit">How To Commit</link> in the Apache HBase wiki.
</para>
<para>Commiters will also resolve the Jira, typically after the patch passes a build.
</para>

View File

@ -26,13 +26,13 @@
* limitations under the License.
*/
-->
<title>External APIs</title>
This chapter will cover access to HBase either through non-Java languages, or through custom protocols.
<title>Apache HBase (TM) External APIs</title>
This chapter will cover access to Apache HBase (TM) either through non-Java languages, or through custom protocols.
<section xml:id="nonjava.jvm">
<title>Non-Java Languages Talking to the JVM</title>
<para>Currently the documentation on this topic in the
<link xlink:href="http://wiki.apache.org/hadoop/Hbase">HBase Wiki</link>.
<link xlink:href="http://wiki.apache.org/hadoop/Hbase">Apache HBase Wiki</link>.
See also the <link xlink:href="http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/thrift/package-summary.html#package_description">Thrift API Javadoc</link>.
</para>
</section>
@ -40,18 +40,18 @@
<section xml:id="rest">
<title>REST</title>
<para>Currently most of the documentation on REST exists in the
<link xlink:href="http://wiki.apache.org/hadoop/Hbase/Stargate">HBase Wiki on REST</link>.
<link xlink:href="http://wiki.apache.org/hadoop/Hbase/Stargate">Apache HBase Wiki on REST</link>.
</para>
</section> <!-- rest -->
<section xml:id="thrift">
<title>Thrift</title>
<para>Currently most of the documentation on Thrift exists in the
<link xlink:href="http://wiki.apache.org/hadoop/Hbase/ThriftApi">HBase Wiki on Thrift</link>.
<link xlink:href="http://wiki.apache.org/hadoop/Hbase/ThriftApi">Apache HBase Wiki on Thrift</link>.
</para>
<section xml:id="thrift.filter-language"><title>Filter Language</title>
<section xml:id="use-case"><title>Use Case</title>
<para>Note: this feature was introduced in HBase 0.92</para>
<para>Note: this feature was introduced in Apache HBase 0.92</para>
<para>This allows the user to perform server-side filtering when accessing HBase over Thrift. The user specifies a filter via a string. The string is parsed on the server to construct the filter</para>
</section>
@ -414,10 +414,9 @@
</section> <!-- thrift -->
<section xml:id="c">
<title>C/C++ HBase Client</title>
<title>C/C++ Apache HBase Client</title>
<para>FB's Chip Turner wrote a pure C/C++ client. <link xlink:href="https://github.com/facebook/native-cpp-hbase-client">Check it out</link>.
</para>
</section>
</chapter>

View File

@ -26,8 +26,8 @@
* limitations under the License.
*/
-->
<title>HBase Operational Management</title>
This chapter will cover operational tools and practices required of a running HBase cluster.
<title>Apache HBase (TM) Operational Management</title>
This chapter will cover operational tools and practices required of a running Apache HBase cluster.
The subject of operations is related to the topics of <xref linkend="trouble" />, <xref linkend="performance"/>,
and <xref linkend="configuration" /> but is a distinct topic in itself.
@ -325,8 +325,8 @@ row10 c1 c2
A downside to the above stop of a RegionServer is that regions could be offline for
a good period of time. Regions are closed in order. If many regions on the server, the
first region to close may not be back online until all regions close and after the master
notices the RegionServer's znode gone. In HBase 0.90.2, we added facility for having
a node gradually shed its load and then shutdown itself down. HBase 0.90.2 added the
notices the RegionServer's znode gone. In Apache HBase 0.90.2, we added facility for having
a node gradually shed its load and then shutdown itself down. Apache HBase 0.90.2 added the
<filename>graceful_stop.sh</filename> script. Here is its usage:
<programlisting>$ ./bin/graceful_stop.sh
Usage: graceful_stop.sh [--config &amp;conf-dir>] [--restart] [--reload] [--thrift] [--rest] &amp;hostname>

View File

@ -26,7 +26,7 @@
* limitations under the License.
*/
-->
<title>Performance Tuning</title>
<title>Apache HBase (TM) Performance Tuning</title>
<section xml:id="perf.os">
<title>Operating System</title>
@ -105,7 +105,7 @@
<title>Java</title>
<section xml:id="gc">
<title>The Garbage Collector and HBase</title>
<title>The Garbage Collector and Apache HBase</title>
<section xml:id="gcpause">
<title>Long GC pauses</title>
@ -122,8 +122,8 @@
threshold, the more GCing is done, the more CPU used). To address the
second fragmentation issue, Todd added an experimental facility,
<indexterm><primary>MSLAB</primary></indexterm>, that
must be explicitly enabled in HBase 0.90.x (Its defaulted to be on in
0.92.x HBase). See <code>hbase.hregion.memstore.mslab.enabled</code>
must be explicitly enabled in Apache HBase 0.90.x (Its defaulted to be on in
Apache 0.92.x HBase). See <code>hbase.hregion.memstore.mslab.enabled</code>
to true in your <classname>Configuration</classname>. See the cited
slides for background and detail<footnote><para>The latest jvms do better
regards fragmentation so make sure you are running a recent release.
@ -646,7 +646,7 @@ htable.close();</programlisting></para>
</para>
<section xml:id="perf.hdfs.curr"><title>Current Issues With Low-Latency Reads</title>
<para>The original use-case for HDFS was batch processing. As such, there low-latency reads were historically not a priority.
With the increased adoption of HBase this is changing, and several improvements are already in development.
With the increased adoption of Apache HBase this is changing, and several improvements are already in development.
See the
<link xlink:href="https://issues.apache.org/jira/browse/HDFS-1599">Umbrella Jira Ticket for HDFS Improvements for HBase</link>.
</para>

View File

@ -26,12 +26,12 @@
* limitations under the License.
*/
-->
<title>Secure HBase</title>
<title>Secure Apache HBase (TM)</title>
<section xml:id="hbase.secure.configuration">
<title>Secure Client Access to HBase</title>
<para>Newer releases of HBase (&gt;= 0.92) support optional SASL authentication of clients<footnote><para>See
<title>Secure Client Access to Apache HBase</title>
<para>Newer releases of Apache HBase (TM) (&gt;= 0.92) support optional SASL authentication of clients<footnote><para>See
also Matteo Bertozzi's article on <link xlink:href="http://www.cloudera.com/blog/2012/09/understanding-user-authentication-and-authorization-in-apache-hbase/">Understanding User Authentication and Authorization in Apache HBase</link>.</para></footnote>.</para>
<para>This describes how to set up HBase and HBase clients for connection to secure HBase resources.</para>
<para>This describes how to set up Apache HBase and clients for connection to secure HBase resources.</para>
<section><title>Prerequisites</title>
<para>
@ -233,7 +233,7 @@
<section xml:id="hbase.accesscontrol.configuration">
<title>Access Control</title>
<para>
Newer releases of HBase (&gt;= 0.92) support optional access control
Newer releases of Apache HBase (&gt;= 0.92) support optional access control
list (ACL-) based protection of resources on a column family and/or
table basis.
</para>

View File

@ -26,10 +26,10 @@
* limitations under the License.
*/
-->
<title>The HBase Shell</title>
<title>The Apache HBase Shell</title>
<para>
The HBase Shell is <link xlink:href="http://jruby.org">(J)Ruby</link>'s
The Apache HBase (TM) Shell is <link xlink:href="http://jruby.org">(J)Ruby</link>'s
IRB with some HBase particular commands added. Anything you can do in
IRB, you should be able to do in the HBase Shell.</para>
<para>To run the HBase shell,
@ -47,7 +47,7 @@
for example basic shell operation.</para>
<section xml:id="scripting"><title>Scripting</title>
<para>For examples scripting HBase, look in the
<para>For examples scripting Apache HBase, look in the
HBase <filename>bin</filename> directory. Look at the files
that end in <filename>*.rb</filename>. To run one of these
files, do as follows:

View File

@ -26,7 +26,7 @@
* limitations under the License.
*/
-->
<title>Troubleshooting and Debugging HBase</title>
<title>Troubleshooting and Debugging Apache HBase (TM)</title>
<section xml:id="trouble.general">
<title>General Guidelines</title>
<para>
@ -37,7 +37,7 @@
should return some hits for those exceptions youre seeing.
</para>
<para>
An error rarely comes alone in HBase, usually when something gets screwed up what will
An error rarely comes alone in Apache HBase (TM), usually when something gets screwed up what will
follow may be hundreds of exceptions and stack traces coming from all over the place.
The best way to approach this type of problem is to walk the log up to where it all
began, for example one trick with RegionServers is that they will print some
@ -207,9 +207,9 @@ export HBASE_OPTS="-XX:NewSize=64m -XX:MaxNewSize=64m &lt;cms options from above
</section>
<section xml:id="trouble.resources.lists">
<title>Mailing Lists</title>
<para>Ask a question on the <link xlink:href="http://hbase.apache.org/mail-lists.html">HBase mailing lists</link>.
The 'dev' mailing list is aimed at the community of developers actually building HBase and for features currently under development, and 'user'
is generally used for questions on released versions of HBase. Before going to the mailing list, make sure your
<para>Ask a question on the <link xlink:href="http://hbase.apache.org/mail-lists.html">Apache HBase mailing lists</link>.
The 'dev' mailing list is aimed at the community of developers actually building Apache HBase and for features currently under development, and 'user'
is generally used for questions on released versions of Apache HBase. Before going to the mailing list, make sure your
question has not already been answered by searching the mailing list archives first. Use
<xref linkend="trouble.resources.searchhadoop" />.
Take some time crafting your question<footnote><para>See <link xlink="http://www.mikeash.com/getting_answers.html">Getting Answers</link></para></footnote>; a quality question that includes all context and
@ -498,13 +498,13 @@ hadoop 17789 155 35.2 9067824 8604364 ? S&lt;l Mar04 9855:48 /usr/java/j
<section xml:id="trouble.tools.opentsdb">
<title>OpenTSDB</title>
<para>
<link xlink:href="http://opentsdb.net">OpenTSDB</link> is an excellent alternative to Ganglia as it uses HBase to store all the time series and doesnt have to downsample. Monitoring your own HBase cluster that hosts OpenTSDB is a good exercise.
<link xlink:href="http://opentsdb.net">OpenTSDB</link> is an excellent alternative to Ganglia as it uses Apache HBase to store all the time series and doesnt have to downsample. Monitoring your own HBase cluster that hosts OpenTSDB is a good exercise.
</para>
<para>
Heres an example of a cluster thats suffering from hundreds of compactions launched almost all around the same time, which severely affects the IO performance: (TODO: insert graph plotting compactionQueueSize)
</para>
<para>
Its a good practice to build dashboards with all the important graphs per machine and per cluster so that debugging issues can be done with a single quick look. For example, at StumbleUpon theres one dashboard per cluster with the most important metrics from both the OS and HBase. You can then go down at the machine level and get even more detailed metrics.
Its a good practice to build dashboards with all the important graphs per machine and per cluster so that debugging issues can be done with a single quick look. For example, at StumbleUpon theres one dashboard per cluster with the most important metrics from both the OS and Apache HBase. You can then go down at the machine level and get even more detailed metrics.
</para>
</section>
<section xml:id="trouble.tools.clustersshtop">
@ -551,14 +551,14 @@ Harsh J investigated the issue as part of the mailing list thread
</section>
<section xml:id="trouble.client.longpauseswithcompression">
<title>Long Client Pauses With Compression</title>
<para>This is a fairly frequent question on the HBase dist-list. The scenario is that a client is typically inserting a lot of data into a
<para>This is a fairly frequent question on the Apache HBase dist-list. The scenario is that a client is typically inserting a lot of data into a
relatively un-optimized HBase cluster. Compression can exacerbate the pauses, although it is not the source of the problem.</para>
<para>See <xref linkend="precreate.regions"/> on the pattern for pre-creating regions and confirm that the table isn't starting with a single region.</para>
<para>See <xref linkend="perf.configurations"/> for cluster configuration, particularly <code>hbase.hstore.blockingStoreFiles</code>, <code>hbase.hregion.memstore.block.multiplier</code>,
<code>MAX_FILESIZE</code> (region size), and <code>MEMSTORE_FLUSHSIZE.</code> </para>
<para>A slightly longer explanation of why pauses can happen is as follows: Puts are sometimes blocked on the MemStores which are blocked by the flusher thread which is blocked because there are
too many files to compact because the compactor is given too many small files to compact and has to compact the same data repeatedly. This situation can occur even with minor compactions.
Compounding this situation, HBase doesn't compress data in memory. Thus, the 64MB that lives in the MemStore could become a 6MB file after compression - which results in a smaller StoreFile. The upside is that
Compounding this situation, Apache HBase doesn't compress data in memory. Thus, the 64MB that lives in the MemStore could become a 6MB file after compression - which results in a smaller StoreFile. The upside is that
more data is packed into the same region, but performance is achieved by being able to write larger files - which is why HBase waits until the flushize before writing a new StoreFile. And smaller StoreFiles
become targets for compaction. Without compression the files are much bigger and don't need as much compaction, however this is at the expense of I/O.
</para>
@ -623,7 +623,7 @@ invocation of the admin API.
There can be several causes that produce this symptom.
</para>
<para>
First, check that you have a valid Kerberos ticket. One is required in order to set up communication with a secure HBase cluster. Examine the ticket currently in the credential cache, if any, by running the klist command line utility. If no ticket is listed, you must obtain a ticket by running the kinit command with either a keytab specified, or by interactively entering a password for the desired principal.
First, check that you have a valid Kerberos ticket. One is required in order to set up communication with a secure Apache HBase cluster. Examine the ticket currently in the credential cache, if any, by running the klist command line utility. If no ticket is listed, you must obtain a ticket by running the kinit command with either a keytab specified, or by interactively entering a password for the desired principal.
</para>
<para>
Then, consult the <link xlink:href="http://docs.oracle.com/javase/1.5.0/docs/guide/security/jgss/tutorials/Troubleshooting.html">Java Security Guide troubleshooting section</link>. The most common problem addressed there is resolved by setting javax.security.auth.useSubjectCredsOnly system property value to false.
@ -924,7 +924,7 @@ ERROR org.apache.hadoop.hbase.regionserver.HRegionServer: ZooKeeper session expi
<section xml:id="trouble.rs.runtime.double_listed_regions">
<title>Regions listed by domain name, then IP</title>
<para>
Fix your DNS. In versions of HBase before 0.92.x, reverse DNS needs to give same answer
Fix your DNS. In versions of Apache HBase before 0.92.x, reverse DNS needs to give same answer
as forward lookup. See <link xlink:href="https://issues.apache.org/jira/browse/HBASE-3431">HBASE 3431
RegionServer is not using the name given it by the master; double entry in master listing of servers</link> for gorey details.
</para>
@ -1040,8 +1040,8 @@ ERROR org.apache.hadoop.hbase.regionserver.HRegionServer: ZooKeeper session expi
<title>HBase and Hadoop version issues</title>
<section xml:id="trouble.versions.205">
<title><code>NoClassDefFoundError</code> when trying to run 0.90.x on hadoop-0.20.205.x (or hadoop-1.0.x)</title>
<para>HBase 0.90.x does not ship with hadoop-0.20.205.x, etc. To make it run, you need to replace the hadoop
jars that HBase shipped with in its <filename>lib</filename> directory with those of the Hadoop you want to
<para>Apache HBase 0.90.x does not ship with hadoop-0.20.205.x, etc. To make it run, you need to replace the hadoop
jars that Apache HBase shipped with in its <filename>lib</filename> directory with those of the Hadoop you want to
run HBase on. If even after replacing Hadoop jars you get the below exception:
<programlisting>
sv4r6s38: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/configuration/Configuration

View File

@ -31,9 +31,9 @@
<primary>ZooKeeper</primary>
</indexterm></title>
<para>A distributed HBase depends on a running ZooKeeper cluster.
<para>A distributed Apache HBase (TM) installation depends on a running ZooKeeper cluster.
All participating nodes and clients need to be able to access the
running ZooKeeper ensemble. HBase by default manages a ZooKeeper
running ZooKeeper ensemble. Apache HBase by default manages a ZooKeeper
"cluster" for you. It will start and stop the ZooKeeper ensemble
as part of the HBase start/stop process. You can also manage the
ZooKeeper ensemble independent of HBase and just point HBase at
@ -191,7 +191,7 @@ ${HBASE_HOME}/bin/hbase-daemons.sh {start,stop} zookeeper
<section xml:id="zk.sasl.auth">
<title>SASL Authentication with ZooKeeper</title>
<para>Newer releases of HBase (&gt;= 0.92) will
<para>Newer releases of Apache HBase (&gt;= 0.92) will
support connecting to a ZooKeeper Quorum that supports
SASL authentication (which is available in Zookeeper
versions 3.4.0 or later).</para>

View File

@ -535,7 +535,10 @@
<hr/>
</div>
<div id="footer">
<div class="xright"> #publishDate( "right" $decoration.publishDate $decoration.version )&nbsp;| Copyright &#169;#copyright()All Rights Reserved. </div>
<div class="xright">#publishDate( "right" $decoration.publishDate $decoration.version )&nbsp;
</div>
<div class="xright">Copyright &#169;<a href="http://www.apache.org">#copyright()</a>All Rights Reserved. Apache Hadoop, Hadoop, HDFS, HBase and the HBase project logo are trademarks of the Apache Software Foundation.
</div>
<div class="clear">
<hr/>
</div>

View File

@ -24,7 +24,7 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
<bannerLeft>
<name>HBase</name>
<name>Apache HBase</name>
<src>images/hbase_logo.png</src>
<href>http://hbase.apache.org/</href>
</bannerLeft>
@ -32,7 +32,7 @@
<version position="right" />
<publishDate position="right" />
<body>
<menu name="HBase Project">
<menu name="Apache HBase Project">
<item name="Overview" href="index.html"/>
<item name="License" href="license.html" />
<item name="Downloads" href="http://www.apache.org/dyn/closer.cgi/hbase/" />
@ -42,7 +42,7 @@
<item name="Source Repository" href="source-repository.html" />
<item name="ReviewBoard" href="https://reviews.apache.org"/>
<item name="Team" href="team-list.html" />
<item name="Sponsors" href="sponsors.html" />
<item name="Thanks" href="sponsors.html" />
<item name="Blog" href="http://blogs.apache.org/hbase/" />
<item name="Other resources" href="resources.html" />
</menu>
@ -61,6 +61,11 @@
<item name="HBase on Windows" href="cygwin.html" />
<item name="Cluster replication" href="replication.html" />
</menu>
<menu name="ASF">
<item name="Apache Software Foundation" href="http://www.apache.org/foundation/" />
<item name="How Apache Works" href="http://www.apache.org/foundation/how-it-works.html" />
<item name="Sponsoring Apache" href="http://www.apache.org/foundation/sponsorship.html" />
</menu>
</body>
<skin>
<groupId>org.apache.maven.skins</groupId>

View File

@ -22,13 +22,13 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
HBase ACID Properties
Apache HBase (TM) ACID Properties
</title>
</properties>
<body>
<section name="About this Document">
<p>HBase is not an ACID compliant database. However, it does guarantee certain specific
<p>Apache HBase (TM) is not an ACID compliant database. However, it does guarantee certain specific
properties.</p>
<p>This specification enumerates the ACID properties of HBase.</p>
</section>
@ -196,7 +196,7 @@
</ol>
</section>
<section name="Tunability">
<p>All of the above guarantees must be possible within HBase. For users who would like to trade
<p>All of the above guarantees must be possible within Apache HBase. For users who would like to trade
off some guarantees for performance, HBase may offer several tuning options. For example:</p>
<ul>
<li>Visibility may be tuned on a per-read basis to allow stale reads or time travel.</li>
@ -206,7 +206,7 @@
</section>
<section name="More Information">
<p>
For more information, see the <a href="book.html#client">client architecture</a> or <a href="book.html#datamodel">data model</a> sections in the HBase Reference Guide.
For more information, see the <a href="book.html#client">client architecture</a> or <a href="book.html#datamodel">data model</a> sections in the Apache HBase Reference Guide.
</p>
</section>
@ -217,7 +217,7 @@
(See <a href="http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/client/Scan.html#setBatch(int)">Scan#setBatch(int)</a>).
</p>
<p>[2] In the context of HBase, &quot;durably on disk&quot; implies an hflush() call on the transaction
<p>[2] In the context of Apache HBase, &quot;durably on disk&quot; implies an hflush() call on the transaction
log. This does not actually imply an fsync() to magnetic media, but rather just that the data has been
written to the OS cache on all replicas of the log. In the case of a full datacenter power loss, it is
possible that the edits are not truly durable.</p>

View File

@ -18,7 +18,7 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
Bulk Loads in HBase
Bulk Loads in Apache HBase (TM)
</title>
</properties>
<body>

View File

@ -17,21 +17,21 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>Installing HBase on Windows using Cygwin</title>
<title>Installing Apache HBase (TM) on Windows using Cygwin</title>
</properties>
<body>
<section name="Introduction">
<p><a title="HBase project" href="http://hbase.apache.org" target="_blank">HBase</a> is a distributed, column-oriented store, modeled after Google's <a title="Google's BigTable" href="http://research.google.com/archive/bigtable.html" target="_blank">BigTable</a>. HBase is built on top of <a title="Hadoop project" href="http://hadoop.apache.org">Hadoop</a> for its <a title="Hadoop MapReduce project" href="http://hadoop.apache.org/mapreduce" target="_blank">MapReduce </a>and <a title="Hadoop DFS project" href="http://hadoop.apache.org/hdfs">distributed file system</a> implementation. All these projects are open-source and part of the <a title="The Apache Software Foundation" href="http://www.apache.org/" target="_blank">Apache Software Foundation</a>.</p>
<p><a title="HBase project" href="http://hbase.apache.org" target="_blank">Apache HBase (TM)</a> is a distributed, column-oriented store, modeled after Google's <a title="Google's BigTable" href="http://research.google.com/archive/bigtable.html" target="_blank">BigTable</a>. Apache HBase is built on top of <a title="Hadoop project" href="http://hadoop.apache.org">Hadoop</a> for its <a title="Hadoop MapReduce project" href="http://hadoop.apache.org/mapreduce" target="_blank">MapReduce </a>and <a title="Hadoop DFS project" href="http://hadoop.apache.org/hdfs">distributed file system</a> implementation. All these projects are open-source and part of the <a title="The Apache Software Foundation" href="http://www.apache.org/" target="_blank">Apache Software Foundation</a>.</p>
<p style="text-align: justify; ">As being distributed, large scale platforms, the Hadoop and HBase projects mainly focus on <em><strong>*nix</strong></em><strong> environments</strong> for production installations. However, being developed in <strong>Java</strong>, both projects are fully <strong>portable</strong> across platforms and, hence, also to the <strong>Windows operating system</strong>. For ease of development the projects rely on <a title="Cygwin site" href="http://www.cygwin.com/" target="_blank">Cygwin</a> to have a *nix-like environment on Windows to run the shell scripts.</p>
</section>
<section name="Purpose">
<p style="text-align: justify; ">This document explains the <strong>intricacies of running HBase on Windows using Cygwin</strong> as an all-in-one single-node installation for testing and development. The HBase <a title="HBase Overview" href="http://hbase.apache.org/apidocs/overview-summary.html#overview_description" target="_blank">Overview</a> and <a title="HBase QuickStart" href="http://hbase.apache.org/book/quickstart.html" target="_blank">QuickStart</a> guides on the other hand go a long way in explaning how to setup <a title="HBase project" href="http://hadoop.apache.org/hbase" target="_blank">HBase</a> in more complex deployment scenario's.</p>
<p style="text-align: justify; ">This document explains the <strong>intricacies of running Apache HBase on Windows using Cygwin</strong> as an all-in-one single-node installation for testing and development. The HBase <a title="HBase Overview" href="http://hbase.apache.org/apidocs/overview-summary.html#overview_description" target="_blank">Overview</a> and <a title="HBase QuickStart" href="http://hbase.apache.org/book/quickstart.html" target="_blank">QuickStart</a> guides on the other hand go a long way in explaning how to setup <a title="HBase project" href="http://hadoop.apache.org/hbase" target="_blank">HBase</a> in more complex deployment scenario's.</p>
</section>
<section name="Installation">
<p style="text-align: justify; ">For running HBase on Windows, 3 technologies are required: <strong>Java, Cygwin and SSH</strong>. The following paragraphs detail the installation of each of the aforementioned technologies.</p>
<p style="text-align: justify; ">For running Apache HBase on Windows, 3 technologies are required: <strong>Java, Cygwin and SSH</strong>. The following paragraphs detail the installation of each of the aforementioned technologies.</p>
<section name="Java">
<p style="text-align: justify; ">HBase depends on the <a title="Java Platform, Standard Edition, 6 Release" href="http://java.sun.com/javase/6/" target="_blank">Java Platform, Standard Edition, 6 Release</a>. So the target system has to be provided with at least the Java Runtime Environment (JRE); however if the system will also be used for development, the Jave Development Kit (JDK) is preferred. You can download the latest versions for both from <a title="Java SE Downloads" href="http://java.sun.com/javase/downloads/index.jsp" target="_blank">Sun's download page</a>. Installation is a simple GUI wizard that guides you through the process.</p>
</section>
@ -91,7 +91,7 @@
</ol>
</section>
<section name="HBase">
<p style="text-align: justify; ">Download the <strong>latest release </strong>of HBase from the <a title="HBase Releases" href="http://www.apache.org/dyn/closer.cgi/hbase/" target="_blank">website</a>. As the HBase distributable is just a zipped archive, installation is as simple as unpacking the archive so it ends up in its final <strong>installation</strong> directory. Notice that HBase has to be installed in Cygwin and a good directory suggestion is to use <code>/usr/local/</code> (or [<code><strong>Root</strong> directory]\usr\local</code> in Windows slang). You should end up with a <code>/usr/local/hbase-<em>&lt;version&gt;</em></code> installation in Cygwin.</p>
<p style="text-align: justify; ">Download the <strong>latest release </strong>of Apache HBase from the <a title="HBase Releases" href="http://www.apache.org/dyn/closer.cgi/hbase/" target="_blank">website</a>. As the Apache HBase distributable is just a zipped archive, installation is as simple as unpacking the archive so it ends up in its final <strong>installation</strong> directory. Notice that HBase has to be installed in Cygwin and a good directory suggestion is to use <code>/usr/local/</code> (or [<code><strong>Root</strong> directory]\usr\local</code> in Windows slang). You should end up with a <code>/usr/local/hbase-<em>&lt;version&gt;</em></code> installation in Cygwin.</p>
This finishes installation. We go on with the configuration.
</section>
@ -192,7 +192,7 @@ If all previous configurations are working properly, we just need some tinkering
<section>
<title>Testing</title>
<p>
This should conclude the installation and configuration of HBase on Windows using Cygwin. So it's time <strong>to test it</strong>.
This should conclude the installation and configuration of Apache HBase on Windows using Cygwin. So it's time <strong>to test it</strong>.
<ol>
<li>Start a Cygwin<strong> terminal</strong>, if you haven't already.</li>
<li>Change directory to HBase <strong>installation</strong> using <code>CD /usr/local/hbase-<em>&lt;version&gt;</em></code>, preferably using auto-completion.</li>

View File

@ -17,20 +17,20 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>HBase Home</title>
<title>Apache HBase&#153; Home</title>
<link rel="shortcut icon" href="/images/favicon.ico" />
</properties>
<body>
<section name="Welcome to Apache HBase!">
<p>HBase is the <a href="http://hadoop.apache.org">Hadoop</a> database. Think of it as a distributed, scalable, big data store.
<section name="Welcome to Apache HBase&#153;">
<p><a href="http://www.apache.org/">Apache</a> HBase&#153; is the <a href="http://hadoop.apache.org">Hadoop</a> database, a distributed, scalable, big data store.
</p>
<h4>When Would I Use HBase?</h4>
<h4>When Would I Use Apache HBase?</h4>
<p>
Use HBase when you need random, realtime read/write access to your Big Data.
Use Apache HBase when you need random, realtime read/write access to your Big Data.
This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware.
HBase is an open-source, distributed, versioned, column-oriented store modeled after Google's <a href="http://research.google.com/archive/bigtable.html">Bigtable: A Distributed Storage System for Structured Data</a> by Chang et al.
Just as Bigtable leverages the distributed data storage provided by the Google File System, HBase provides Bigtable-like capabilities on top of Hadoop and HDFS.
Apache HBase is an open-source, distributed, versioned, column-oriented store modeled after Google's <a href="http://research.google.com/archive/bigtable.html">Bigtable: A Distributed Storage System for Structured Data</a> by Chang et al.
Just as Bigtable leverages the distributed data storage provided by the Google File System, Apache HBase provides Bigtable-like capabilities on top of Hadoop and HDFS.
</p>
<h4>Features</h4>
<p>
@ -43,7 +43,7 @@ HBase is an open-source, distributed, versioned, column-oriented store modeled a
</li>
<li>Automatic failover support between RegionServers.
</li>
<li>Convenient base classes for backing Hadoop MapReduce jobs with HBase tables.
<li>Convenient base classes for backing Hadoop MapReduce jobs with Apache HBase tables.
</li>
<li>Easy to use Java API for client access.
</li>
@ -68,12 +68,12 @@ HBase is an open-source, distributed, versioned, column-oriented store modeled a
<p>October 29th, 2012 <a href="http://www.meetup.com/hbaseusergroup/events/82791572/">HBase User Group Meetup</a> at Wize Commerce in San Mateo.</p>
<p>October 25th, 2012 <a href="http://www.meetup.com/HBase-NYC/events/81728932/">Strata/Hadoop World HBase Meetup.</a> in NYC</p>
<p>September 11th, 2012 <a href="http://www.meetup.com/hbaseusergroup/events/80621872/">Contributor's Pow-Wow at HortonWorks HQ.</a></p>
<p>August 8th, 2012 <a href="http://www.apache.org/dyn/closer.cgi/hbase/">HBase 0.94.1 is available for download</a></p>
<p>August 8th, 2012 <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Apache HBase 0.94.1 is available for download</a></p>
<p>June 15th, 2012 <a href="http://www.meetup.com/hbaseusergroup/events/59829652/">Birds-of-a-feather</a> in San Jose, day after <a href="http://hadoopsummit.org">Hadoop Summit</a></p>
<p>May 23rd, 2012 <a href="http://www.meetup.com/hackathon/events/58953522/">HackConAthon</a> in Palo Alto</p>
<p><small><a href="old_news.html">Old News</a></small></p>
</section>
</body>
</document>

View File

@ -18,14 +18,14 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
HBase Metrics
Apache HBase (TM) Metrics
</title>
</properties>
<body>
<section name="Introduction">
<p>
HBase emits Hadoop <a href="http://hadoop.apache.org/core/docs/current/api/org/apache/hadoop/metrics/package-summary.html">metrics</a>.
Apache HBase (TM) emits Hadoop <a href="http://hadoop.apache.org/core/docs/current/api/org/apache/hadoop/metrics/package-summary.html">metrics</a>.
</p>
</section>
<section name="Setup">
@ -138,7 +138,7 @@ export HBASE_REGIONSERVER_OPTS="$HBASE_JMX_OPTS -Dcom.sun.management.jmxremote.p
</section>
<section name="Understanding HBase Metrics">
<p>
For more information on understanding HBase metrics, see the <a href="book.html#hbase_metrics">metrics section</a> in the HBase Reference Guide.
For more information on understanding HBase metrics, see the <a href="book.html#hbase_metrics">metrics section</a> in the Apache HBase Reference Guide.
</p>
</section>
</section>

View File

@ -22,7 +22,7 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
Old News
Old Apache HBase (TM) News
</title>
</properties>
<body>
@ -31,29 +31,29 @@
<p>March 27th, 2012 <a href="http://www.meetup.com/hbaseusergroup/events/56021562/">Meetup @ StumbleUpon</a> in San Francisco</p>
<p>January 19th, 2012 <a href="http://www.meetup.com/hbaseusergroup/events/46702842/">Meetup @ EBay</a></p>
<p>January 23rd, 2012 HBase 0.92.0 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>December 23rd, 2011 HBase 0.90.5 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>January 23rd, 2012 Apache HBase 0.92.0 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>December 23rd, 2011 Apache HBase 0.90.5 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>November 29th, 2011 <a href="http://www.meetup.com/hackathon/events/41025972/">Developer Pow-Wow in SF</a> at Salesforce HQ</p>
<p>November 7th, 2011 <a href="http://www.meetup.com/hbaseusergroup/events/35682812/">HBase Meetup in NYC (6PM)</a> at the AppNexus office</p>
<p>August 22nd, 2011 <a href="http://www.meetup.com/hbaseusergroup/events/28518471/">HBase Hackathon (11AM) and Meetup (6PM)</a> at FB in PA</p>
<p>June 30th, 2011 <a href="http://www.meetup.com/hbaseusergroup/events/20572251/">HBase Contributor Day</a>, the day after the <a href="http://developer.yahoo.com/events/hadoopsummit2011/">Hadoop Summit</a> hosted by Y!</p>
<p>June 8th, 2011 <a href="http://berlinbuzzwords.de/wiki/hbase-workshop-and-hackathon">HBase Hackathon</a> in Berlin to coincide with <a href="http://berlinbuzzwords.de/">Berlin Buzzwords</a></p>
<p>May 19th, 2011 HBase 0.90.3 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>April 12th, 2011 HBase 0.90.2 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>May 19th, 2011 Apache HBase 0.90.3 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>April 12th, 2011 Apache HBase 0.90.2 released. <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Download it!</a></p>
<p>March 21st, <a href="http://www.meetup.com/hackathon/events/16770852/">HBase 0.92 Hackathon at StumbleUpon, SF</a></p>
<p>February 22nd, <a href="http://www.meetup.com/hbaseusergroup/events/16492913/">HUG12: February HBase User Group at StumbleUpon SF</a></p>
<p>December 13th, <a href="http://www.meetup.com/hackathon/calendar/15597555/">HBase Hackathon: Coprocessor Edition</a></p>
<p>November 19th, <a href="http://huguk.org/">Hadoop HUG in London</a> is all about HBase</p>
<p>November 19th, <a href="http://huguk.org/">Hadoop HUG in London</a> is all about Apache HBase</p>
<p>November 15-19th, <a href="http://www.devoxx.com/display/Devoxx2K10/Home">Devoxx</a> features HBase Training and multiple HBase presentations</p>
<p>October 12th, HBase-related presentations by core contributors and users at <a href="http://www.cloudera.com/company/press-center/hadoop-world-nyc/">Hadoop World 2010</a></p>
<p>October 11th, <a href="http://www.meetup.com/hbaseusergroup/calendar/14606174/">HUG-NYC: HBase User Group NYC Edition</a> (Night before Hadoop World)</p>
<p>June 30th, <a href="http://www.meetup.com/hbaseusergroup/calendar/13562846/">HBase Contributor Workshop</a> (Day after Hadoop Summit)</p>
<p>May 10th, 2010: HBase graduates from Hadoop sub-project to Apache Top Level Project </p>
<p>June 30th, <a href="http://www.meetup.com/hbaseusergroup/calendar/13562846/">Apache HBase Contributor Workshop</a> (Day after Hadoop Summit)</p>
<p>May 10th, 2010: Apache HBase graduates from Hadoop sub-project to Apache Top Level Project </p>
<p>Signup for <a href="http://www.meetup.com/hbaseusergroup/calendar/12689490/">HBase User Group Meeting, HUG10</a> hosted by Trend Micro, April 19th, 2010</p>
<p><a href="http://www.meetup.com/hbaseusergroup/calendar/12689351/">HBase User Group Meeting, HUG9</a> hosted by Mozilla, March 10th, 2010</p>
<p>Sign up for the <a href="http://www.meetup.com/hbaseusergroup/calendar/12241393/">HBase User Group Meeting, HUG8</a>, January 27th, 2010 at StumbleUpon in SF</p>
<p>September 8th, 2010: HBase 0.20.0 is faster, stronger, slimmer, and sweeter tasting than any previous HBase release. Get it off the <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Releases</a> page.</p>
<p>September 8th, 2010: Apache HBase 0.20.0 is faster, stronger, slimmer, and sweeter tasting than any previous Apache HBase release. Get it off the <a href="http://www.apache.org/dyn/closer.cgi/hbase/">Releases</a> page.</p>
<p><a href="http://dev.us.apachecon.com/c/acus2009/">ApacheCon</a> in Oakland: November 2-6th, 2009:
The Apache Foundation will be celebrating its 10th anniversary in beautiful Oakland by the Bay. Lots of good talks and meetups including an HBase presentation by a couple of the lads.</p>
<p>HBase at Hadoop World in NYC: October 2nd, 2009: A few of us will be talking on Practical HBase out east at <a href="http://www.cloudera.com/hadoop-world-nyc">Hadoop World: NYC</a>.</p>

View File

@ -22,7 +22,7 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
Running HBase in pseudo-distributed mode
Running Apache HBase (TM) in pseudo-distributed mode
</title>
</properties>

View File

@ -22,13 +22,13 @@
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>
HBase Replication
Apache HBase (TM) Replication
</title>
</properties>
<body>
<section name="Overview">
<p>
HBase replication is a way to copy data between HBase deployments. It
The replication feature of Apache HBase (TM) provides a way to copy data between HBase deployments. It
can serve as a disaster recovery solution and can contribute to provide
higher availability at the HBase layer. It can also serve more practically;
for example, as a way to easily copy edits from a web-facing cluster to a "MapReduce"
@ -36,7 +36,7 @@
automatically.
</p>
<p>
The basic architecture pattern used for HBase replication is (HBase cluster) master-push;
The basic architecture pattern used for Apache HBase replication is (HBase cluster) master-push;
it is much easier to keep track of whats currently being replicated since
each region server has its own write-ahead-log (aka WAL or HLog), just like
other well known solutions like MySQL master/slave replication where
@ -74,15 +74,15 @@
of replication on the slave clusters by relying on randomization.
</p>
<p>
As of version 0.92 HBase supports master/master and cyclic replication as
well as replication to multiple slaves.
As of version 0.92, Apache HBase supports master/master and cyclic
replication as well as replication to multiple slaves.
</p>
<img src="images/replication_overview.png"/>
</section>
<section name="Enabling replication">
<p>
The guide on enabling and using cluster replication is contained
in the API documentation shipped with your HBase distribution.
in the API documentation shipped with your Apache HBase distribution.
</p>
<p>
The most up-to-date documentation is
@ -98,7 +98,7 @@
</p>
<section name="Normal processing">
<p>
The client uses a HBase API that sends a Put, Delete or ICV to a region
The client uses an API that sends a Put, Delete or ICV to a region
server. The key values are transformed into a WALEdit by the region
server and is inspected by the replication code that, for each family
that is scoped for replication, adds the scope to the edit. The edit

View File

@ -16,11 +16,11 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>Other HBase Resources</title>
<title>Other Apache HBase (TM) Resources</title>
</properties>
<body>
<section name="Other HBase Resources">
<section name="Other Apache HBase Resources">
<section name="Books">
<section name="HBase: The Definitive Guide">
<p><a href="http://shop.oreilly.com/product/0636920014348.do">HBase: The Definitive Guide <i>Random Access to Your Planet-Size Data</i></a> by Lars George. Publisher: O'Reilly Media, Released: August 2011, Pages: 556.</p>

View File

@ -16,12 +16,15 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
<properties>
<title>Installing HBase on Windows using Cygwin</title>
<title>Apache HBase&#153; Sponsors</title>
</properties>
<body>
<section name="Sponsors">
<p>The below companies have been gracious enough to provide their commerical tool offerings free of charge to the Apache HBase project.
<p>First off, thanks to <a href="http://www.apache.org/foundation/thanks.html">all who sponsor</a>
our parent, the Apache Software Foundation.
</p>
<p>The below companies have been gracious enough to provide their commerical tool offerings free of charge to the Apache HBase&#153; project.
<ul>
<li>The crew at <a href="http://www.ej-technologies.com/">ej-technologies</a> have
been let us use <a href="http://www.ej-technologies.com/products/jprofiler/overview.html">JProfiler</a> for years now.</li>
@ -31,5 +34,9 @@
</ul>
</p>
</section>
<section name="Sponsoring the Apache Software Foundation">
<p>To contribute to the Apache Software Foundation, a good idea in our opinion, see the <a href="http://www.apache.org/foundation/sponsorship.html">ASF Sponsorship</a> page.
</p>
</section>
</body>
</document>