Database terms
Almost every application is, at its core, a system for reading and writing data. This category covers relational and non-relational databases, query optimisation, indexing strategies, transactions, normalisation, replication, and the CAP theorem trade-offs that dictate how distributed data behaves. Choosing and using the right database correctly is one of the highest-leverage skills in backend development.
More on Database
History
Databases emerged in the 1960s as a solution to manage large volumes of structured data, with hierarchical and network models preceding the relational model proposed by Edgar F. Codd in 1970. The relational paradigm dominated enterprise computing through systems like Oracle, IBM DB2, and MySQL, standardizing SQL as the universal query language by the 1980s–90s. The 2000s saw the rise of NoSQL databases in response to web-scale demands for unstructured data and horizontal scalability, while distributed systems and cloud infrastructure reshaped deployment patterns. Modern practice now spans a spectrum: traditional ACID-compliant relational databases, document stores, time-series systems, and graph databases coexist, with teams selecting tools based on consistency guarantees, query patterns, and operational complexity. Today's database engineering emphasizes replication, sharding, monitoring, and migration safety as foundational practices rather than afterthoughts.
Key concepts
- Database Schema Design
- Database Indexes
- Database Transactions
- Database Normalisation
- Foreign Keys & Referential Integrity
- Query Optimisation
- Transaction Isolation Levels
- Database Views & Materialised Views
Best references
-
PostgreSQL Official Documentation Comprehensive, authoritative reference covering transactions, indexes, query planning, replication, and advanced features like window functions and CTEs. Gold standard for PostgreSQL-specific topics.
-
MySQL 8.0 Reference Manual Official MySQL documentation detailing storage engines (InnoDB vs MyISAM), index types, JSON support, AUTO_INCREMENT, and query optimization. Essential for MySQL-specific implementation details.
-
Database Internals by Alex Petrov Modern reference covering storage engines, indexing strategies, write-ahead logs, transactions, and replication fundamentals. Bridges theory and practical implementation across database systems.
-
SQL Performance Explained by Markus Winand Focused resource on query optimization, index design, execution plans, and performance anti-patterns like N+1 queries. Vendor-agnostic but deeply technical.
-
Designing Data-Intensive Applications by Martin Kleppmann Authoritative treatment of consistency models, replication strategies, transaction isolation levels, and architectural patterns for scalable databases. Essential for understanding trade-offs in distributed systems.
Typed relationships here
Edges touching a Database term. How edges work →
- Database Indexes Often seen in Query Optimisation 1d
- Graph Databases Often seen in Polyglot Persistence 3d
- Graph Databases Alternative to Document Stores 5d
- Graph Databases Implements Graphs 6d
- NoSQL Injection Often seen in Document Stores 6d