Apache Accumulo is a sorted, distributed key-value store based on Google's Bigtable, HDFS and Apache Zookeeper. First designed and developed by a team in NSA, Accumulo's mission is to support big data storing and processing, but at the same time enforce fine-grained data access control. In particular, the team in NSA extends Bigtable in a way that Accumulo can control the access of individual data elements. Accumulo is currently an open source project under Apache v2 license.
2006
Google publishes "Bigtable: A Distributed Storage System for Structured Data." In the same year, Yahoo! releases an open source version named Apache Hadoop.
January 2008
In order to solve the issue of storing and processing large amounts of data with different sensitivity level, a team of computer scientists and mathematicians in NSA are evaluating various big data technologies.
July 2008
The NSA team decides to begin a new Bigtable implementation.
September 2011
Accumulo becomes a public open source incubator project hosted by Apache Software Foundation.
March 2012
Version 1.3.5 is released. This is the first publicly available version.
April 2012
Version 1.4 is released.
May 2013
Version 1.5 is released. This version incorporates Thrift proxy and table import/export into Accumulo.
May 2014
Version 1.6 is released.
Accumulo emploies two compression techniques. The first one is running GZip or LZO on blocks of data that are stored on disk. The second one is relative-key encoding, which allows the common prefixes of keys to be stored only once, and the following keys only need to store the difference.
Custom API Command-line / Shell
Accumulo provides the user with two ways to interact with the system. The first one is to use a client. It supports C++, Python, Java and Ruby. It also has a simple shell that allows the user to examine the content, update configuration settings, insert/update/delete values, etc.
https://github.com/apache/accumulo
https://accumulo.apache.org/docs/2.x/getting-started/quickstart
US National Security Agency
2008