The multi-model database provides an elegant solution to the challenge of heterogeneous data. This new class of database naturally supports multiple data models in their organic form within a single, integrated backend, and uses data and query standards appropriate to each model.
Integrated data requires integrated indexes. Typically, you have to choose which indexes get created for each data type. On the other hand, a true multi-model database has an integrated suite of indexes that allow fast data access immediately after data is loaded. A multi-model database works more like Google—Google doesn’t require web pages to fit a certain format, it just indexes them. With a multi-model database, users can quickly search data across all data models with a single, composable query.
Queries are extended or combined to provide seamless query across all the supported data models. Indexing, parsing, and processing standards appropriate to the data model are included in the core database product.
You get a unified platform that reduces the footprint for backup and recovery, development and testing, and search. You also get to maintain one security model.
You get the flexibility and power to choose the right model for your data. For example, with a document and triple store combined, you can use JSON for objects (e.g., customer, stock trade), XML for text (e.g., blog post, news article), and RDF triples for facts and relationships.
A distributed computing architecture in which each node is independent and self-sufficient, and there is neither a single point of contention across the system, nor a single point of failure. More specifically, none of the nodes share memory or disk storage.
In the illustration, you see a document describing a person: Jen, and some triples that describe facts and relationships about Jen. And, if you wanted to represent Jen in a relational view, you can do that too. In MarkLogic, this data would be stored as documents, but it’s easy to create a relational view on top of documents for the purposes of querying with SQL.
The best way to manage entities and relationships is with a multi-model database that combines the benefits of a document store and triple store. Documents are for entities. RDF triples are for relationships. This approach is proven to be faster and more effective than using a relational model (or using a document-only or triples-only approach). Want to get a deeper understanding of how to succeed at data integration by managing entities and relationships in your data?
You should be alert to multi-model imposters, as many vendors are falsely advertising multi-model databases when in fact they are just multi-tools bolted together without a unified storage or query layer.
True multi-model databases require the ability to store multiple types of data in the same system with unified data governance, management and access. A “multi-query” database is not comparable. If you’re storing it, you must be able to search it. The database should handle all the different data models, and index them so you can run combination queries of text, SPARQL, XQuery, etc. against them — composability of search is crucial.
A multi-model database combines the benefits of two databases into one (e.g., document database and graph database, or Semantics) and provides a unified query interface. MarkLogic is a leading multi-model database that uses this approach, and it has been proven to be very effective for integrating data from silos. Customers are able to get the flexibility of a document model for their core data, while storing their metadata using RDF triples. This not only helps with integrating data faster and easier, it also improves data governance.