Uses for Secondary Indexes

Describes typical use cases that can benefit from secondary indexes.

Operational Analytics

Operational analytics require highly scalable, highly responsive, interactive, user-facing applications.

Application developers can use OJAI API to build richer and more interactive applications. This enables users to retrieve data on a variety of columns in MapR-DB JSON tables in a flexible way. In addition to processing queries, OJAI also enables them to sort on columns and paginate or restrict the results. The applications can be operational applications or operational analytical applications. For both categories, the level of user interactivity and query complexity is high. Sample applications include Customer 360, expense reporting systems, game management, product catalogs, and a variety of domain-specific analytics as a service applications.

Operational BI and Dashboards

Typical analytical workloads query snapshots of read-only data. Querying against MapR-DB using Drill SQL enables these applications to get insights into the latest, changing data. Moreover, operational analytical queries usually access only a subset of fields from a table, often aggregating the data on a variety of dimensions and time ranges. Secondary indexes are extremely useful in these use cases. They improve the performance of well known query patterns.

Self-service Data Exploration

Users want to use their favorite BI reporting tool to issue ad-hoc queries against MapR-DB JSON tables. They can achieve a simple, high performing data exploration experience using MapR-DB and Drill SQL, while leveraging the capabilities of both. Using the MapR-DB document model provides end to end JSON flexibility at the data storage level. Using Drill SQL provides dynamic schema discovery.