NoSQL Database

 WHAT IS NoSQL DATABASE?

The term NoSQL came from the word non SQL or nonrelational. 
NoSQL = not only SQL, non-SQL. 

NoSQL databases are non-tabular databases. NoSQL is a database management method that can accept a wide range of data structures.

NoSQL databases are classified into different types based on their data model. The main types are document, key-value, wide-column, and graph. They offer flexible schemas and scale well under high user data and high data loads.

HISTORY OF NoSQL:

Carlo Strozzi created the name "NoSQL" in 1998, however comparable databases had existed since the late 1960s. However, NoSQL development began in earnest in early 2009, and it is fast expanding.

NoSQL is a type of next-generation database management system(DBMS).

TYPES OF DATABASE IN NoSQL:

Database types in NoSQL:

  • Document type
  • Key-value
  • Wide-column
  • Graph

Document Type:

A Document Database stores data in JSON, BSON, or XML documents. Document Databases are popular with developers when compared to other database types. E-commerce platforms, trading platforms, and mobile app development across industries are examples of use cases.

Key-Value:

The simple type of NoSQL database is a Key-Value. Every data element in the database is stored as a key-value pair consisting of an attribute name and a value. Use cases are Shopping carts, user preferences, and user profiles.

Wide-column:

This type of database stores large data. A column store is a collection of columns arranged, whereas a relational database stores and reads data in rows. Use cases include analytics. Wide-column store data in tables, rows, and dynamic columns.

Graph:

A graph database focuses on connections among the data pieces. It stores data in nodes and edges. A node is used to store each element. Links or relationships are terms used to describe the connections between elements. Use cases include fraud detection, social networks, and knowledge graphs.

NoSQL DATABASE FEATURES:

The features of the NoSQL database are:

  • Flexible Schemas
  • Horizontal scaling
  • Fast queries due to the data model
  • Ease of use for developers

Pros and Cons of NoSQL database:

Pros:

  • Open-Source (No investment in the design model.)
  • Runs well on the cloud.
  • Faster than SQL.
  • Query speed.
  • Continuous availability.
  • Stores more amount of Data.

Cons:

  • No standardized language.
  • Smaller user community and slower response time.
  • Inefficiency with complex queries.
  • Technology still maturing.

DIFFERENCE BETWEEN NOSQL AND SQL:

NoSQL

SQL

Non-relational or distributed database system.

Relational database management system (RDBMS).

Horizontally scalable.

Vertically scalable.

Dynamic Schema.

Fixed Schema.

Not good for complex queries.

Can be used for complex queries.

Best for hierarchical data storage

Not suitable for hierarchical data storage.

Follows CAP.

Follows ACID.

EXAMPLES: MongoDB, GraphQL, HBase, Neo4j, Cassandra, etc.

Examples: MySQL, PostgreSQL, Oracle, MS-SQL Server, etc.

POPULAR NoSQL DATABASES:

  • MongoDB.
  • Amazon DynamoDB.
  • Apache Cassandra.
  • Apache CouchDB.
  • Apache HBase.
  • RavenDB.
  • Elasticsearch.
  • Redis.
  • OrientDB.
  • Neo4j.
  • Cosmos DB.
  • HyperTable.

COMPANIES USES NoSQL:

  • Amazon
  • Google
  • Netflix
  • Facebook

NoSQL Use Cases:

Many industries are uses NoSQL, some important use cases are:

  • Content Management (CM)

Ø  Forbes built a custom content management system based on MongoDB.

  • Real-Time Big data Processing

Ø  Zoom used DynamoDB.

  • Internet of Things (IoT)

Ø  Freshub is switched to MongoDB database.

  • Mobile Applications

Ø  The Weather Channel uses a MongoDB database.

WHEN WE USE NoSQL:

  • NoSQL is suitable for unstructured or very large data objects such as chat logs, videos, or images.
  • If you are constantly adding or modifying new features, functions, and data types NoSQL is better instead of SQL.

CONCLUSION:

It is easy to learn, Open-Source, and using NoSQL databases is not difficult. NoSQL databases provide an alternative way to store data from various machines.



Comments

Popular posts from this blog

Oracle Database Server Architecture: Overview

Oracle E-Business Suite (EBS) - Introduction

Advantages and Disadvantages of React Native