retrieving the object associated with a particular bucket / key • Support for retrieving all of the keys associated with a particular bucket Object/Key Operations Collecting, Parsing, and Storing Data • Distributed, full-text search engine with an easy-to-use query language, a Solr-like HTTP interface and a Apache Lucene-style query syntax • Support for a wide variety of mime types, including JSON, plain text, XML and Erlang) • Ideal for indexing JSON documents, as indexes are built automatically from a schema. Riak Search Seeking Reverse Lookups on Data Stored • Provides the ability, at write time, to tag an object stored in Riak with one or more values (key/value metadata), which can then be queried • Useful for finding data that is based on terms other than an objects’ bucket/key pair, or for adding metadata values to a binary object or opaque blob Secondary Indexes (Riak 2i) Processing a Large Dataset • Provides the general ability to analyze and aggregate data in phases with data locality • Features Javascript support and Erlang for performance benefit MapReduce Riak Search and 2I Query Results Can be Used as an Input to MapReduce