Emne

Distribuerte systemer (DAT520)

Fakta

Emnekode DAT520

Vekting (stp) 10

Semester undervisningsstart Vår

Undervisningsspråk Engelsk

Antall semestre 1

Vurderingssemester Vår

Timeplan Vis timeplan

Litteratur Pensumlisten finner du i Leganto

Introduksjon

Emnet gir innsikt i både teoretiske og praktiske aspekter ved distribuerte datasystemer. Emnet har spesielt fokus på teknikker for å bygge feiltolerante systemer.

Innhold

Emnet gir innsikt i viktige teoretiske prinsipper ved distribuerte datasystemer, blant annet system-modeller for interaksjon og feil, interprosess kommunikasjon, synkronisering, tid og globale tilstander, protokoller for koordinering og konsensus (Paxos og Raft), distribuerte transaksjoner, feiltoleranse, konsistens, og replikering. Emnet tar også for seg konkrete systemer og arkitekturer for distribuerte systemer: map-reduce, distributerte hash tabeller, peer-to-peer system, gossip-baserte system, og distribuerte fil- og lagringssystemer.

Emnet omfatter også et større programmeringsprosjekt som er basert på konsepter og algoritmer fra undervisningen, der studentene må vise hvordan disse kan implementeres i praksis.

Programmeringsprosjektet som inngår i dette emnet skal utvikles i programmingsspråket Go.

Læringsutbytte

Kunnskap

  • Være kjent med viktige prinsipper for design og implementasjon av distribuerte datasystemer.
  • Være kjent med de viktigste systemarkitekturene for distribuerte datasystemer.
  • Være kjent med viktige teknikker for å løse ulike problemstillinger i distribuerte datasystemer.

Ferdighet

  • Være i stand til å utvikle distribuerte applikasjoner med feiltoleranse egenskaper.
  • Være i stand til å gjennomføre uavhengig forskning innen distribuerte systemer.
  • Kunne resonnere rundt problemstillinger som involverer distribuerte komponenter.

Generell kompetanse

  • Vite hvordan man utvikler distribuerte datasystemer.

Forkunnskapskrav

Ingen

Anbefalte forkunnskaper

Operativsystemer og systemprogrammering (DAT320)
Operativsystemer, datanettverk, avansert programmering

Eksamen / vurdering

Skriftlig eksamen

Vekt 1/1

Varighet 4 Timer

Karakter Bokstavkarakterer

Hjelpemiddel Ingen hjelpemidler tillatt

Digital eksamen.

Vilkår for å gå opp til eksamen/vurdering

Obligatoriske øvinger

Obligatoriske programmeringsoppgaver. Godkjent/ikke godkjent. Godkjenning skjer via eget innleveringssystem for automatisk evaluering, samt etterfølgende godkjenning på lab. Alle oppgavene må godkjennes for å gå opp til eksamen.

Gjennomføring av obligatorisk lab skal gjøres til de tider og i de grupper som er oppsatt. Fravær på grunn av sykdom eller av andre årsaker skal snarest mulig kommuniseres til laboratorie- eller fagansvarlig. Det kan ikke påregnes å få gjennomføre lab utenom oppsatt tid hvis dette ikke er kommunisert og ny avtale gjort.

Konsekvens av at du ikke har fått godkjent laboratoriearbeid er at du ikke får gå opp til eksamen i emnet.

Arbeidsformer

4 timer forelesninger og 4 timer laboratorieøvinger eller annet obligatorisk arbeid. Obligatoriske arbeidskrav (som innlevering, laboratorieoppgaver, prosjektoppgaver og lignende) skal godkjennes underveis innen angitte tidsfrister.

Overlapping

Emne Reduksjon (SP)
Distribuerte systemer (DAT520_1) , Distribuerte systemer (MID110_1) 10

Åpent for

Datateknologi - master Industriell økonomi - master Industriell økonomi - master
Utveksling ved Det teknisk-naturvitenskapelige fakultet

Opptakskrav

Søkeren må oppfylle opptakskravet til et av studieprogrammene som emnet er åpent for.

Emneevaluering

Fakultetet avgjør om det skal gjennomføres tidligdialog i alle emner eller i utvalgte grupper av emner. Formålet er å få tilbakemeldinger fra studentene for forbedringer i semesteret. I tillegg skal det gjennomføres en digital emneevaluering minst hvert tredje år for å innhente studentenes erfaringer.
Emnebeskrivelsen er hentet fra Felles studentsystem Versjon 1