Presentation is loading. Please wait.

Presentation is loading. Please wait.

NoSQL databases An introduction and comparison between Mongodb and Mysql document store.

Similar presentations


Presentation on theme: "NoSQL databases An introduction and comparison between Mongodb and Mysql document store."— Presentation transcript:

1 NoSQL databases An introduction and comparison between Mongodb and Mysql document store

2 A quick introduction to NoSQL databases
The term NoSQL was coined by Carlo Strozzi in the year 1998 to a light weight database queried without SQL interface. NoSQL databases represent a collection of types of non-relational databases that don't require the use of SQL queries like RDBMS. NoSQL systems are also sometimes called Not-Only SQL to emphasize the fact that they may support SQL-like query languages of relational database systems.

3 Why create NoSQL databases?
Big Data : Data generation has increased exponentially. Most RDMS can not keep Up In today’s time, data is becoming easier to access and capture data. Most of all generated data are unstructured data. Unstructured data is information that either does not have a pre-defined data model or is not organized in a pre-defined manner

4 Why create NoSQL databases? Cont’d
Delivering Hot Data In large applications, the data cache stored in RAM can grow very large and be subjected to thousands or even millions of requests per second. Handling Large Data Volumes Many relational databases (RDBMS) such as Oracle 12c, MySQL, Postgres or Microsoft SQL Server were designed to run on a single server. As the size of a relational database grows, organizations may run into performance issues with their infrastructure and database technology due to database scalability challenges. Dealing with Highly Volatile Data when thousands of updates per second are applied to a single database row (for example, flash online sales for high-demand concert tickets), it is crucial to maintain exact values at every second. MySQL is designed around full transactional semantics with support for long transactions and works with disk- based log durability. Unstructured data is information that either does not have a pre-defined data model or is not organized in a pre-defined manner

5 Properties of NoSQL databases
They have higher scalability. They use distributed computing. They are cost effective. They support flexible schema. They’re able to process both unstructured and semi-structured data. There are no complex relationships, such as the ones between tables in an RDBMS.

6 Types of NoSQL databases
Key-value stores Every item in the database is stored as an attribute name (or "key") together with its value ( examples: Riak, Amazon Dynamo) Wide-column stores Store data together as columns instead of rows and are optimized for queries over large datasets. (examples: CouchDB) Document databases Documents can contain many different key-value pairs, or key-array pairs, or even nested documents. (examples: MongoDB, Cassandra) Graph databases A network database that uses edges and nodes to represent and store data (example: Neo4j)

7 Introduction to Document stores
Document store NoSQL database system models are one of the most commonly used NoSQL database solutions, A document-based model builds on a simpler type of NoSQL DBMS called the Key-Value store database model. Document databases are a collection of semi-structured documents stored in formats like JSON that contain nested values associated with a key.

8 Introducing Mongo DB Mongo DB was started in 2007 as a part of an open source cloud computing stack, with its first standalone release was in 2009. It was developed using C++ a goal of specializing in document store that offered high scalability, flexibility, eventual consistency, and lightning speed operations. utilizes BSON format (Binary JavaScript Object Notation) to store complex data types in its documents.

9 Features of Mongo DB Auto-sharding to scale from single server deployments to large and complex multi-data center architectures. Replication of the data with master-slave architecture ensuring high availability with eventual consistency Leverages native caching and RAM. MongoDB also provides native, idiomatic drivers for all popular programming languages and frameworks to make development natural for developers. MongoDB can perform map and reduce functions by mapping and filtering all the documents that meet particular criteria and finally processes the data for reduction. MongoDB can be retrieved through several programming languages such as Java, C, C++, Ruby, C#, and Python.

10 Introducing MySQL Document store
Since the introduction of MySQL 5.7 and later, the MySQL platform has included support for a NoSQL document store. It gives developers the ability to integrate both SQL relational tables and schema-less JSON collection into a collective database. X Dev API on top of its existence X protocol which introduces collections as a new schema object and provides full CRUD and SQL operations

11

12 Key Features of MySQL Document Store
InnoDB a storage engine that enables multi-document transaction support and full ACID database compliance. InnoDB Cluster and Group replication for on-demand application scaling to achieve high availability with master-slave architecture. Document data consistency is maintained to the point in time when the backups are completed. Users can perform Point in Time recovery to recover to a specific transaction using the MySQL binlog. Transparent Data Encryption for auditing, advanced authentication, and firewall help to maximize security. CRUD APIs are supported across multiple popular programming languages like javascript, python and SQL.

13 Data Integrity Control
Concurrency control: measures to prevent multiple clients from modifying the same piece of data simultaneously MongoDB’s multi-granularity locking that allows operations to lock at the global, database or collection level. MongoDB lock manager to allows storage engines to manage their own concurrency control. MySQL’s InnoDB multi-versioned storage engine keeps information about old versions of changed rows, to support transactional features such as concurrency and rollback. Acid complicity: Although most Nosql try to keep the BASE(Basically Available, Soft state, Eventual consistency) in compliance with the CAP (Consistency, Availability, Partition tolerance) theorem. Mongo DB version 4.0 supports both single and multi-document ACID transactions MySQL Document Store also supports full ACID transactions.

14 Current state and performance evaluation
Mongo DB remains the benchmark for NoSQL databases with excellent insert and retrieval speeds. Mongo DB software support community remain far superior to MySQL Documents store due its market maturity. MySQL Document store offer a unique opportunity to simultaneously host relational tables and document in the same database cluster. Companies utilizing Mongo db include Google, SAP, cisco, intuit, Carfax … MySQL Document store remain relatively new with bug fixes, feature improvement. Not production ready.


Download ppt "NoSQL databases An introduction and comparison between Mongodb and Mysql document store."

Similar presentations


Ads by Google