IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Building Database Systems 
Kursusnavn (engelsk):Building Database Systems 
Semester:Efterår 2012 
Udbydes under:cand.it., softwareudvikling og -teknologi (sdt) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:12 
Forventet antal deltagere:45 
Maks. antal deltagere:65 
Formelle forudsætninger:This course assumes basic computer science and programming background. It requires that the participants have taken the introductory programming courses and the modeling course for the Software Development and Technology study programme.
-----
Information about study structure

This course is part of the SDT specialization Databases. 
Læringsmål:After the course students should be able to:

  • dimension a database system with back of the envelope calculations

  • analyze the design of existing database systems

  • identify the source of complexity in a given system

  • identify the bottlenecks of a system running on a modern computer

  • design a database component, based on core system design principles, in order to achieve given performance reqiurements

 
Fagligt indhold:Database systems are the foundation of many computer and web applications today. They are a commodity at the bottom of the software stack together with the operating system (including networking subsystem, IO subsystem, file system). This class digs into the principles that underly the design of such systems. This is important for two reasons. First, the database systems of tomorrow will likely be quite different from the database systems from today (which are pretty much the database systems of the 80s) -- this is because of the radical evolution of the underlying hardware and the emergence of flash technology, multicore processors and FPGAs. It is crucial to understand the underlying principles that drive the design of database systems to keep up with this evolution. Second, the lessons learned about how database systems are built can be re-invested when building other computer systems.

We will cover topics on the engineering of computer software systems in general, and database systems in particular. We will start with a short overview of the core hardware components (CPU, storage devices (hard drive, SSD), network cards) and of the corresponding abstractions that underlie the design of computer systems. We will then thoroughly illustrate the sources of complexity in computer systems, and the means to deal with them. We will then cover the central notions of naming, modularity and performance in the context of a case study of the MySQL/InnoDB system.

Note that this class is about design not programming. This being said, you will need programming skills (regardless of the programming languages that you know) to detail your design all the way down to pseudo-code. 
Læringsaktiviteter:14 ugers undervisning bestående af forelæsninger og øvelser

We will rely on QCM exercises throughout the lectures to favor student involvements and to prepare for the exam.

We will rely on labs, based on MySQL and DTrace: see the MySQL documentation on this topic as well as relevant videos from Brendan Gregg (here, here, here, here and here)

-----------

See the schedule here:
link to the time table
The schedule will be available shortly before the beginning of the term. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 7-trins-skala, Ekstern censur

The duration of the oral examination is 20 minutes per examinee (incl. group presentation).

Submission/completion of mandatory activities before Friday 30 November 2012 at 15:00.  

Litteratur udover forskningsartikler:Main course textbook:
Jerome H. Saltzer and M. Frans Kaashoek, Principles of Computer System Design: An Introduction, Morgan Kaufmann, 2009. 
 
Afholdelse (tid og sted)
Kurset afholdes på følgende tid og sted:
UgedagTidspunktForelæsning/ØvelserStedLokale
Mandag 08.00-09.50 Forelæsning ITU 2A54
Mandag 10.00-11.50 Øvelser ITU 2A54

Eksamen afholdes på følgende tid og sted:
EksamensdatoTidspunktEksamenstypeStedLokale
2012-12-17 No later than 3:00 PM Skriftlige arbejder ITU Examination Office
2013-01-18 Tidspunkt oplyses senere Mundtlig eksamen ITU 2A14
2013-01-21 Tidspunkt oplyses senere Mundtlig eksamen ITU 2A14
2013-01-22 Tidspunkt oplyses senere Mundtlig eksamen ITU 2A14