NoSQL database

 


Data is everywhere, it is expanding with each passing day. Relational Database systems are kind of fixed and static. When we have something in abundance and without any standard formation, then the tables of relational database systems cry out. 

So what to do with so many data integrations from several structured as well as unstructured sources. Well, the answer is to go for NoSQL (Not Only SQL). SQL is a structured query language that is used to query Relational Databases. However, NoSQL database does not contain data in the form of relations. Most of the NoSQL databases follow the JSON type structure to store data. 

 

Formal Definition:

 

   Guru99 provides a pretty nice definition for NoSQL databases:

"NoSQL Database is a non-relational Data Management System, that does not require a fixed schema. It avoids joins and is easy to scale. The major purpose of using a NoSQL database is for distributed data stores with humongous data storage needs. NoSQL is used for Big data and real-time web apps. For example, companies like Twitter, Facebook, and Google collect terabytes of user data every single day."

Types of NoSQL databases:

 

There are several types of NoSQL databases, such as: 

  • Key-Value 
    • DyanamoDB by Amazon, Redis, and Velocity are examples of Key-value databases.
    • Use cases: Gaming, ad tech, IoT, and web crawling.
  • Document
    • NoSQL databases like MongoDB, Elasticsearch, IBM Domino, and Couchbase fall into Document databases.
    • Use case: Content management systems, user profiles, and catalogs.
  • Graph
    • Typical examples for graph database includes Amazon Neptune, Giraph, and Neo4j.
    • Use cases: Recommendation systems, fraud detection, and social networking.
  • In-memory
  • Search 
    • Amazon ElasticSeach Service falls into the search database.
    • Use cases: Full-text search.


When to use NoSQL databases:

 

As mentioned above, when you have a huge amount of data from different standard/non-standard data and you need to perform real-time operations over that data to generate real-time results then you would be using NoSQL databases.

 

Companies using a NoSQL database: 

 

  • ContentStudio.io
  • Teradata
  • Facebook
  • IBM
  • Amazon
  • Snapchat 

And the list goes on... 

 

Conclusion

To recapitulate and to create synergy between this very article and my previous data engineering-related blog posts, here is a summary:

  • Till now we have gone through Data Engineering
  • Data Modeling
  • Relational Database systems
  • and now this NoSQL database

Hope you are enjoying these blog posts, if you have any query feel free to reach out via comment section.

In the next blog post, we will talk about the applications of Data Engineering and it's use cases.

Happy Learning :)

---

References: aws 

                   Wikipedia

                   Guru99 

---

 

Comments

  1. Thanks for this post. StaffMerge provides an amazing Tips for Video Interviewing to make you employable faster.

    ReplyDelete

Post a Comment

Popular posts from this blog

Relational Data Model

An Interview with Pakistani Data Scientist : Dr. Zeeshan Ul Hassan Usmani

Data Engineering Tools

Applications of Data Engineering

Five People to Follow on Social Media

Data Science : The Fusion Reaction

Elasticsearch and Redis : NoSql

Web Scraping : Urdu News