Introduction to Databases

Alternate Names: 
Inleiding Databases
Level: 
Bachelor
Course Language: 
English
Responsible: 
Beat Signer
Assistant: 
Reinout Roels

The goal of this course is to teach students fundamental database concepts. This ranges from concepts and techniques of conceptual modelling and database design as well as the introduction of the basic components of a database, the relation between them and the methods for manipulating persistent data. Last but not least, the course will cover the different parts of a database management system (e.g. query processor, storage manager etc.) and provide a detailed description of the functionality of these components.

Lecture: Friday, 09:00-11:00, D.3.14
Exercise: Thursday, 13:00-15:00, E.1.4
Exercise: Thursday, 14:00-16:00, E.1.7

 


 

Lecture Schedule

Week 1 : Introduction

  • Overview
  • Conceptual Modelling and ER Model

Week 2 : Extended ER Model and other Modelling Languages

Week 3 : Relational Model and Relational Algebra

Week 4 : Relational Database Design

  • Reduction from ER to Relational Model
  • Functional Dependencies
  • Normalisation

Week 5 : Structured Query Language (SQL)

Week 6 : Advanced SQL

Week 7 : DBMS Architectures and Features

  • Main DBMS Components
  • Categories and Trends
  • Client-Server Architecture
  • Distribution

Week 8 : Storage Management

Week 9 : Access Methods

  • Indexing and Hashing

Week 10 : Query Processing and Optimisation

Week 11 : Transaction Management

  • Transactions
  • Concurrency
  • Recovery

Week 12 : Object and Object-Relational Databases

  • The Object-Oriented Database System Manifesto
  • ODMG Standard

Week 13 : Future Trends and Review