You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2014/06/10 19:06:53 UTC

svn commit: r1601688 - /accumulo/site/trunk/content/notable_features.mdtext

Author: elserj
Date: Tue Jun 10 17:06:53 2014
New Revision: 1601688

URL: http://svn.apache.org/r1601688
Log:
ACCUMULO-2777 Update notable-features page with information from 1.6.0 release notes.

Modified:
    accumulo/site/trunk/content/notable_features.mdtext

Modified: accumulo/site/trunk/content/notable_features.mdtext
URL: http://svn.apache.org/viewvc/accumulo/site/trunk/content/notable_features.mdtext?rev=1601688&r1=1601687&r2=1601688&view=diff
==============================================================================
--- accumulo/site/trunk/content/notable_features.mdtext (original)
+++ accumulo/site/trunk/content/notable_features.mdtext Tue Jun 10 17:06:53 2014
@@ -63,6 +63,20 @@ documents containing certain words.
 
 When reading rows, there is no requirement that an entire row fits into memory.
 
+### Namespaces
+
+In version 1.6.0, the concept of table "namespaces" was created to allow for logical
+grouping and configuration of Accumulo tables. By default, tables are created in a
+default namespace which is the empty string to preserve the feel for how tables operate
+in previous versions. One application of table namespaces is placing the Accumulo root
+and metadata table in an "accumulo" namespace to denote that these tables are used
+internally by Accumulo.
+
+### Volume support
+
+Accumulo 1.6.0 migrated away from configuration of HDFS by using a single HDFS host and
+directory, to a collection of HDFS URIs (host and path) which allows Accumulo to operate
+over multiple disjoint HDFS instances.
 
 ## Integrity/Availability <a id="integrity"></a>
 
@@ -186,7 +200,16 @@ test against Accumulo. Mock Accumulo is 
 Mini Accumulo cluster is a set of utility code that makes it easy to spin up 
 a local Accumulo instance running against the local filesystem.  Mini Accumulo
 is slower than Mock Accumulo, but its behavior mirrors a real Accumulo 
-instance more closely.  
+instance more closely.
+
+### Accumulo Maven Plugin
+
+Using the Mini Accumulo Cluster in unit and integration tests is a great way for
+developers to test their applications against Accumulo in an environment that is
+much closer to physical deployments than Mock Accumulo provided. Accumulo 1.6.0 also
+introduced a [maven-accumulo-plugin](/release_notes/1.6.0.html#maven-plugin) which
+can be used to start a Mini Accumulo Cluster instance as a part of the Maven
+lifecycle that your application tests can use.
 
 ### Functional Test
 
@@ -255,6 +278,23 @@ concurrent reading and writing.  All of 
 proxy wraps the Accumulo client API with thrift, making this API easily
 available to other languages like Python, Ruby, C++, etc.
 
+### Conditional Mutations
+
+In version 1.6.0, Accumulo introduced [ConditionalMutations][7]
+which allow users to perform efficient, atomic read-modify-write operations on rows. Conditions can
+be defined using on equality checks of the values in a column or the absence of a column. For more
+information on using this feature, users can reference the Javadoc for [ConditionalMutation](/1.6/apidocs/org/apache/accumulo/core/data/ConditionalMutation.html) and
+[ConditionalWriter](/1.6/apidocs/org/apache/accumulo/core/client/ConditionalWriter.html)
+
+### Lexicoders
+
+Common boilerplate code that exists when interacting with Accumulo is the conversion
+of Java objects to lexicographically sorted bytes, e.g. ensure that the byte representation
+of the number 9 sorts before the byte representation of the number 11. Version 1.6.0 introduced
+Lexicoders which have numerous implementations that support for efficient translation from common
+Java primitives to byte arrays and vice versa. These classes can greatly reduce the burden in
+re-implementing common programming mistakes in encoding.
+
 ## Extensible Behaviors <a id="behaviors"></a>
 
 ### Pluggable balancer
@@ -282,6 +322,14 @@ period.
 The plugin that decided which loggers should be assigned to which tablet
 servers is configurable.
 
+### Pluggable compaction strategy
+
+The plugin that decides which files should be chosen for major compaction is now
+configurable. Given certain workloads, it may be known that once data is written,
+it is very unlikely that more data will be written to it, and thus paying the penalty
+to re-write a large file can be avoided. Implementations of this compaction strategy
+can be used to optimize the data that compactions will write.
+
 ## General Administration <a id="admin"></a>
 
 ### Monitor page
@@ -351,6 +399,14 @@ User written iterators are a useful way 
 Before 1.5., users had to copy their iterators to each tablet server.  Starting 
 with 1.5 Accumulo can load iterators from HDFS using Apache commons VFS.
 
+### Encryption
+
+Still a work in progress, Accumulo 1.6.0 introduced encryption at rest (RFiles
+and WriteAheadLogs) and wire encryption (Thrift over SSL) to provide enhance the
+level of security that Accumulo provides. It is still a work in progress because
+the intermediate files created by Accumulo when recovering from a TabletServer
+failure are not encrypted.
+
 ## On-demand Data Management <a id="ondemand_dm"></a>
 
 ### Compactions
@@ -399,3 +455,4 @@ beginning and end of the range are split
 
 [4]: /1.5/accumulo_user_manual.html#_writing_accumulo_clients
 [6]: /1.5/accumulo_user_manual.html#_bulk_ingest
+[7]: /1.6/accumulo_user_manual.html#_conditionalwriter