INTRODUCTION TO NOSQL DATABASES
In the previous lecture, we learned how to integrate MySQL with Hadoop using the Sqoop
utility to import and export data between these two systems. From this lecture onward, we
are going to discuss NoSQL, which is one of the most trending topics in the world of Big Data.
WHAT IS NOSQL?
NoSQL stands for "Not Only SQL." It does not negate SQL but extends beyond it. NoSQL
databases are non-relational databases that do not follow a fixed schema and store data in
formats other than rows and columns.
WHY NOSQL IS NEEDED
Relational databases work well for small to medium-scale applications, but they struggle with
very large datasets, high read/write speeds, and global-scale applications. Companies like
Facebook, Twitter, Instagram, and Amazon generate petabytes of data, where speed and
scalability matter more than strict structure.
KEY CHARACTERISTICS OF NOSQL
● - Schema-less or flexible schema
● - Supports structured, semi-structured, and unstructured data
● - Uses key-value, document, graph, or column-based storage
● - Highly scalable and high performance
SQL VS NOSQL COMPARISON
Type:
● SQL: Relational Database Management System (RDBMS)
● NoSQL: Non-relational / Distributed databases
Schema:
● SQL: Fixed schema
● NoSQL: Dynamic schema
Scalability:
● SQL: Vertical scalability
● NoSQL: Horizontal scalability
Performance:
● SQL: Best for complex queries
● NoSQL: Best for large-scale data and fast access
TYPES OF NOSQL DATABASES
1. Document Databases: Data stored as JSON or XML documents. Example: MongoDB
2. Key-Value Databases: Data stored as key-value pairs. Example: Redis
3. Graph Databases: Stores entities and relationships. Example: Neo4j
4. Column-Based Databases: Optimized for aggregation queries. Examples: HBase,
Cassandra
WHEN TO USE NOSQL
● - Agile development
● - Large volumes of data
● - Variety of data formats
● - Horizontal scalability
● - Real-time analytics
ADVANTAGES OF NOSQL
● - Flexible schema
● - High availability
● - No single point of failure
● - High performance
● - Easy scalability
● - Handles all data formats
CONCLUSION
Relational databases are sufficient for small applications, but for large-scale, data-intensive,
globally distributed systems, NoSQL is the better choice. In the next lecture, we will discuss
HBase in detail.