accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject svn commit: r912130 - in /websites/staging/accumulo/trunk/content: ./ notable_features.html
Date Tue, 10 Jun 2014 17:07:08 GMT
Author: buildbot
Date: Tue Jun 10 17:07:08 2014
New Revision: 912130

Staging update by buildbot for accumulo

    websites/staging/accumulo/trunk/content/   (props changed)

Propchange: websites/staging/accumulo/trunk/content/
--- cms:source-revision (original)
+++ cms:source-revision Tue Jun 10 17:07:08 2014
@@ -1 +1 @@

Modified: websites/staging/accumulo/trunk/content/notable_features.html
--- websites/staging/accumulo/trunk/content/notable_features.html (original)
+++ websites/staging/accumulo/trunk/content/notable_features.html Tue Jun 10 17:07:08 2014
@@ -221,6 +221,17 @@ document store. For example wikipedia co
 documents containing certain words.</p>
 <h3 id="large-rows">Large Rows</h3>
 <p>When reading rows, there is no requirement that an entire row fits into memory.</p>
+<h3 id="namespaces">Namespaces</h3>
+<p>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.</p>
+<h3 id="volume-support">Volume support</h3>
+<p>Accumulo 1.6.0 migrated away from configuration of HDFS by using a single HDFS host
+directory, to a collection of HDFS URIs (host and path) which allows Accumulo to operate
+over multiple disjoint HDFS instances.</p>
 <h2 id="integrityavailability-wzxhzdk2wzxhzdk3">Integrity/Availability <a id="integrity"></a></h2>
 <h3 id="master-fail-over">Master fail over</h3>
 <p>Multiple masters can be configured.  Zookeeper locks are used to determine
@@ -313,7 +324,14 @@ test against Accumulo. Mock Accumulo is 
 <p>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.  </p>
+instance more closely.</p>
+<h3 id="accumulo-maven-plugin">Accumulo Maven Plugin</h3>
+<p>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 <a href="/release_notes/1.6.0.html#maven-plugin">maven-accumulo-plugin</a>
+can be used to start a Mini Accumulo Cluster instance as a part of the Maven
+lifecycle that your application tests can use.</p>
 <h3 id="functional-test">Functional Test</h3>
 <p>Small, system-level tests of basic Accumulo features run in a test harness,
 external to the build and unit-tests.  These tests start a complete Accumulo
@@ -364,6 +382,19 @@ client code locates tablets, retries in 
 concurrent reading and writing.  All of this is written in Java.  The thrift
 proxy wraps the Accumulo client API with thrift, making this API easily
 available to other languages like Python, Ruby, C++, etc.</p>
+<h3 id="conditional-mutations">Conditional Mutations</h3>
+<p>In version 1.6.0, Accumulo introduced <a href="/1.6/accumulo_user_manual.html#_conditionalwriter">ConditionalMutations</a>
+which allow users to perform efficient, atomic read-modify-write operations on rows. Conditions
+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 <a href="/1.6/apidocs/org/apache/accumulo/core/data/ConditionalMutation.html">ConditionalMutation</a>
+<a href="/1.6/apidocs/org/apache/accumulo/core/client/ConditionalWriter.html">ConditionalWriter</a></p>
+<h3 id="lexicoders">Lexicoders</h3>
+<p>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
+Java primitives to byte arrays and vice versa. These classes can greatly reduce the burden
+re-implementing common programming mistakes in encoding.</p>
 <h2 id="extensible-behaviors-wzxhzdk10wzxhzdk11">Extensible Behaviors <a id="behaviors"></a></h2>
 <h3 id="pluggable-balancer">Pluggable balancer</h3>
 <p>Users can provide a balancer plugin that decides how to distribute tablets
@@ -384,6 +415,12 @@ period.</p>
 <h3 id="pluggable-logger-assignment-strategy">Pluggable logger assignment strategy</h3>
 <p>The plugin that decided which loggers should be assigned to which tablet
 servers is configurable.</p>
+<h3 id="pluggable-compaction-strategy">Pluggable compaction strategy</h3>
+<p>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.</p>
 <h2 id="general-administration-wzxhzdk12wzxhzdk13">General Administration <a id="admin"></a></h2>
 <h3 id="monitor-page">Monitor page</h3>
 <p>A simple web server provides basic information about the system health and
@@ -435,6 +472,12 @@ files.</p>
 <p>User written iterators are a useful way to manipulate data in data in Accumulo.

 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.</p>
+<h3 id="encryption">Encryption</h3>
+<p>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.</p>
 <h2 id="on-demand-data-management-wzxhzdk16wzxhzdk17">On-demand Data Management <a
 <h3 id="compactions">Compactions</h3>
 <p>Ability to force tablets to compact to one file. Even tablets with one file are

View raw message