0% found this document useful (0 votes)
12 views12 pages

NoSQL Database Overview and Types

The document provides an overview of NoSQL databases, highlighting their advantages over traditional SQL databases, such as scalability, flexibility, and high performance. It categorizes NoSQL databases into four types: Key-Value, Wide-column Stores, Document Databases, and Graph Databases, each with specific use cases. The document also outlines when to use each type of NoSQL database based on various application needs.

Uploaded by

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

NoSQL Database Overview and Types

The document provides an overview of NoSQL databases, highlighting their advantages over traditional SQL databases, such as scalability, flexibility, and high performance. It categorizes NoSQL databases into four types: Key-Value, Wide-column Stores, Document Databases, and Graph Databases, each with specific use cases. The document also outlines when to use each type of NoSQL database based on various application needs.

Uploaded by

Mohan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Introduction 3

Database - Organized collection of


data
DBMS -
Database Management System: a software
package with computer programs that controlsthe
creation, maintenance and use of a database.

Databases are created to operate large quantities


of information by inputting, storing, retrieving,
and managing that information.
SQL databases

Ashwani Kumar
16 February 2018
NOSQL Databases
Introduction to NoSQL

NoSQL, or “Not Only SQL,” is a database management system


(DBMS) designed to handle large volumes of unstructured and
semi-structured data. Unlike traditional relational databases that
use tables and pre-defined schemas, NoSQL databases
provide flexible data models and support horizontal scalability,
making them ideal for modern applications that require real-time
data processing.
Why Use NoSQL?
• Traditional relational databases follow ACID (Atomicity, Consistency, Isolation,
Durability) principles, ensuring strong consistency and structured relationships
between data. However, as applications evolved to handle big data, real-time
analytics, and distributed environments, NoSQL emerged as a solution with:

• Scalability – Can scale horizontally by adding more nodes instead of upgrading a


single machine.

• Flexibility – Supports unstructured or semi-structured data without a rigid schema.

• High Performance – Optimized for fast read/write operations with large datasets.

• Distributed Architecture – Designed for high availability and partition tolerance in


distributed systems.
Types of NoSQL Databases

Key-Value Databases
The Key-Value databases are simplest and easiest to implement. They internally use a hash table where there is a
unique key and a pointer to a particular item of data. Key-value databases are great for use cases where you need to
store large amounts of data, but you don’t need to perform complex queries to retrieve it.
Examples: Tokyo Cabinet/Tyrant, Redis, DynanoDB, Voldemort, Oracle BDB, Amazon SimpleDB, Riak.
Use cases: Shopping carts, User preferences, and User profiles.

Wide-column Stores (Column-oriented databases)


They store data in tables, rows, and dynamic columns. Here each row doesn’t need to have the same columns.
Therefore, they are better than relational databases in flexibility. Also, these were created to store and process very
large amounts of data distributed over many machines. Wide-column stores are suitable for storing Internet of Things
data and user profile data.
Examples: Cassandra, HBase, BigTable, Hypertable
Use cases: Analytics
Document Databases
They are similar to key-value stores and inspired by Lotus Notes. Document Databases store
data in documents like JSON objects. Further JSON can store values in a variety of types like
Strings, Numbers, Booleans, Arrays or Objects. They also support powerful query languages.
Hence, they can be used as a general purpose database. According to DB-engines ranking,
MongoDB is consistently ranked as the world’s most popular NoSQL database.
Examples: MongoDB, CouchDB, OrientDB, RavenDB
Use cases: Trading platforms, E-commerce platforms, and Mobile app development.

Graph Databases
They use a flexible graph model which, again, can scale across multiple machines. Graph
Databases store data in nodes and edges. Nodes typically store information about people,
places, and things while edges store information about the relationships between the
nodes. They are useful in use cases where you need to traverse relationships to look for
patterns such as social networks, fraud detection, and recommendation engines.
Examples: Neo4J, JanusGraph, InfoGrid, Infinite Graph, Flock DB
Use cases: Social networks, Fraud detection, and Knowledge graphs.
When to use a key-value database?
1) When Using Cache accelerates the application performance
2) Storing personal data about specific users
3) Managing each player’s session in massive multiplayer online games
4) Real-time random data access, e.g., user session attributes in an online
application such as gaming or finance
5) Session Management on a high importance

When to use a column-oriented database?


1) Data warehousing
2) Analytics & Reporting
3) Big Data Processing
When to use a document database?
1) Mobile apps
2) Payment Processing
3) Product catalogs and content management
4) Internet of Things (IoT) and time-series data
5) Customer data management and personalization
6) Operational analytics & Realtime Analytics

When to use a graph database?


1) Social Media
2) Fraud Detection
3) Realtime Recommendations
4) Network and IT operations
SQL vs NOSQL

You might also like