CS 186 at UC Berkeley | Spring 2020

Introduction to Database Systems

Professor Josh Hug


Office Hours: TBD

Professor Michael Ball


Office Hours: M 5-6, W 3-4 625 Soda

Week 0 Overview


Week 1 Overview


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


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.



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.



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 (Project 1) and Java (Project 2 - 5). See Syllabus for more information.


Guerrilla Section

Worksheets and their corresponding solutions from guerrilla sections are posted here. Guerrilla sections are optional and are encouraged as a way to ensure you're keeping up with the material.