Understanding Indexing with Duplicate Values
A lecture note on how indexing works with columns that have duplicate values, covering index selectivity and practical examples.
Why Databases Read Pages Instead of Rows
This lecture explains why databases fetch entire pages instead of individual rows when executing SQL queries, covering variable-sized rows, disk storage limits, and how indexes work.
SQL Querying Fundamentals: Databases for Real-World Data
Learn how databases solve modern data challenges through SQL querying, filtering, and aggregation using SQLite.
Understanding Repeatable Read vs. Snapshot Isolation in Database Transactions
A clear explanation of how Repeatable Read and Snapshot Isolation work in databases, focusing on handling data changes during transactions.
Why Databases Might Ignore Indexes: A Lesson from Karate’s Question
A look at why PostgreSQL skips indexes for small tables and how outdated statistics can slow down queries after big data inserts.
Understanding Cost Units in PostgreSQL Query Planner
Lecture clarifying that PostgreSQL planner uses abstract cost units rather than milliseconds, with examples showing how costs reflect I/O and CPU work.
Why PostgreSQL Chooses Bitmap Heap Scan Over Index-Only Scan
Explains why PostgreSQL falls back to a bitmap heap scan instead of an index-only scan, focusing on MVCC visibility and the visibility map.
Clarifying Database Isolation Levels
An overview of transaction isolation levels, their behaviors, and practical strategies to manage concurrency in real-world database systems.
117 post articles, 15 pages.