Accumulo: Application Development, Table Design, and Best Practices by Aaron Cordova & Billie Rinaldi & Michael Wall

Accumulo: Application Development, Table Design, and Best Practices by Aaron Cordova & Billie Rinaldi & Michael Wall

Author:Aaron Cordova & Billie Rinaldi & Michael Wall [Cordova, Aaron]
Language: eng
Format: azw3, pdf
Publisher: O'Reilly Media
Published: 2015-06-30T16:00:00+00:00


Secondary Indexing

Applications that use a single table and employ a simple access pattern are among the most scalable, consistent, and fast. This type of design can serve in a wide variety of applications. When storing records in an Accumulo table, we can store them in sorted order but can only sort them one way.

In the previous example we stored emails in order of the recipient’s email address, then by the date, and finally by a unique email ID. In this case the record ID used is a concatenation of those three elements. If we want to look up records based on other criteria, we have to scan the entire table. For these other access patterns, building a secondary index can provide a solution. These applications still need to minimize the work done at query time, to ensure high performance as the amount of data and the number of concurrent users increase.

Secondary indexes are tables that allow users to quickly identify the record IDs that contain a value from a particular field. Those record IDs can then be used to retrieve the full record from the primary table containing records. We’ll next discuss two types of secondary indexes: a term-partitioned index and a document-partitioned index.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.