You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by kt...@apache.org on 2011/10/25 21:27:02 UTC

svn commit: r1188873 - in /incubator/accumulo/trunk/docs/src/user_manual: build.sh chapters/table_configuration.tex

Author: kturner
Date: Tue Oct 25 19:27:02 2011
New Revision: 1188873

URL: http://svn.apache.org/viewvc?rev=1188873&view=rev
Log:
ACCUMULO-68 added documentation for clone table to the user manual

Modified:
    incubator/accumulo/trunk/docs/src/user_manual/build.sh
    incubator/accumulo/trunk/docs/src/user_manual/chapters/table_configuration.tex

Modified: incubator/accumulo/trunk/docs/src/user_manual/build.sh
URL: http://svn.apache.org/viewvc/incubator/accumulo/trunk/docs/src/user_manual/build.sh?rev=1188873&r1=1188872&r2=1188873&view=diff
==============================================================================
--- incubator/accumulo/trunk/docs/src/user_manual/build.sh (original)
+++ incubator/accumulo/trunk/docs/src/user_manual/build.sh Tue Oct 25 19:27:02 2011
@@ -20,7 +20,9 @@ bin=`dirname "$0"`
 bin=`cd "$bin"; pwd`
 cd $bin
 
-test -x /usr/bin/pdflatex || exit 0
+if [ "`which pdflatex | wc -l`" -eq 0 ]; then
+    exit 0
+fi
 
 if [ -f ../../accumulo_user_manual.pdf ]
 then

Modified: incubator/accumulo/trunk/docs/src/user_manual/chapters/table_configuration.tex
URL: http://svn.apache.org/viewvc/incubator/accumulo/trunk/docs/src/user_manual/chapters/table_configuration.tex?rev=1188873&r1=1188872&r2=1188873&view=diff
==============================================================================
--- incubator/accumulo/trunk/docs/src/user_manual/chapters/table_configuration.tex (original)
+++ incubator/accumulo/trunk/docs/src/user_manual/chapters/table_configuration.tex Tue Oct 25 19:27:02 2011
@@ -379,7 +379,7 @@ distribution of the row information is n
 different split points.  Now ingest and query can proceed on 4 nodes
 which can improve performance.
 
-\section{Merging tables}
+\section{Merging tablets}
 
 Over time, a table can get very large, so large that it has hundreds
 of thousands of split points.  Once there are enough tablets to spread
@@ -449,7 +449,7 @@ For example ``20110823-15:20:25.013'' mi
 date and time.  In some cases, we might like to delete rows based on
 this date, say to remove all the data older than the current year.
 Accumulo supports a delete range operation which can efficiently
-remove data between two rows.  For example:
+removes data between two rows.  For example:
 
 \small
 \begin{verbatim}
@@ -473,4 +473,48 @@ unless you provide the ``--force'' optio
 Range deletion is implemented using splits at the given start/end
 positions, and will affect the number of splits in the table.
 
+\section{Cloning Tables}
+
+A new table can be created that points to an existing table's data.  This is a
+very quick metadata operation, no data is actually copied.  The cloned table
+and the source table can change independently after the clone operation.  One
+use case for this feature is testing.  For example to test a new filtering
+iterator, clone the table, add the filter to the clone, and force a major
+compaction.  To perform a test on less data, clone a table and then use delete
+range to efficiently remove a lot of data from the clone.  Another use case is
+generating a snapshot to guard against human error.  To create a snapshot,
+clone a table and then disable write permissions on the clone.
+
+The clone operation will point to the source table's files.  This is why the
+flush option is present and is enabled by default in the shell.  If the flush
+option is not enabled, then any data the source table currently has in memory
+will not exist in the clone.
+
+A cloned table copies the configuration of the source table.  However the
+permissions of the source table are not copied to the clone.  After a clone is
+created, only the user that created the clone can read and write to it.
+
+In the following example we see that data inserted after the clone operation is
+not visible in the clone.
+
+\small
+\begin{verbatim}
+root@a14> createtable people
+root@a14 people> insert 890435 name last Doe
+root@a14 people> insert 890435 name first John
+root@a14 people> clonetable people test  
+root@a14 people> insert 890436 name first Jane
+root@a14 people> insert 890436 name last Doe  
+root@a14 people> scan
+890435 name:first []    John
+890435 name:last []    Doe
+890436 name:first []    Jane
+890436 name:last []    Doe
+root@a14 people> table test
+root@a14 test> scan
+890435 name:first []    John
+890435 name:last []    Doe
+root@a14 test> 
+\end{verbatim}
+\normalsize