DM556: Principper for databasesystemer (10 ECTS)

STADS: 15020401

Niveau
Bachelorkursus

Undervisningsperiode
Kurset er placeret i forårssemesteret.

Ansvarlige undervisere
Email: daniel@imada.sdu.dk

Yderligere undervisere
jamik@imada.sdu.dk

Skemaoplysninger
Hold Type Dag Tidsrum Lokale Uger Kommentar
Fælles I Tirsdag 16-19 U24 6-12,15-21
Fælles I Tirsdag 16-19 U8 14
H1 TE Mandag 14-16 U24 7,9,11,16,18,20
H1 TE Onsdag 08-10 U24 6-7,19
H1 TE Onsdag 10-12 U8 14
H1 TE Onsdag 16-18 U24 17
H1 TE Torsdag 12-14 U8 14
H1 TE Torsdag 14-16 U24 16
H1 TE Torsdag 12-14 U24 21
H1 TE Fredag 10-12 U31 8
H1 TE Fredag 10-12 U27A 9
H1 TE Fredag 10-12 U26A 10-12
H1 TE Fredag 10-12 U24 15,18,20
Vis hele skemaet
Vis personligt skema for dette kursus.

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

Indgangskrav:
Ingen

Faglige forudsætninger:
Studerende, der følger kurset, forventes at:
  • kunne designe og implementere programmer, ved hjælp af standard algoritmiske tilgange og datastrukturer.
  • kunne vurdere kompleksitet af algoritmer, såvel med hensyn til køretid som med hensyn til pladsforbrug.


Formål
Hovedformålet med kurset er at bibringe deltagerne en forståelse af implementationsaspekterne af databasesystemer med fokus på optimering af forespørgsler og transaktionsprocessering, samt distribuerede databaser og OLAP. 

Kurset bygger oven på den viden, der er erhvervet i kurserne DM507 Algoritmer og datastrukturer og DM505 Databasedesign- og programmering. Kurset giver fagligt grundlag for at vælge kurser, individuelle studieprojekter eller bachelorprojekt inden for databehandling systemer og databasesystemer senere på uddannelsen.

I forhold til uddannelsens kompetenceprofil har kurset eksplicit fokus på at:
  • Give viden om principper for konstruktion af computerhardware og styresystemer, herunder distribuerede og parallelle systemer;
  • udvikling af færdigheder i at analysere fordele og ulemper ved forskellige algoritmer, specielt med hensyn til ressourceforbrug.
  • udvikling af færdigheder i at træffe og begrunde fagligt relaterede beslutninger;
  • udvikling af færdigheder i at beskrive, formulere og formidle problemstillinger og resultater til enten fagfæller og ikke-specialister eller samarbejdspartnere og brugere;
  • giver kompetence i at håndtere komplekse og udviklingsorienterede situationer i studie- og arbejdssammenhænge;
  • giver kompetence i at identificere egne læringsbehov og strukturere egen læring i forskellige læringsmiljøer.


Målbeskrivelse
For at opnå kursets formål er det læringsmålet for kurset, at den studerende demonstrerer evnen til at:
  • forklare principperne bag relationelle og andre typer databasesystemer
  • forklare teknikker for datalagring og indeksering
  • forklare fundamentet for og teknikkerne til evaluering af SQL forespørgsler
  • forklare processen med at optimere en SQL forespørgsel
  • gøre rede for elementerne i en transaktionsmodel og afgøre om ACID egenskaberne er opfyldt
  • forklare hvordan de enkelte ACID egenskaber kan opfyldes gennem en struktureret transaktionsimplementation
  • redegøre for crash recovery under en transaktionsmodel
  • forklare og analysere teknikker for data partitionering og replikation
  • gøre rede for processen med at optimere en distribueret og parallel forespørgsel
  • forklare og analysere teknikker for distribueret concurrency kontrol
Indhold
Kurset indeholder følgende faglige hovedområder:
  • Datalagring og indeksering, 
  • forespørgselsprocessering og -optimering, 
  • database-tuning, 
  • egenskaber og implementation af ACID transaktionsmodeller,
  • distribuerede og parallel databasesystemer og 
  • OLAP.
 


Litteratur
    Meddeles ved kursets start


Kursets hjemmeside
Dette kursus benytter e-learn (blackboard).

Forudsætningsprøver
Ingen

Eksamen- og censurform:
  1. Mundtlig eksamen på baggrund af projektopgaver afleveret i løbet af kurset. Ekstern censur, 7-trinsskala. Karakteren baseres på en samlet vurdering af de to elementer som indgår i evalueringen. Projektopgaverne må løses i grupper af op til 3 personer. Projektopgaverne danner, sammen med udvalgte emner fra kurset, grundlag for den mundtlige eksamen. (10 ECTS). (15020402).
Nærmere beskrivelse af eksamensreglerne vil blive offentliggjort under 'Course Information' på kursets side i Blackboard.

Reeksamen i samme eksamenstermin eller i umiddelbar forlængelse heraf. Reeksamen er en mundtlig eksamen, der bedømmes med karakter efter 7-skalaen og ekstern censur.



Vejledende timetal
På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.
Introfase: 40 timer
Træningsfase: 40 timer, heraf:
 - Eksaminatorie: 40 timer

Aktiviteter i studiefasen
Anvendelse af det tilegnede viden i opgaven og projekter.Undervisningsform
Introfasen faciliterer introduction til nyt materiale og nye emner, som der i træningsfasen arbejdes med i opgaveform (forberedte hjemme til klassegennemgang) for at vaildere forståelsen. For den dybere forståelse for udvalgte emner er der projektarbejde, hvor der opnåes en mere hands-on erfaring.

Sprog
Dette kursus undervises på dansk eller engelsk, afhængigt af underviseren. Dog altid på Engelsk ved deltagelse af internationale studerende.

Bemærkninger
Bemærk at kurset blev udbudt sidste gang F18 og eksamen er efterfølgende blevet udbudt 3 gange.

Kurset kan ikke følges af studerende, der har bestået DM866 - Principper for Databasesystemer, som er kandidat udgaven af kurset.

Kursustilmelding
Se tilmeldingsfrister.

Pris for åben uddannelse
Se priser for enkeltkurser.

Dette er den nyeste version af en kursusbeskrivelse, som trådte i kraft den 1. feb 2018.