Warning: Can't synchronize with the repository (Unsupported version control system "svn". Check that the Python support libraries for "svn" are correctly installed.)

Welcome to CS186, a hands-on introduction to Database Systems: their internal architecture, algorithms and data structures, theoretical underpinnings, and use. Topics include:

  • Engine Technology for Large Data Sets: disk layout, indexing, search and query processing algorithms, query optimization, transactional concurrency control, logging and recovery.
  • Data Models and Languages: Relational data model, formal relational languages (relational algebra and calculus), and SQL.
  • Text and Web Search: models and implementation, including Boolean search and ranking.
  • Database Design: Entity-Relationship modeling, relational schema design, physical design, functional dependencies and normalization, and database tuning.
  • Database application development: web-based database application implementation and object-relational mapping.

Work for the course includes team-oriented programming projects based on Ruby on Rails, and extensions to the PostgreSQL open-source database system, originally developed right here at Berkeley and now used worldwide.



The Events calendar now contains homework deadlines and exam dates for the semester. The Lecture calendar contains suggested reading assignments. Both are subject to change, but not without warning (in lecture.)