Pillar #4 12 chương SQL + NoSQL Interview-ready

Database — từ Relational đến Distributed

Database là trái tim của mọi hệ thống. Khóa học này phủ toàn bộ chiều rộng — từ thiết kế schema, viết SQL chuẩn, hiểu Index/Transaction/MVCC, đến NoSQL, Replication, Sharding, Caching, Search, OLTP vs OLAP, và Online Migration ở quy mô production. Mỗi chương đều có ví dụ thực tế (PostgreSQL/MySQL/MongoDB/Redis), bài tập, và quiz.

Lộ trình 12 chương

Học theo thứ tự để xây nền vững. Mỗi chương dày ~600–900 dòng nội dung chi tiết, gồm lý thuyết, ví dụ code, ASCII diagram, bài tập, và quiz cuối chương.

CHƯƠNG 01

Database Fundamentals & Relational Model

Lịch sử DB, mô hình quan hệ của Codd, schema/table/row/column, các loại key (PK/FK/UNIQUE), constraint.

Relation Tuple Constraint DBMS
CHƯƠNG 02

SQL Cơ Bản — DDL/DML/DQL/DCL/TCL

5 nhóm câu lệnh SQL. CREATE/ALTER/DROP, INSERT/UPDATE/DELETE, SELECT cơ bản, GRANT/REVOKE, BEGIN/COMMIT/ROLLBACK.

DDL DML SELECT WHERE
CHƯƠNG 03

Advanced SQL — JOIN, Subquery, CTE, Window

INNER/LEFT/RIGHT/FULL/CROSS JOIN, EXISTS vs IN, CTE đệ quy (WITH RECURSIVE), Window Functions (ROW_NUMBER, RANK, LAG/LEAD).

JOIN CTE Window PIVOT
CHƯƠNG 04

Normalization & Schema Design

1NF/2NF/3NF/BCNF với ví dụ thật, khi nào denormalize, anti-pattern thường gặp, ERD, naming conventions.

3NF BCNF ERD Denorm
CHƯƠNG 05

Indexes — B-tree, Hash, GIN, Composite

Cấu trúc B-tree, Hash, Bitmap, GIN/GiST. Composite index, Covering index, Index selectivity, khi nào index không được dùng.

B-tree Composite Covering EXPLAIN
CHƯƠNG 06

Transactions & ACID — Isolation Levels

ACID là gì, 4 isolation level (Read Uncommitted → Serializable), Dirty/Non-repeatable/Phantom read, ví dụ minh họa từng anomaly.

ACID Isolation Serializable Phantom
CHƯƠNG 07

Concurrency Control — Locking, MVCC

2PL, Optimistic vs Pessimistic locking, MVCC trong Postgres, Lock escalation, Deadlock detection, SELECT FOR UPDATE.

Lock MVCC Deadlock 2PL
CHƯƠNG 08

Query Optimization & Execution Plan

EXPLAIN ANALYZE đọc thế nào, Logical vs Physical plan, Cost-based optimizer, Statistics, khi nào hint DB.

EXPLAIN Cost Stats Tuning
CHƯƠNG 09

NoSQL — KV, Document, Wide-column, Graph

4 họ NoSQL: Redis (KV), MongoDB (Document), Cassandra (Wide-column), Neo4j (Graph). CAP theorem, BASE, Eventual consistency.

CAP BASE MongoDB Cassandra
CHƯƠNG 10

Replication & Sharding

Master-Slave/Multi-Master, Sync/Async/Semi-sync, Read replicas, Range/Hash/Directory sharding, Resharding, Consistent hashing.

Replica Shard Hash ring Failover
CHƯƠNG 11

Caching, Search, OLTP vs OLAP

Redis caching pattern (cache-aside, write-through, write-behind), Elasticsearch inverted index, Data warehouse, Star schema, ETL/ELT.

Redis ES OLAP Star
CHƯƠNG 12

Backup, Recovery & Online Migrations

Logical vs Physical backup, PITR, WAL, Online schema migration (gh-ost, pt-online-schema-change), Connection pooling, N+1, anti-pattern.

Backup PITR Migration Pool

Cách học hiệu quả

  1. Đọc giáo trình tổng quan trước để có bản đồ tư duy chung về toàn bộ DB.
  2. Học theo thứ tự 1→12. Index (Ch5) đòi hỏi hiểu Schema (Ch4); MVCC (Ch7) đòi hỏi hiểu Transaction (Ch6).
  3. Cài Postgres + Redis + MongoDB local (Docker Compose). Mọi ví dụ đều copy-paste được để chạy thử.
  4. Làm bài tập + quiz cuối mỗi chương — đừng skip, đó là phần đo hiểu thực sự.
  5. Mỗi tuần thử thiết kế 1 schema cho 1 ý tưởng app (Twitter, Uber, Netflix...) để vận dụng.