You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by nd...@apache.org on 2014/08/20 21:58:15 UTC
[2/2] git commit: HBASE-11752 Document blockcache prefetch option
(Misty Stanley-Jones)
HBASE-11752 Document blockcache prefetch option (Misty Stanley-Jones)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/7d48fa69
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/7d48fa69
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/7d48fa69
Branch: refs/heads/branch-1
Commit: 7d48fa698bccfa18d3ae9b27f2b2809eaddd854b
Parents: 8670fb3
Author: Nick Dimiduk <nd...@apache.org>
Authored: Wed Aug 20 12:56:43 2014 -0700
Committer: Nick Dimiduk <nd...@apache.org>
Committed: Wed Aug 20 12:57:20 2014 -0700
----------------------------------------------------------------------
src/main/docbkx/book.xml | 14 ++++++++------
src/main/docbkx/performance.xml | 31 +++++++++++++++++++++++++++++++
2 files changed, 39 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/7d48fa69/src/main/docbkx/book.xml
----------------------------------------------------------------------
diff --git a/src/main/docbkx/book.xml b/src/main/docbkx/book.xml
index 163bea3..675564d 100644
--- a/src/main/docbkx/book.xml
+++ b/src/main/docbkx/book.xml
@@ -2134,12 +2134,14 @@ rs.close();
</section>
<section xml:id="cache.configurations">
<title>General Cache Configurations</title>
- <para>Apart from the cache implementaiton itself, you can set some general
- configuration options to control how the cache performs.
- See <link
- xlink:href="http://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/io/hfile/CacheConfig.html" />.
- After setting any of these options, restart or rolling restart your cluster for the
- configuration to take effect. Check logs for errors or unexpected behavior.</para>
+ <para>Apart from the cache implementation itself, you can set some general configuration
+ options to control how the cache performs. See <link
+ xlink:href="http://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/io/hfile/CacheConfig.html"
+ />. After setting any of these options, restart or rolling restart your cluster for the
+ configuration to take effect. Check logs for errors or unexpected behavior.</para>
+ <para>See also <xref linkend="blockcache.prefetch"/>, which discusses a new option
+ introduced in <link xlink:href="https://issues.apache.org/jira/browse/HBASE-9857"
+ >HBASE-9857</link>.</para>
</section>
<section
xml:id="block.cache.design">
http://git-wip-us.apache.org/repos/asf/hbase/blob/7d48fa69/src/main/docbkx/performance.xml
----------------------------------------------------------------------
diff --git a/src/main/docbkx/performance.xml b/src/main/docbkx/performance.xml
index 58557db..599677c 100644
--- a/src/main/docbkx/performance.xml
+++ b/src/main/docbkx/performance.xml
@@ -217,6 +217,37 @@
A memory setting for the RegionServer process.
</para>
</section>
+ <section xml:id="blockcache.prefetch">
+ <title>Prefetch Option for Blockcache</title>
+ <para><link xlink:href="https://issues.apache.org/jira/browse/HBASE-9857">HBASE-9857</link>
+ adds a new option to prefetch HFile contents when opening the blockcache, if a columnfamily
+ or regionserver property is set. This option is available for HBase 0.98.3 and later. The
+ purpose is to warm the blockcache as rapidly as possible after the cache is opened, using
+ in-memory table data, and not counting the prefetching as cache misses. This is great for
+ fast reads, but is not a good idea if the data to be preloaded will not fit into the
+ blockcache. It is useful for tuning the IO impact of prefetching versus the time before all
+ data blocks are in cache. </para>
+ <para>To enable prefetching on a given column family, you can use HBase Shell or use the
+ API.</para>
+ <example>
+ <title>Enable Prefetch Using HBase Shell</title>
+ <screen>hbase> create 'MyTable', { NAME => 'myCF', PREFETCH_BLOCKS_ON_OPEN => 'true' }</screen>
+ </example>
+ <example>
+ <title>Enable Prefetch Using the API</title>
+ <programlisting language="java">
+// ...
+HTableDescriptor tableDesc = new HTableDescriptor("myTable");
+HColumnDescriptor cfDesc = new HColumnDescriptor("myCF");
+cfDesc.setPrefetchBlocksOnOpen(true);
+tableDesc.addFamily(cfDesc);
+// ...
+ </programlisting>
+ </example>
+ <para>See the API documentation for <link
+ xlink:href="https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/io/hfile/CacheConfig.html"
+ >CacheConfig</link>.</para>
+ </section>
<section xml:id="perf.rs.memstore.size">
<title><varname>hbase.regionserver.global.memstore.size</varname></title>
<para>See <xref linkend="hbase.regionserver.global.memstore.size"/>.