You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by GitBox <gi...@apache.org> on 2017/12/04 17:29:49 UTC

[GitHub] mikewalch closed pull request #44: ACCUMULO-4750 Created caching documentation

mikewalch closed pull request #44: ACCUMULO-4750 Created caching documentation
URL: https://github.com/apache/accumulo-website/pull/44
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/_docs-2-0/administration/caching.md b/_docs-2-0/administration/caching.md
new file mode 100644
index 0000000..be99cb5
--- /dev/null
+++ b/_docs-2-0/administration/caching.md
@@ -0,0 +1,46 @@
+---
+title: Caching
+category: administration
+order: 11
+---
+
+Accumulo tablet servers have a **block cache** that buffers data in memory to limit reads from disk.
+This caching has the following benefits:
+
+* reduces latency when reading data
+* helps alleviate hotspots in tables
+
+The block cache stores index and data blocks. A typical Accumulo read operation will perform a binary search
+over several index blocks followed by a linear scan of one or more data blocks. Each tablet server
+has its own block cache that is shared by all hosted tablets. Therefore, block caches are only enabled
+for tables where read performance is critical.
+
+## Configuration
+
+While the block cache is enabled by default for the Accumulo metadata tables, it must be enabled
+for all other tables by setting the following table properties to `true`:
+
+* [table.cache.block.enable] - enables data block cache on the table
+* [table.cache.index.enable] - enables index block cache on the table
+
+These properties can be set in the Accumulo shell using the following command:
+
+    config -t mytable -s table.cache.block.enable=true
+
+Or programatically using [TableOperations.setProperty()][tableops]:
+
+```java
+conn.tableOperations().setProperty("mytable", "table.cache.block.enable", "true");
+```
+
+The sizes of the index and data block caches can be changed from their defaults by setting
+the following properties:
+
+* [tserver.cache.data.size]
+* [tserver.cache.index.size]
+
+[table.cache.block.enable]: {{ page.docs_baseurl }}/administration/configuration-properties#table_cache_block_enable
+[table.cache.index.enable]: {{ page.docs_baseurl }}/administration/configuration-properties#table_cache_index_enable
+[tserver.cache.data.size]: {{ page.docs_baseurl }}/administration/configuration-properties#tserver_cache_data_size
+[tserver.cache.index.size]: {{ page.docs_baseurl }}/administration/configuration-properties#tserver_cache_data_size
+[tableops]: {{ page.javadoc_core }}/org/apache/accumulo/core/client/admin/TableOperations.html#setProperty(java.lang.String, java.lang.String, java.lang.String)
diff --git a/_docs-2-0/getting-started/table_configuration.md b/_docs-2-0/getting-started/table_configuration.md
index 6e11b10..60090df 100644
--- a/_docs-2-0/getting-started/table_configuration.md
+++ b/_docs-2-0/getting-started/table_configuration.md
@@ -341,24 +341,8 @@ See the [combiner example][combiner-example] for example code.
 
 ## Block Cache
 
-In order to increase throughput of commonly accessed entries, Accumulo employs a block cache.
-This block cache buffers data in memory so that it doesn't have to be read off of disk.
-The RFile format that Accumulo prefers is a mix of index blocks and data blocks, where the index blocks are used to find the appropriate data blocks.
-Typical queries to Accumulo result in a binary search over several index blocks followed by a linear scan of one or more data blocks.
-
-The block cache can be configured on a per-table basis, and all tablets hosted on a tablet server share a single resource pool.
-To configure the size of the tablet server's block cache, set the following properties:
-
-    tserver.cache.data.size: Specifies the size of the cache for file data blocks.
-    tserver.cache.index.size: Specifies the size of the cache for file indices.
-
-To enable the block cache for your table, set the following properties:
-
-    table.cache.block.enable: Determines whether file (data) block cache is enabled.
-    table.cache.index.enable: Determines whether index cache is enabled.
-
-The block cache can have a significant effect on alleviating hot spots, as well as reducing query latency.
-It is enabled by default for the metadata tables.
+A Block Cache can be enabled on tables to limit reads from disk which can result
+in reduced read latency. Read the [Caching] documentation to learn more.
 
 ## Compaction
 
@@ -653,7 +637,6 @@ losing access to the table. See the [export example](https://github.com/apache/a
 for example code.
 
 [bloom-filter-example]: https://github.com/apache/accumulo-examples/blob/master/docs/bloom.md
-[config]: /docs/{{ page.version }}/config/
 [constraint]: {{ page.javadoc_core }}/org/apache/accumulo/core/constraints/Constraint.html
 [constraints-example]: https://github.com/apache/accumulo-examples/blob/master/docs/contraints.md
 [iterators-user]: {{ page.javadoc_core }}/org/apache/accumulo/core/iterators/user/package-summary.html
@@ -665,3 +648,4 @@ for example code.
 [config-properties]: {{ page.docs_baseurl}}/administration/configuration-properties
 [Scanner]: {{ page.javadoc_core }}/org/apache/accumulo/core/client/Scanner.html
 [BatchScanner]: {{ page.javadoc_core}}/org/apache/accumulo/core/client/BatchScanner.html
+[Caching]: {{ page.docs_baseurl }}/administration/caching


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services