0% found this document useful (0 votes)
34 views

Task 2 Multi-Model Database Systems Edt

This document discusses multi-model databases, which allow organizations to store and manage various types of data, including structured, semi-structured, and unstructured data, in a unified manner. It explores the fields of application and use cases of multi-model databases, including enterprise data management, content management systems, the Internet of Things, geospatial data, and social media. It also examines some of the challenges of multi-model databases, such as schema evolution, query optimization, data integration, and security/access control. Finally, it reviews some state-of-the-art approaches to multi-model databases like polyglot persistence, document-relational mapping, native multi-model databases, schema-less approaches, and

Uploaded by

sankarapos47
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Task 2 Multi-Model Database Systems Edt

This document discusses multi-model databases, which allow organizations to store and manage various types of data, including structured, semi-structured, and unstructured data, in a unified manner. It explores the fields of application and use cases of multi-model databases, including enterprise data management, content management systems, the Internet of Things, geospatial data, and social media. It also examines some of the challenges of multi-model databases, such as schema evolution, query optimization, data integration, and security/access control. Finally, it reviews some state-of-the-art approaches to multi-model databases like polyglot persistence, document-relational mapping, native multi-model databases, schema-less approaches, and

Uploaded by

sankarapos47
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Contents

Introduction:..................................................................................................................................................2
What Is a Multi-Model Database?...........................................................................................................2
1. Fields of Application and Use Cases:........................................................................................................3
Multi-Model Database Use Case Examples.................................................................................................4
2.1. Storing and Managing Multiple Data Sources...................................................................................4
2.2. Hybrid Data Environments................................................................................................................4
2.3. Data Centralization...........................................................................................................................4
3. Challenges:..............................................................................................................................................5
3.1. Schema Evolution:............................................................................................................................5
3.2. Query Optimization:.........................................................................................................................5
3.3. Data Integration:.........................................................................................................................6
3.4. Security and Access Control:.............................................................................................................6
4. State-of-the-Art Approaches and Techniques:.........................................................................................7
4.1. Polyglot Persistence:.........................................................................................................................7
4.2. Document-Relational Mapping (D-RM):............................................................................................8
4.3. Native Multi-Model Databases:........................................................................................................9
4.4. Schema-Less Approaches:...............................................................................................................10
4.5. Query Languages:...........................................................................................................................10
Conclusion:................................................................................................................................................11
Bibliography...............................................................................................................................................11
Introduction:

Multi-model databases have gained significant popularity in recent years due to their ability to support
multiple data models within a single database system. These databases allow organizations to store and
manage various types of data, including structured, semi-structured, and unstructured data, in a unified
manner. (ChatGPT, 2023)

What Is a Multi-Model Database?


There's been a continuous data explosion that's been taking place for the last two decades. This has
proved to be increasingly beneficial for businesses. Organizations have been forced to devise different
plans to tackle the volume and variety of data, and they've come up with two broad approaches:
polyglot persistence and multi-model databases.

In polyglot persistence, you use a separate database for different types of data storage and usage
patterns. For instance, if you have an eCommerce website, you might need a relational database like
MySQL for transactions, a search engine like Elasticsearch for enabling product discovery, Redis for
maintaining real-time trackers and other databases for other use cases. The major downside of polyglot
persistence is that it adds significant overhead.

The alternative to polyglot persistence is a multi-model database or a database that natively allows you
to store and access data of different types, such as relational, time series, geospatial, key-value and
document. Using multi-model databases can bring a lot of benefits to businesses that deal with
applications and products with various types of data constantly.

Modern SaaS applications create diverse database workloads. They often provide a real-time view of
data over time, interactive analytics to explore recent and historical data, include full text search on
product information and often expose an API. Each of these SaaS application functionalities have
different data write needs, different access patterns and may use different data models.

In recent years, the common practice has been to use a specialized database technology for each of
these data models and workloads types for a SaaS application. Each of those underlying database
technologies are then stitched together to form the data infrastructure layer for the SaaS application.
Multi-model databases offer a simpler alternative to this by reducing the variety of database
technologies needed to serve modern SaaS applications. https://www.singlestore.com/blog/what-is-a-
multi-model-database/

This assignment explores the fields of application and use cases of multi-model databases, the
challenges they present, and state-of-the-art approaches and techniques for their implementation.

1. Fields of Application and Use Cases:


1.1. Enterprise Data Management:

Multi-model databases are widely used in enterprise settings to handle diverse data types such as
customer profiles, product catalogs, transaction records, and more. This flexibility enables organizations
to create comprehensive data repositories that can serve multiple business units simultaneously.

(ChatGPT, 2023)

1.2. Content Management Systems (CMS):

Content management systems often need to manage various types of data, including text, images,
videos, and metadata. Multi-model databases simplify content storage and retrieval, making them
suitable for CMSs and digital asset management systems.

(ChatGPT, 2023)

1.3. Internet of Things (IoT):

IoT applications generate a vast array of data, from sensor readings to device logs. Multi-model
databases can efficiently store and query this mixed data, allowing for real-time analytics and
monitoring.

(ChatGPT, 2023)

1.4. Geospatial Data:

Multi-model databases can handle geospatial data, combining traditional relational data with spatial
information. Use cases include geographic information systems (GIS), location-based services, and
logistics.
1.5. Social Media and User Profiles:

Social media platforms and online services collect diverse user data, including text, images, user
interactions, and preferences. Multi-model databases facilitate the storage and analysis of this
heterogeneous data. (ChatGPT, 2023)

Multi-Model Database Use Case Examples


Use cases help provide an idea of how multi-model databases work. Analyzing practical examples
provide better insight into how multiple models work together in one system.

2.1. Storing and Managing Multiple Data Sources


A typical IT system uses various data sources. The stored information is not always in the same format or
database. Multiple formats create a complex system, making it hard to maintain and search through
data.

Storing data in a multi-model database makes administration easier. Everything is in one database, which
reduces the time needed to store and manage data from different sources.

Extending Model Features

Multi-model databases provide extensions between models. Features from some models help
supplement the shortcomings of other models.

For example, querying data in JSON format using SQL queries is simple. There is no need to adjust the
original data source. Extensibility reduces data processing time and eliminates the need for extract,
transform and load (ETL) systems.

2.2. Hybrid Data Environments


A typical data environment keeps operational data separate from analytical. The data for analysis must
be transformed and stored in a different place from the operational data.

The information duplicates, decreasing data quality. Likewise, the separated space creates maintenance
overhead. Both databases need policy administration as well as backup management.

A multi-model database provides a hybrid approach to data storage. A unified data hub for storing
transactional and extracting analytical data is simpler to maintain.

2.3. Data Centralization


Data within an organization has barriers. While restrictions must exist, this approach prevents utilizing
information within a company.

Multi-model databases store data as-is without the need for transformations. Data centralization
provides valuable insight into existing data, as well as the opportunity for creating new use-cases.

Searching Big Data


Hadoop is exceptional at processing large amounts of diverse data across different models. The main
reason is the speed of receiving, processing, and storing various data. However, the one thing Hadoop
lacks is an efficient search mechanism.

Taking advantage of the Hadoop processing power and combining it with the strength of multi-model
database searches produces a robust system. The process of working with data becomes scalable and
sturdy for big data tasks.

Gaining Data Agility with Multi-Model Databases by Joel Ruisi

https://www.oreilly.com/library/view/gaining-data-agility/9781492032946/ch04.html

3. Challenges:

3.1. Schema Evolution:


Schema evolution is the process of modifying the structure of a database schema over time as new
requirements and data models emerge. It involves changing the schema to accommodate new data
elements or changes to existing ones while preserving the integrity and consistency of the data.

Schema evolution is an important aspect of database management, particularly in environments where


data is constantly changing and evolving. Without schema evolution, databases would quickly become
outdated and unable to meet the needs of the business.

What is Schema Evolution? https://www.macrometa.com/articles/what-is-schema-evolution

Managing diverse data models within a single system can lead to challenges in evolving schemas.
Changes in one data model may impact others, requiring careful schema design and migration strategies.

(ChatGPT, 2023)

3.2. Query Optimization:


Query optimization is a process of defining the most efficient and optimal way and techniques that can
be used to improve query performance based on the rational use of system resources and performance
metrics. The purpose of query tuning is to find a way to decrease the response time of the query,
prevent the excessive consumption of resources, and identify poor query performance.

In the context of query optimization, query processing identifies how to faster retrieve data from a
database

SQL query optimization basics https://blog.devart.com/how-to-optimize-sql-query.html


Optimizing queries across different data models can be complex. Database systems must intelligently
balance performance and consistency, especially when dealing with complex multi-model queries.

(ChatGPT, 2023)

3.3. Data Integration:


Data integration is the process of combining data from different sources into a single, unified view.
Integration begins with the ingestion process, and includes steps such as cleansing, ETL mapping, and
transformation. Data integration ultimately enables analytics tools to produce effective, actionable
business intelligence

What is Data Integration?


https://www.talend.com/resources/what-is-data-integration/#:~:text=Data%20integration%20is%20the
%20process,%2C%20ETL%20mapping%2C%20and%20transformation.

Integrating data from multiple sources with varying structures and formats can be challenging. Effective
data integration strategies are crucial for maintaining data quality and consistency.

(ChatGPT, 2023)

3.4. Security and Access Control:


Database access control is a method of allowing access to company’s sensitive data only to those people
(database users) who are allowed to access such data and to restrict access to unauthorized persons. It
includes two main components: authentication and authorization.

Authentication is a method of verifying the identity of a person who is accessing your database. Note
that authentication isn’t enough to protect data. An additional layer of security is required,
authorization, which determines whether a user should be allowed to access the data or make the
transaction he’s attempting. Without authentication and authorization, there is no data security.

https://www.datasunrise.com/professional-info/what-is-access-control/

Securing multi-model databases requires handling permissions and access controls across different data
models. Ensuring data privacy and compliance becomes paramount.

(ChatGPT, 2023)
4. State-of-the-Art Approaches and Techniques:

4.1. Polyglot Persistence:


Polyglot persistence involves using multiple specialized databases within a single application to store
different types of data. Each database is selected based on its suitability for the specific data model,
allowing for optimal performance and flexibility.

(ChatGPT, 2023)
4.2. Document-Relational Mapping (D-RM):
The Relational Model

The relational model, built around the concept of relationship, structures the data into models that
relate to each other through constraints that are made explicit through foreign keys: for example, the
Child Table has a reference to the Master table through its ID. This relationship is expressed in a
language, usually a Data Definition Language (DDL).

One of the reasons for the popularity of this model is the fact that several tools for database
management are available (also for free, such as MySQL Workbench or DBeaver for database design or
schema migration).

For the sake of simplicity, in the examples that will follow, we will assume that the relational model is
implemented on a SQL compliant database.

The Document Model

The document model focuses on data, rather than relationships. In this regard, the data is not seen as a
tuple (or row) within a table, but as a document with properties, which are not theoretically defined.
There is no DDL language that defines a schema and therefore some documents may or may not have
these properties.

In this model, the relationships are not represented by foreign keys but by nested data. Since the
document is unstructured, it may include another document or an array of documents, thus creating an
N: 1 or 1: N relationship between the two entities. Therefore, nesting is preferred over an explicit
relationship by one or more properties.

In the examples that will follow, we will assume that the document model is implemented with the
MongoDB database, which has recently become very popular in the enterprise environment.

Two different approaches to data

In a relational approach, the writing activity is performed by a component that writes data in one place
and there is one and only one table that contains that data. If you add a record, a new row will be added
to that table. On the contrary, if you want to read that data, the reading query will typically find that
information by performing the JOIN: an operation that allows you to query multiple tables, combine
their data and return them in filtered form

Document-oriented and relational database: which one to choose?


https://blog.mia-platform.eu/en/document-oriented-and-relationa-database-which-one-to-choose

D-RM tools bridge the gap between document-oriented databases (e.g., MongoDB) and relational
databases, enabling seamless integration of structured and semi-structured data.

(ChatGPT, 2023)
4.3. Native Multi-Model Databases:
A native multi-model database has one core, one query language, but multiple data models. A native
multi-model database is a combination of several data stores in one system. You can store data as
key/value pairs, graphs or documents and can access your data seamlessly with one declarative query
language, combining different models in a single query. You can build high-performance applications and
scale horizontally using all data models to their full extent.

A native multi-model has multiple coexisting data models accessed via one query language

An ArangoDB White Paper (April 2020)

Some database systems, such as ArangoDB and OrientDB, are designed as native multi-model
databases. They provide built-in support for multiple data models, simplifying data management and
querying. (ChatGPT, 2023
4.4. Schema-Less Approaches:
Schemaless refers to a type of database management system where data can be stored without a
predefined structure or schema. This means that data can be added or modified without the need for a
specific schema to be defined beforehand. In a schemaless database, each record can have its own
unique structure, and fields can be added or removed as needed.

Schemaless databases are often used in situations where the structure of the data is not known in
advance or where flexibility is required. This can be particularly useful in applications where data is
generated in real-time or where the structure of the data may change frequently.

Schemaless vs Schema: How Are These Words Connected?


https://thecontentauthority.com/blog/schemaless-vs-schema

Many multi-model databases embrace schema-less or flexible schema designs. This allows data to be
stored without predefined structures, easing schema evolution challenges.

(ChatGPT, 2023)

4.5. Query Languages:


The main purpose of managing massive multi-model data is to be able to query it.

Numerous data models were proposed for practical purposes, which pose a great challenge for big data
management. Specifying a database query using a formal query language is a typically challenging task.
In the context of the multi-model data, this problem becomes even harder because it requires the users
to deal with data of different types. It usually lacks a unified schema to help the users issuing their
queries, or have an incomplete schema as data come from disparate sources. Multi-Model DataBases
(MMDBs) have been developed to facilitate the management of multi-model data.

https://www.researchgate.net/publication/343571026_Multi-
Model_Data_Query_Languages_and_Processing_Paradigms

Advanced query languages, such as GSQL for graphs or N1QL for JSON data, are designed to support
multi-model querying within a single database.

(ChatGPT, 2023)
Conclusion:

Multi-model databases have become crucial in addressing the growing complexity of data in various
fields. They offer diverse applications, but also come with challenges in schema management, query
optimization, data integration, and security. Leveraging state-of-the-art approaches like polyglot
persistence, D-RM, and native multi-model databases can help organizations harness the benefits of
multi-model databases while mitigating these challenges. As technology continues to evolve, multi-
model databases will likely play an even more significant role in data management and analytics.

Bibliography

https://www.singlestore.com/blog/what-is-a-multi-model-database/

(ChatGPT, 2023)

Gaining Data Agility with Multi-Model Databases by Joel Ruisi

https://www.oreilly.com/library/view/gaining-data-agility/9781492032946/ch04.html

What is Schema Evolution? https://www.macrometa.com/articles/what-is-schema-evolution

SQL query optimization basics https://blog.devart.com/how-to-optimize-sql-query.html

What is Data Integration?https://www.talend.com/resources/what-is-data-integration/#:~:

text=Data%20integration%20is%20the%20process,%2C%20ETL%20mapping%2C%20and
%20transformation.

https://www.datasunrise.com/professional-info/what-is-access-control/

Document-oriented and relational database: which one to choose?

https://blog.mia-platform.eu/en/document-oriented-and-relationa-database-which-one-to-choose

Schemaless vs Schema: How Are These Words Connected?

https://thecontentauthority.com/blog/schemaless-vs-schema

https://www.researchgate.net/publication/343571026_Multi-
Model_Data_Query_Languages_and_Processing_Paradigms

You might also like