Introduction to Database Systems
UC Berkeley, Spring 2025
Alvin Cheung
Pronouns: he/him/his
OH: TBD
Hi all! I’m an EECS faculty and my group works on data systems research. Looking forward to meeting you all!
Lakshya Jain
Pronouns: he/him
OH: Monday 9-10 AM, virtual or by appointment
Hello! I’m a Cal alum who’s taught CS186 for years now, first as a TA and then as a lecturer. I did my undergraduate and masters’ degree from here and now work in industry as a software engineer. In my free time, I analyze elections. Go Bears!
- Notes are meant to be a supplement to lecture; they are not meant as a replacement. Notes do not cover the full scope of what is tested on exams.
- All lecture videos are posted on bcourses afterwards.
Zoom link for live lectures.
Week | Date | Lecture | Discussion | Vitamin | Project | Resources |
---|---|---|---|---|---|---|
1 | Jan. 22 | 0. Introduction & 1. SQL I | No Section | SQL (due 2/3) | Setup |
Alvin |
2 | Jan. 27 | 2. SQL II | SQL | SQL |
Alvin | |
Jan. 29 | 3. Disks, Buffers, Files | Alvin | ||||
3 | Feb. 3 | 4. Cost Models and Indexes | Disks + Files | Disks, Buffers, Files (due 2/10) | Alvin | |
Feb. 5 | 5. B+ Trees | B+ Trees |
Alvin | |||
4 | Feb. 10 | 6. B+ Trees and Costs | B+ Trees | B+ Trees (due 2/17) | Alvin | |
Feb. 12 | 7. Spatial & Vector Indexes | Alvin | ||||
5 | Feb. 17 | President’s Day | Buffer Management & Spatial Indexes | Buffer Management & Spatial/Vector Indexes (due 2/24) | ||
Feb. 19 | 8. Buffer Management | Alvin | ||||
6 | Feb. 24 | 9. Sorting and Hashing | Sorting & Hashing | Sorting and Hashing (due 3/3) | Joins + QO |
Lakshya |
Feb 26 | 10. Joins | Lakshya | ||||
Feb. 27 | Midterm 1 - unconfirmed | |||||
7 | Mar. 3 | 11. Iterators and Relational Algebra | Iterators and Joins | Iterators and Joins + Relational Algebra (due 3/10) | Lakshya | |
Mar. 6 | 12. Query Optimization: Plan Space | Lakshya | ||||
8 | Mar. 10 | 13. Query Optimization: Costs and Search | Query Optimization | Query Optimization (due 3/13) | Lakshya | |
Mar. 13 | 14. Transactions and Concurrency I | Locking |
Lakshya | |||
9 | Mar. 17 | 15. Transactions and Concurrency II | Transactions and Concurrency Control | Transactions and Concurrency Control (due 3/31) | Lakshya | |
Mar. 20 | 16. Transactions and Concurrency III | Lakshya | ||||
10 | Mar. 24 | Spring Break | ||||
Mar. 27 | Spring Break | |||||
11 | Mar. 31 | 17. Recovery I | Recovery | Recovery (due 4/7) | Lakshya | |
Apr. 3 | 18. Recovery II | Recovery |
Lakshya | |||
Apr. 3 | Midterm 2 (4/3) - unconfirmed | |||||
12 | Apr. 7 | 19. Parallel Query Processing | Parallel Query Processing | Parallel Query Processing (due 4/14) | Lakshya | |
Apr. 10 | 20. Distributed Transactions: 2-Phase Commit | Lakshya | ||||
13 | Apr. 14 | 21. Distributed Transactions: Paxos | Distributed Transactions | Distributed Transactions (due 4/21) | Alvin | |
Apr. 17 | 22. NoSQL I: data models | Alvin | ||||
14 | Apr. 21 | 23. NoSQL II: MongoDB | Consensus | Consensus (due 4/28) | NoSQL |
Alvin |
Apr. 24 | 24. NoSQL III: MapReduce and Spark | Alvin | ||||
15 | Apr. 28 | 25. Database Research [optional] | NoSQL | NoSQL (due 5/5) | Alvin | |
May. 1 | 26. AWS [Optional] | Lakshya | ||||
16 | May. 5 | RRR Week | RRR Week - Review Sections | |||
May. 8 | RRR Week | |||||
17 | May. 13 | Final (TBD) |