MapR Database and Apps
This section contains information about developing client applications for JSON and key-value tables.
Why use MapR Database?
From a developer's point-of-view, MapR Database provides the following capabilities:
- Extreme scale for CRUD operations: Enabled by the integration of MapR Database with the MapR Data Platform Filesystem, CRUD operations are extremely fast and efficient.
- Flexible data model: MapR Database can be used as both a document database and a column-oriented database. So if the content structure changes, the applications do not need to be re-written.
- Rich query: Integration with Apache Drill for MapR Database provides a low-latency distributed query engine for large-scale datasets, including structured and semi-structured/nested data.
- Integration with Apache Spark: MapR Database provides MapR Database Connectors for Apache Spark that allow you to access MapR Database tables through Spark applications.
- Strong data consistency: Consistently fast response with strong data consistency with row/document level ACID transactions and in-memory database options for faster speeds.
MapR Database JSON provides additional benefits:
- High performance via Secondary Indexes: No memory copying. No need to retrieve the full document to make updates due the log-based database architecture. No application changes needed to leverage secondary indexes for efficient query execution.
- Easy application development: JSON constructs such as maps, arrays, and data types are supported natively.
- Language-specific client APIs: Java, Python, and Node.js client APIs
How Do I Get Started with MapR Database JSON?
The following diagram illustrates an end-to-end flow associated with getting started with MapR Database JSON.
- MapR Sandbox
-
The MapR Sandbox is a virtual machine (VM) that runs a single node MapR cluster. Sandbox Tutorial for JSON describes how to use that VM with MapR Database JSON to do the following:
- Install and configure MapR Database in the VM
- Run a sample Java OJAI application
- Use MapR Database Shell to perform simple MapR Database JSON operations
- Container for Developers
-
MapR Container for Developers is a Docker container that runs a single node cluster. Using MapR Database JSON: Getting Started, you can do the following:
- Set up the Docker container
- Import data into MapR Database JSON tables
- Use MapR Database Shell to query, insert, and update JSON documents in MapR Database JSON tables
- Use Drill to query MapR Database JSON tables
- Run sample Java OJAI applications
- Run a sample Spark application using the MapR Database OJAI Connector for Apache Spark
Useful MapR Database JSON Developer Resources
Getting Started and Examples | Tools, Utilities, and Applications | General (Blogs, etc) | API Details |
---|---|---|---|
Managing JSON Tables - Examples creating, listing, and deleting MapR Database JSON tables | maprcli and REST API Syntax | Data Modeling Guidelines for NoSQL JSON Document Databases |
MapR Database JSON Client API NOTE Beginning with core version 6.0,
the MapR Database
Table interface in the MapR Database JSON Client API is deprecated
and replaced by the DocumentStore interface in
the OJAI API library. See the next row for details on that
API. |
Managing JSON Documents - Examples performing CRUD operations on JSON documents in MapR Database JSON tables | Utilities for MapR Database JSON Tables | App development with OJAI | Java OJAI Client API |
Querying JSON Documents - Examples querying JSON documents in MapR Database JSON tables | Apache Drill | How to Build Applications on a NoSQL Document Database and Perform Analytics in Place | Node.js OJAI Client API |
Getting Started with the MapR Database JSON REST API | Understanding the MapR Database OJAI Connector for Spark | Python OJAI Client API | |
Getting Started with the Node.js OJAI Client | |||
Getting Started with the Python OJAI Client | |||
Tutorials - Instructions and code to build a sample web application using MapR Database JSON |
How Do I Get Started with MapR Database Binary?
The following diagram illustrates an end-to-end flow associated with getting started with MapR Database Binary.
Useful MapR Database Binary Developer Resources
Getting Started and Examples | Tools, Utilities, and Applications | General (Blogs, etc) |
---|---|---|
MapR Database Sample C Application - C application example for binary tables | maprcli and REST API Syntax | High Performance C APIS on MapR Database |
Utilities for MapR Database Binary Tables | ||
Apache Drill | ||
MapR Database Binary Connector for Apache Spark |