DM556: Principles of Database Systems (10 ECTS)

STADS: 15020401

Level
Bachelor course

Teaching period
The course is offered in the spring semester.

Teacher responsible
Email: daniel@imada.sdu.dk

Additional teachers
jamik@imada.sdu.dk

Timetable
Group Type Day Time Classroom Weeks Comment
Common I Tuesday 16-19 U24 6-12,15-21
Common I Tuesday 16-19 U8 14
H1 TE Monday 14-16 U24 7,9,11,16,18,20
H1 TE Wednesday 08-10 U24 6-7,19
H1 TE Wednesday 10-12 U8 14
H1 TE Wednesday 16-18 U24 17
H1 TE Thursday 12-14 U8 14
H1 TE Thursday 14-16 U24 16
H1 TE Thursday 12-14 U24 21
H1 TE Friday 10-12 U31 8
H1 TE Friday 10-12 U27A 9
H1 TE Friday 10-12 U26A 10-12
H1 TE Friday 10-12 U24 15,18,20
Show entire timetable
Show personal time table for this course.

Comment:
Ubegrænset deltagerantal. Samme skema som DM866.

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 and OLAP.

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 project assignments made during the course. External censor, 7-point scale. The grade is based on an overall assessment of the two elements that are included in the evaluation. Project assignments can be solved in groups of up to 3 people. The project assignments, together with selected subjects from the course, form the basis for the oral exam. (10 ECTS). (15020402).
A closer description of the exam rules will be posted under 'Course Information' on Blackboard.

Re-examination in the same exam period or in immediate extension. Reeksamen is an oral exam, which is graded according to the 7-point scale and external censor
 
 


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
The intro phase facilitates an introduction to new material and topics, which in the skills training phase are processed with exercises prepared at home and discussed in class to validate the aquired knowledge. For the deeper understanding of selected topics, the project work is incorporated to gain a more hands-on experiense.

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.

Remarks
Note that the course was offered last time F18 and exam has subsequently been offered 3 times.

The course cannot be chosen by students who have passed the course DM866 - Principles of Database Systems, som er the master version af the course.

Course enrollment
See deadline of enrolment.

Tuition fees for single courses
See fees for single courses.