NoSQL

Definition
NoSQL stands for "Not Only SQL" and refers to a category of databases designed to store and retrieve data in flexible, non-relational formats. Unlike traditional relational databases, which use structured tables and schemas, NoSQL databases allow unstructured, semi-structured, or structured data to be stored in formats such as documents, key-value pairs, graphs, or wide columns.
This flexibility makes NoSQL databases well-suited for applications with large volumes of data, rapid scalability needs, or varied data structures. They are commonly used in real-time applications, big data processing, and cloud-native systems.
Advanced
At an advanced level, NoSQL databases are divided into several types, including document databases such as MongoDB, key-value stores such as Redis, graph databases such as Neo4j, and wide-column stores such as Cassandra. They are often designed for distributed computing, allowing data replication and sharding across clusters for high availability and horizontal scaling.
While NoSQL offers flexibility, it typically sacrifices some ACID (Atomicity, Consistency, Isolation, Durability) guarantees in favour of eventual consistency. Advanced implementations may combine NoSQL with relational systems in polyglot architectures for maximum efficiency.
Why it matters
Use cases
Metrics
Issues
Example
A global e-commerce platform uses MongoDB, a document-oriented NoSQL database, to manage its dynamic product catalog. The system allows new attributes to be added without altering rigid schemas. This flexibility reduces development time and supports rapid scaling during seasonal sales.