NoSQL Fundamentals
NoSQL is a family of database approaches that store and query data using models such as documents, key-value pairs, wide columns, and graphs. You choose a model from the operations and relationships your application needs, not from the NoSQL label alone.
itDatabases and data storage | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Intro
NoSQL Fundamentals
NoSQL is a family name for databases that do not share the traditional relational table-and-join model as their central design. It does not name one database, query language, transaction model, or consistency guarantee. A document database, a key-value store, a wide-column database, and a graph database solve different problems with different tradeoffs.
Start with the work your system must do. Write down the important reads, writes, relationship traversals, latency targets, growth pattern, and failure behavior. Then choose a data model that makes those operations direct and predictable. The product comes after that choice, because its limits and guarantees still matter.
Why these models exist
A relational database organizes facts into tables and combines related rows with queries. That remains an excellent model for many systems. Other workloads need a different primary shape. An application may usually load one nested record, look up one value by key, serve a fixed set of high-volume distributed queries, or follow many relationships across several steps.
NoSQL systems make one or more of those shapes central. This can simplify common operations and enable distribution, but it moves more responsibility into data modeling. You must define the record boundary, access paths, duplication policy, partitioning strategy, and failure behavior. A flexible schema does not remove the need for a data contract.
The four recurring models
Continue the course
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://www.mongodb.com/docs/manual/
Supports
- MongoDB documents as records with field-value pairs, nested documents, arrays, collections, transactions, replication, and sharding
- Document-model examples and product-specific guarantees in the introduction, slides, quiz, and reference path
- https://www.mongodb.com/docs/manual/data-modeling/
Supports
- Official MongoDB data-modeling guidance
- Document-boundary and flexible-schema discussion, data-contract guidance, quiz answer, and reference-path rationale
- https://cassandra.apache.org/doc/latest/cassandra/architecture/overview.html
Supports
- Cassandra as a distributed NoSQL database with a partitioned wide-column model and eventually consistent semantics
- Wide-column overview, product-specific guarantee warning, quiz answer, and architecture-link rationale
- https://cassandra.apache.org/doc/latest/cassandra/developing/data-modeling/intro.html
Supports
- Query-driven Cassandra data modeling, absent joins, denormalization, partition keys, and limiting partition reads
- Wide-column explanation, partition-key guidance, cheatsheet, slides, quiz answers, and reference-path rationale
- https://redis.io/docs/latest/develop/data-types/
Supports
- Redis as a data structure server with strings, hashes, lists, sets, sorted sets, streams, and other native data types
- Key-value explanation, Redis example in the video script, quiz answer, cheatsheet, and reference-path rationale
- https://neo4j.com/docs/getting-started/data-modeling/tutorial-data-modeling/
Supports
- Nodes as entities, relationships as connections, labels, properties, relationship types, and graph-model testing
- Graph explanation, slides, video script, quiz answer, and reference-path rationale
- https://github.com/numetriclabz/awesome-db
Supports
- Curated discovery of Aerospike, memcache, RocksDB, Cassandra, Neo4j, and other database projects
- Awesome Links selection and rationales
