GoodNotes Architect Journal
🏠 Index 1. Single Server 2. Selecting DB 3. Relational & SQL 4. ACID Integrity 5. NoSQL Types 6. Scaling Guide 7. Load Balancing 8. SPOF & HA 9. API Design 10. Comm Protocols 11. TCP & UDP 12. REST Design 13. GraphQL Architecture 14. Authentication Protocols 15. JWT & OAuth 2 16. Authorization Models
System Design Chapter 5

Non-Relational (NoSQL) Classifications

Document, Wide-Column, Graph & Key-Value DBs

β˜… NoSQL trades strict joins for massive horizontal elasticity and speed!

πŸ“„ Document Stores

Stores data in JSON/BSON structures allowing rich nested attributes in a single record.

MongoDB CouchDB

πŸ“Š Wide-Column Stores

Organizes data in dynamic column families optimized for high write performance.

Cassandra CosmosDB

πŸ•ΈοΈ Graph Databases

Stores nodes and relationships as edges for querying interconnected networks.

Neo4j Amazon Neptune

πŸ”‘ Key-Value Stores

KeyValue pair mappings for sub-millisecond lookups and caching layers.

Redis Memcached

πŸ“ Summary Matrix: SQL vs NoSQL

FeatureRelational (SQL)Non-Relational (NoSQL)
Data StructureRigid, well-structured tabular schemaFlexible, dynamic schema-less formats
ConsistencyStrong consistency & strict ACID guaranteesEventual consistency (BASE) models
LatencyOptimized for joins; higher write overheadSuper-low latency for fast write throughput
ScalingPrimary scaling via Vertical (Scale Up)Native Horizontal scaling (Scale Out)