DM556: Principles of Database Systems (10 ECTS)

STADS: 15017101

Level
Bachelor course

Teaching period
The course is offered in the spring semester.

Teacher responsible
Email: zhou@imada.sdu.dk

Timetable
Group Type Day Time Classroom Weeks Comment
Common I Tuesday 12-14 U48A 7,9,11,13,19
Common I Wednesday 10-12 U140 5
Common I Wednesday 08-10 U155 17
Common I Thursday 14-16 U48A 5-14,17-19
H1 TE Tuesday 12-14 U48A 6,8,10,12,14,18
H1 TE Tuesday 14-16 U48A 11
H1 TE Wednesday 16-18 U153 6
H1 TE Wednesday 10-12 U155 7,14,16,18-19
H1 TE Wednesday 10-12 U143 9
H1 TE Wednesday 08-10 U153 13
H1 TE Thursday 08-10 U155 16
H1 TE Thursday 10-12 U153 17
H1 TE Friday 10-12 U153 10
Show entire timetable
Show personal time table for this course.

Comment:
Ubegrænset deltagerantal.

Prerequisites:
None

Academic preconditions:
Students taking the course are expected to:
  • be able design and implement programs, using standard algorithmic approaches and data structures.
  • be able to judge the complexity of algorithms, with regard to runtime as well as with regard to space usage.


Course introduction
The main purpose of this course is to give the participants an understanding of the implementation issues of database systems, with focus on query optimization and transaction processing, advanced concepts and techniques of database systems, such as distributed databases.

The course builds on the knowledge acquired in the courses DM507 Algorithms and Data Structures and DM505 Database Design and Programming. The course gives an academic basis for choosing courses, individual study activities or a bachelor project within data processing systems and database systems.

In relation to the competence profile of the degree it is the explicit focus of the course to:
  • give knowledge and understanding of the principles of computer architecture and operating systems, including distributed and parallel systems;
  • developing skills in analyzing advantages and disadvantages of different algorithms, in particular w.r.t. resource usage.
  • developing skills in deciding and justify professional decisions;
  • developing skills in describing, formulating and disseminating problems and results to either other professional or non-specialists or collaborative partners and users.
  • giving the competence to handle complex and development-oriented situations in study and work contexts;
  • giving the competence to identify one's own needs for learning and structure one's own learning in different learning environments.


Expected learning outcome
The learning objective of the course is that the student demonstrates the ability to:
  • explain the techniques of data storage and indexing
  • explain the foundations and techniques for evaluating an SQL query
  • explain the process of optimizing an SQL query
  • account for the ingredients of a transaction model and determine whether or not the ACID properties hold
  • explain how each of the ACID properties can be fulfilled by a structured transaction implementation
  • account for the advanced techniques of online data analysis
  • explain and analyze the techniques of data partitioning and replication
  • Describe the process of optimizing distributed or parallel queries
  • Explain and analyze the techniques of distributed concurrency control
Subject overview
The following main topics are contained in the course:
  • Data storage and indexing, 
  • query processing and optimization, 
  • database tuning, 
  • properties and implementation of ACID models of transactions,
  • distributed and parallel database systems and 
  • OLAP.
 


Literature
    Meddeles ved kursets start.


Website
This course uses e-learn (blackboard).

Prerequisites for participating in the exam
None

Assessment and marking:
  1. Oral exam based on the project. Pass/fail, internal evaluation by teacher. (3 ECTS). No exam aids allowed. (15017112).
  2. Oral exam. External examiner, Danish 7-mark scale (7 ECTS). No exam aids allowed. (15017102).
A closer description of the exam rules will be posted under 'Course Information' on Blackboard.
 

 


Expected working hours
The teaching method is based on three phase model.
Intro phase: 40 hours
Skills training phase: 40 hours, hereof:
 - Tutorials: 40 hours

Educational activities
Using the acquired knowledge in assignments and projects.Educational form
In the intro phase, concepts, theories and models are introduced and put into perspective. In the training phase, students train their skills through exercises and dig deeper into the subject matter. 

In addition to the specified hours, students are expected to continuously use the study groups for other course related activities.

Language
This course is taught in Danish or English, depending on the lecturer. However, if international students participate, the teaching language will always be English.

Course enrollment
See deadline of enrolment.

Tuition fees for single courses
See fees for single courses.