CMU Intro to Database Systems (15-445/645 — Fall 2024)
This course covers elementary discrete mathematics for science and engineering, with a focus on mathematical tools and proof techniques useful in computer science. Topics include logical notation, sets, relations, elementary graph theory, state machines and invariants, induction and proofs by contradiction, recurrences, asymptotic notation, elementary analysis of algorithms, elementary number theory and cryptography, permutations and combinations, counting tools, and discrete probability.
- #00 - Course Overview & Logistics (CMU Intro to Database Systems)
- #01 - Relational Model & Algebra (CMU Intro to Database Systems)
- #02 - Modern SQL (CMU Intro to Database Systems)
- #03 - Database Storage: Files & Pages ✸ Neon Database Talk (CMU Intro to Database Systems)
- #04 - Database Storage: Log-Structured Merge Trees & Tuples (CMU Intro to Database Systems)
- #05 - Row vs. Column Storage + Compression ✸ StarTree Database Talk (CMU Intro to Database Systems)
- #06 - Memory & Disk I/O Management (CMU Intro to Database Systems)
- #07 - Hash Tables ✸ RelationalAI Database Talk (CMU Intro to Database Systems)
- #08 - Tree Indexes: B+Trees (CMU Intro to Database Systems)
- #09 - Vector Indexes, Inverted Indexes, Filters, Tries ✸ TiDB Talk (CMU Intro to Database Systems)
- #10 - Index Concurrency Control (CMU Intro to Database Systems)
- #11 - Sorting & Aggregation Algorithms ✸ dbt Database Talk (CMU Intro to Database Systems)
- #12 - Join Algorithms: Hash, Sort-Merge, Nested Loop Joins (CMU Intro to Database Systems)
- #13 - Query Execution Part 1 (CMU Intro to Database Systems)
- #14 - Query Execution Part 2 ✸ ClickHouse Database Talk (CMU Intro to Database Systems)
- #15 - Query Planning & Optimization (CMU Intro to Database Systems)
- #16 - Concurrency Control Theory ✸ Firebolt Database Talk (CMU Intro to Database Systems)
- #17 - Two-Phase Locking Concurrency Control (CMU Intro to Database Systems)
- #18 - Optimistic Concurrency Control ✸ Weaviate Database Talk (CMU Intro to Database Systems)
- #19 - Multi-Version Concurrency Control (CMU Intro to Database Systems)
- #20 - Database Logging ✸ Confluent Database Talk (CMU Intro to Database Systems)
- #21 - Database Recovery with ARIES (CMU Intro to Database Systems)
- #22 - Distributed Database Architectures ✸ DataStax Database Talk (CMU Intro to Database Systems)
- #23 - Distributed Transactional Databases (CMU Intro to Database Systems)
- #24 - Distributed Analytical Databases (CMU Intro to Database Systems)
- #25 - BigQuery + Snowflake + Redshift + Databricks + DuckDB (CMU Intro to Database Systems)