CS 186 at UC Berkeley

Introduction to Database Systems

Professor Josh Hug


Office Hours: F 2-3, 4-5 Soda 779

Head GSI Lakshya Jain


Office Hours: W 2-3 Soda 341B, F 1-2 Soda 283H (Admin)

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

Week 9 Overview

Transactions & Concurrency

Week 11 Overview

Unstructured Data: Searching Text

Week 12 Overview

Recovery & ARIES

Week 13 Overview

Distributed Transactions

Week 15 Overview

RRR Week


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


Lecture Slides

Slides generally follow the notes. Lecture videos are provided via edX. See Syllabus for more information.


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.