Aerospike Document Database

Document Database storage for JSON and Java

The real-time document database that scales from gigabytes to petabytes. Aerospike Document Database offers support for JSON document models and Java programming models, including JSONPath query support to store, search, and manage complex data sets and workloads.

Download solution brief

Real-time computing challenges for document stores in online gaming

Aerospike Document Database provides comprehensive JSON document database capabilities including the storage, processing, and querying of JSON document data in real time and at scales that have previously been unavailable in other databases and data platforms.

As an integral part of the Aerospike real-time data platform, Aerospike as a document database uses the Aerospike Document API to provide developers a programmatic way to create, store, query, and manipulate JSON document data. For background, read this blog on the Aerospike Document API.

Document Database storage

Document Database Service

Aerospike Document Database enables developers to create and store JSON document data as an Aerospike Collection Data Type (CDT) object that can then be accessed, queried, and modified using a JSONPath syntax.

The CDT API facilitates list, map, and now document-oriented operations within objects thereby reducing network overhead and client-side computation. CDT operations are highly efficient and add little overhead to read or write calls.

Document indexing and Aerospike Expressions

Secondary indexes

Developers wishing to take advantage of Aerospike Document Database will no doubt wish to take advantage of the unparalleled performance and scalability of the Aerospike platform. One of the most powerful technologies for achieving real-time performance and petabyte scaling is the use of set indexes and secondary indexes. Indexes are used to avoid unnecessary scanning of the entire database for your queries. All Aerospike index operations are available for Document Database operations including the enhanced fine-grained secondary indexes.

Aerospike Document Database also supports the powerful Aerospike Expressions functions. Expressions are a domain-specific language for querying and manipulating record metadata and data. Queries using Expressions can perform fast and efficient value-based searches on documents and other datasets in Aerospike.

Document Database Query using JSONPath

JSONPath query example

The CDT API contains all the primitives required to build the Aerospike Document API using the well known JSONPath standard which is modeled on the W3C XPath standard for XML. Like XPath, JSONPath supports CRUD operations via filesystem-like navigation syntax.

JSONPath queries enable developers to query documents stored in Aerospike bins using JSONPath operators, functions and filters. Developers provide a JSONPath query to Aerospike, specifying the relevant record key and the bin name that stores the document, and they retrieve the data matching the query. For more information on JSONPath queries, please refer to this blog.

View the JSONPath repository on GitHub