CS 186 at UC Berkeley
Introduction to Database Systems
Head GSI Lakshya Jain
lakshya.jain@berkeley.edu
Office Hours: W 2-3 Soda 341B, F 1-2 Soda 283H (Admin)
Week 0 Overview
Introductions
Week 2 Overview
Disks, Buffers, Files
Week 3 Overview
B+ Trees & Indices
Week 4 Overview
Buffer Management & Relational Algebra
Week 5 Overview
Sorting & Hashing
Week 6 Overview
Iterators & Joins
Week 7 Overview
Query Optimization
Week 8 Overview
Parallel Query Processing
Week 9 Overview
Transactions & Concurrency
Week 10 Overview
Database Design
Week 11 Overview
Unstructured Data: Searching Text
Week 12 Overview
Recovery & ARIES
Week 13 Overview
Distributed Transactions
Week 14 Overview
Conclusion
Week 15 Overview
RRR Week
Notes
In addition to the textbook, the staff will publish a set of lecture notes that serve as supplements to the edX lectures. Make sure you revisit the notes after lecture. Each note may be covered in one or more lectures. See Syllabus for more information.
- Note 0: SQL I
- Note 1: SQL II
- Note 2: Disk + Files
- Note 3: B Trees
- Note 4: Buffer Management
- Note 5: Sorting
- Note 6: Hashing
- Note 7: Iterators & Joins
- Note 8: Query Optimization
- Note 9: Parallel Query Processing
- Note 10: Transactions
- Note 11: Database Design
- Note 12: Recovery
- Note 13: Distributed Transactions
Discussions
In-person discussion sections are an optional and highly recommended component of this course, and you may attend whichever section(s) you like. In discussion, you'll learn more in depth about the previous week's content and you'll have the opportunity to ask your TA relevant conceptual questions. Here is a list of all the discussion sections for the course.
- Discussion 1: SQL (Solution) (Slides)
- Discussion 2: Disks/Files/Buffers (Solution) (Slides)
- Discussion 3: Indices, B+ Trees (Solution) (Slides)
- Discussion 4: Buffer Management (Solution) (Slides)
- Discussion 5: Sorting, Hashing (Solution) (Slides)
- Discussion 6: Joins (Solution) (Slides)
- Discussion 7: Query Optimization (Solution) (Slides)
- Discussion 8: Parallel Queries (Solution) (Slides)
- Discussion 9: Transaction & Concurrency (Solution) (Slides)
- Discussion 10: Functional Dependencies, ER Diagrams (Solution) (Slides)
- Discussion 11: Text Search (Solution) (Slides)
- Discussion 12: Recovery (Solution) (Slides)
- Discussion 13: Distributed Transactions (Solution) (Slides)
Homeworks
Throughout the semester, we will release 5 programming assignments via Piazza, each worth 7% of your grade. They are designed to cover distinct parts of the course and are done in SQL (HW1) and Java (HW 2 - 5). See Syllabus for more information.
- Homework 0: Setup
- Homework 1: SQL
- Homework 2: B+ Trees
- Homework 3: Joins + Query Optimization
- Homework 4: Locking
- Homework 5: Recovery
Lecture Slides
Slides generally follow the notes. Lecture videos are provided via edX. See Syllabus for more information.
- Slide 1: SQL I
- Slide 2: SQL II
- Slide 3: Disks, Files, Buffers I
- Slide 4: Disks, Files, Buffers II
- Slide 5: Disks, Files, Buffers III
- Slide 6: B+ Trees
- Slide 7: Indexes, B+ Tree Refinements
- Slide 8: Buffer Management
- Slide 9: Relational Algebra
- Slide 10: Sorting & Hashing
- Slide 11: Iterators & Joins
- Slide 12: Query Optimization I
- Slide 13: Query Optimization II
- Slide 14: Parallel Query Processing
- Slide 15: Transaction & Concurrency I
- Slide 16: Transaction & Concurrency II
- Slide 17: Entity Relationship Models
- Slide 18: FDs and Normalization
- Slide 19: Searching Text
- Slide 20: Web Crawlers and IR
- Slide 21: Recovery
- Slide 22: Distributed Transactions
- Slide 23: NoSQL (Optional)
- Slide 24: Big Data and Data Wrangling (Optional)
- Slide 25: Closing Thoughts
Guerilla Section
Worksheets and their corresponding solutions from guerilla sections are posted here. Guerilla sections are optional and are encouraged as a way to ensure you're keeping up with the material.
- Guerilla Section 1 (Solution)
- Guerilla Section 2 (Solution) (Slides)
- Midterm 1 Review (Slides)
- Guerilla Section 3 (Solution) (Slides)
- Guerilla Section 4 (Solution) (Slides)
- Midterm 2 Review (Slides)
- Guerilla Section 5 (Solution) (Slides)
- Final Review (Slides)