When we talk about Databases🤓, we know what it is. It is nothing but an organized collection of data
that can be accessed and used according to the needs of the user.
Carl Strozzi 👨🎓 introduced the concept of NoSQL in 1998
. Eventually, it became popular among corporate giants like Google, Facebook, Amazon, etc. that deal with vast volumes of data.
In this “NoSQL blog”
, you will learn about NoSQL databases, How Does a NoSQL Database Work?, and Types of NoSQL Databases😃.
NoSQL Databases
are purpose-built for specific data models and have flexible schemas for building modern applications. NoSQL Databases are widely recognized for their ease of development, functionality, and performance at scale.
What is NoSql?🤔
NoSQL
is a non-relational database management system, different from traditional relational database management systems in some significant ways.
It is designed for distributed data stores where the very large scale of data storing needs (for example Google or Facebook which collects terabits of data every day for their users). This type of data storing may not require a fixed schema😯**, avoid join operations and typically scale horizontally**.
One of the advantages of NoSQL database
is that they are effortless to scale and they are much faster in most types of operations that we perform on a database. There are certain situations where you would prefer a, relational database over NoSQL
however when you are dealing with a huge amount of data then a NoSQL database is your best choice😉**.**
How Does a NoSQL Database Work?
The system response time becomes slow when you use RDBMS for massive volumes of data
😟.
To resolve this problem🤠, large-scale data storing is to distribute database load on multiple hosts whenever the load increases. This method is known as “scaling out.”
NoSql database
is non-relational, so it scales out better than RDBMS as they are designed with web applications in mind.
Types of NoSQL Databases🕵️♀️
NoSQL Databases are mainly categorized into four types 4️⃣: Key-value pair, Column-oriented, Graph-based, and Document-oriented
. Every category has its unique attributes and limitations. None of the above-specified databases is better to solve all the problems. Users should select the database based on their product needs😯**.**
Types of NoSQL Databases:
☝️Key-value Pair Based
✌️Column-oriented Graph
👌Document-oriented
🖖Graphs based
1. Key Value Pair Based🔐
Key-value pair storage databases store data as a hash table where each key is unique, and the value can be a JSON, BLOB(Binary Large Objects), string, etc.
Data is stored in key/value pairs
. It is designed in such a way as to handle lots of data and heavy load.
2. Column**-Oriented**:📊
Wide-column NoSql Database
store data in tables with rows and columns
similar to RDBMS, but names and formats of columns can vary from row to row across the table.
**3. Document-Oriented:**📑
Document databases
make it easier for developers to store and query data in a databases
by using the same document model format that they use in their application code.
4. Graph Based:📈
A graph-based database
stores entities as nodes and relations amongst those entities that are stored as edges. All nodes and edges have a unique identifier. An edge gives a relationship between nodes. This type of database is multi-relational in nature and traversing relationships is fast due to the fact that they are already captured into the database with no need for calculation.
Graph-based databases are mostly used for logistics, social networks, and spatial data.
Infinite Graph, FlockDB, Neo4J, OrientDB, etc. are examples of popular graph-based databases
.
Why should use NoSQL Databases?🙄
NoSQL Databases are a great fit for many modern applications such as mobile, web, and gaming that require flexible, scalable, high-performance, and highly functional databases
to provide great user experiences.
NoSQL Databases
use a horizontal scale-out methodology that makes it easy to add or reduce capacity quickly and non-disruptively with commodity hardware🤫. This eliminates the tremendous cost and complexity of manual sharding that is necessary when attempting to scale RDBMS.
Let’s Summarise🙆♀️
Let us have a quick recap of what we have read in this article.
NoSQL Databases
are purpose-built for specific data models and have flexible schemas for building modern applications. NoSQL Databases are widely recognized for their ease of development, functionality, and performance at scale.
NoSQL Databases use a variety of data models for accessing and managing data. These NoSQL Databases are optimized specifically for applications requiring large data volume, low latency, and flexible data models.
Today, many applications are delivered as services, and those services must be available 24/7, accessible from a wide range of devices, and scaled to what can potentially be millions of users. NoSQL Databases
were created to manage the scale and agility challenges that face modern applications, but the suitability of a database depends on the problem it must solve.
Thanks for reading all the way to the end!🥹
Let,s Catch up in the next blog 😍 until then keep reading.
Happy Coding :)❤️