Welcome to CS186, a hands-on introduction to Database Systems: their
internal architecture, algorithms and data structures,
theoretical underpinnings, and use. Topics include:
Work for the course includes team-oriented programming projects based
on extensions to the PostgreSQL
open-source database system, originally developed right here at Berkeley
and now used worldwide.
- Engine Technology for Large
disk layout, indexing, search and query processing algorithms, query
optimization, transactional concurrency control, logging and
- Data Models and Languages: The
Relational model of data, formal relational languages (relational
algebra and calculus), and the SQL language. Text and web search
models and implementation, including Boolean search and ranking.
Extensions to the relational model including object-relational
features, XML and associated query languages.
- Database Design: Entity-Relationship
modeling, logical relational schema design, physical design, functional
dependencies and normalization, and database tuning.
- Database application
development: Application-level database APIs including
host-languages embeddings library interfaces like JDBC, and web script
interfaces like PHP.