MapR-DB as a Document Database

MapR-DB supports OJAI documents as a native data store. An OJAI document is a tree of fields and these documents are stored in JSON tables.

MapR-DB as a document database, implements OJAI documents in MapR-DB JSON tables.
  • MapR-DB JSON tables use the OJAI data model and support the OJAI API.
  • Documents are JSON-like but stored in an efficient binary form, not as plain ASCII text. .
  • With JSON tables, each value has a unique key (_id) and fields in the document are identified by paths for example, address.street).
    Note: Each JSON document can have different fields.

With OJAI document support, you can:

  • Store data that is hierarchical and nested, and that evolves over time.
  • Read and write individual document fields, subsets of fields, or whole documents from and to disk. To update individual fields or subsets of fields, there is no need to read entire documents, modify them, and then write the modified documents to disk.
  • Build Java applications with the MapR-DB JSON API library, which is an implementation of the Open JSON Application Interface (OJAI), a Java API library for easily managing complex, evolving, hierarchical data. You can use many more data types than the standard types that JSON supports, create complex queries, and access JSON table documents without connection or configuration objects. This allows large-scale applications to manage JSON-like documents.
  • Filter query results within MapR-DB before results are returned to client applications.
  • Run client applications on Linux, OS X, and Windows systems.
  • Perform complex data analysis on your JSON data with Apache Drill or other analytical tools in real time without having to copy data to another cluster.
  • Scale your data to span thousands of nodes.
  • Control read and write access to single fields and subsets of fields within a JSON table by using access-control expressions (ACEs).
  • Control the disk layout of single fields and subdocuments within JSON tables.