Parallelle og distribuerte databaser del II
|
|
- Arvid Viggo Thorbjørnsen
- 7 år siden
- Visninger:
Transkript
1 UNIVERSITETET I OSLO Parallelle og distribuerte databaser del II CAP-teoremet (kursorisk) Databaser i mobile ad-hoc-nettverk (kursorisk) Paxos algoritmer for å oppnå konsensus i distribuerte systemer (ikke pensum i 2014) Datamodeller i NoSQL (ikke pensum i 2014) Institutt for Informatikk INF Ellen Munthe-Kaas 1
2 CAP-teoremet CAP-teoremet: I et distribuert system er det ikke alltid mulig å tilby samtlige av følgende tre garantier: Consistency en forespørsel vil på et gitt tidspunkt gi samme svar/respons uansett hvilken node den eksekveres på Availability hver forespørsel resulterer i en respons Partition tolerance systemet fortsetter å være virksomt selv om meldinger kan gå tapt (deler av nettverket feiler) eller deler av nodene feiler/går ned INF Ellen Munthe-Kaas 2
3 CAP-teoremet utdypet I Med consistency menes det som dekkes av A+C i ACID, dvs. at en enkelt forespørsel+respons skal utføres atomært og bevare konsistens. Med availability menes at enhver forespørsel til en ikkefeilet node skal resultere i en respons. (Den opprinnelige formuleringen av CAP-teoremet sier at «så godt som alle» forespørsler skal motta en respons, for i praksis kan man ikke garantere 100% tilgjengelighet.) INF Ellen Munthe-Kaas 3
4 CAP-teoremet utdypet II CAP-teoremet ble opprinnelig formulert med tanke på web service-systemer, men ideene er gyldige uansett hvilket formål det distribuerte systemet har En populær, men overforenklet fremstilling av CAPteoremet sier at man i ethvert distribuert system må velge «to av tre», dvs. CA, CP eller AP. Men CA er ikke egentlig en opsjon i et tjenesteytende distribuert system man må designe ethvert slikt system med tanke på at nettverket kan feile. INF Ellen Munthe-Kaas 4
5 CAP-teoremet utdypet III Når en nettverkspartisjon oppstår, må man velge mellom konsistens og tilgjengelighet, man kan ikke tilby begge. CP: Hvis man velger konsistens fremfor tilgjengelighet, kan operative noder måtte avslå å yte tjenester (dvs. forespørsler må kanskje besvares med «prøv igjen senere» eller liknende) AP: Hvis man velger tilgjengelighet fremfor konsistens, kan det være at når nettverket igjen virker som det skal, er det inkonsistenser i systemet der systemet ikke selv kan rydde opp i/bli kvitt alle inkonsistensene INF Ellen Munthe-Kaas 5
6 Eksempel: Bestilling av hotellrom To personer ønsker å bestille samme rom i samme hotell for samme tidsrom. Bestillingssystemet er distribuert over to noder med replikater på begge. Nettverket mellom nodene er nede. Alternativer: CP: Ingen rom kan bestilles (hver av forespørslene besvares med «ikke tilgjengelig/prøv senere» selv om hver av nodene er fullt operativ). AP: Begge bestillingene går igjennom (inkonsistens/overbooking). Inkonsistensen rettes når personene ankommer hotellet (ved at hotellet har et ekstra rom som er avsatt til å håndtere overbooking). INF Ellen Munthe-Kaas 6
7 CAP-teoremet i praksis I praksis er det ikke et enten-eller, men en glidende overgang/tradeoff mellom de to altermativene. Man kan f.eks. velge forskjellig tilnærming (CP/AP) for forskjellige funksjoner/operasjoner I praksis er det dessuten en tradeoff mellom konsistens og responstid. Jo mer konsistens man krever, desto flere noder må involveres i arbeidet med å gjennomføre dette, og jo lenger tid tar det å respondere på en forespørsel Denne formen for tradeoff gjelder selv om det ikke er noen nettverkspartisjoner INF Ellen Munthe-Kaas 7
8 Mobile ad-hoc-nettverk Mobile ad-hoc-nettverk (MANETs) er (lokale) trådløse nettverk som settes opp mellom noder som kommer i kommunikasjonsavstand til hverandre MANETs er karakterisert ved hyppige endringer i den underliggende topologien noder forflytter seg naboskap endres nettverk partisjoneres og smelter sammen kommunikasjon skjer via radiobåndet stor feilrate (kollisjoner av meldinger i eteren) lav båndbredde hver nettverkspartisjon består av i høyden noder mer enn dette er ikke praktisk håndterbart (pga. feilraten) INF Ellen Munthe-Kaas 8
9 Databaser i mobile ad-hoc-nettverk Krav til databasesystemet er omtrent som for P2P-nettverk. I tillegg er det ytterligere utfordringer knyttet til begrensninger i nettverkskapasitet og hyppige endringer i nettverkstopologien: Distribuert: Data er fordelt mellom nodene. Optimalt antall og opimal plassering av replikater avhenger av nettverkstopologien. Desentralisert: Nodene må kollektivt ivareta det administrative ansvaret for databasen. Ved nettverkspartisjoner må databasen overleve i hver av partisjonene. Ved sammensmelting av nettverk må databasepartisjonene samordnes. Feiltolerant: Systemet må være pålitelig selv om noder feiler, naboskap endres, nettverket partisjoneres eller nettverk smelter sammen. Skalerbart: Størrelsen på hver nettverkspartisjon er begrenset, derfor er ikke dette kravet like fremtredende som i P2P-nettverk. Konsistent: Kan ikke holde replikater konsistente på tvers av nettverkspartisjoner. Må gjøre avveiinger mellom CP og AP i CAP-teoremet INF Ellen Munthe-Kaas 9
10 Eksempel: MIDAS Dataspace EU-prosjekt med åtte internasjonale partnere. Fra Ifi: Forskningsgruppen DMMS (Distribuerte multimediasystemer) Formål: Mellomvare som støtter utvikling av applikasjoner for MANETs Applikasjonsscenarier: Redningsaksjoner og store sportsarrangementer Prototyp som ble testet ut i emuleringsomgivelse og på små håndholdte enheter (PDAer) Proof-of-concept-applikasjoner: Det 32. internasjonale sykkelcrossløpet i Gieten, Nederland, 2007 De Nijmegen Vierdaagse, 2008 (firedagers turmarsj i Nijmegen, Nederland) INF Ellen Munthe-Kaas 10
11 Datahåndtering i MIDAS I Dataelementer er replikert på tvers av noder for at noder skal beholde sin funksjonalitet ved nettverkspartisjoner systemet prioriterer tilgjengelighet (AP) fremfor konsistens (CP): noder kan fortsette å jobbe på sin lokale kopi Replikater må likevel så langt som mulig holdes konsistente (de skal representere samme logiske enhet) Antall replikater må balanseres mot økt nettverkstrafikk oppdateringer av et dataelement krever meldingsutveksling mellom alle replikatene INF Ellen Munthe-Kaas 11
12 Datahåndtering i MIDAS II Konsistens på tvers av nettverkspartisjoner kan ikke garanteres noder i forskjellige nettverkspartisjoner kan ikke kommunisere replikater i forskjellige nettverkspartisjoner kan derfor utvikle seg ulikt Når to partisjoner smelter sammen, må konsistens gjenopprettes Løsning: Versjonering ingen sletting eller endring av gamle data to replikater samordnes ved å utveksle alle versjoner av dataelementet applikasjoner må selv velge hvordan semantiske konflikter skal løses (hvilken versjon av et dataelement som er den rette når dette f.eks. ikke kan avledes fra tidsstempler på versjonene) selv med versjonering (ingen data slettes) forblir datamengden overkommelig i de gitte applikasjonsscenariene INF Ellen Munthe-Kaas 12
13 Oppslagstjenester i MIDAS Hver node vedlikeholder en oversikt (metadata) over hvilke replikater som befinner seg på hvilke noder Når nye replikater opprettes, propageres metadata om dette til alle noder i nettverkspartisjonen Radiobølger betyr at meldinger kringkastes (alle i lytteavstand lytter på alle meldinger som sendes). Dette utnyttes i valg av algoritmer for metadatapropagering Størrelsen på total mengde metadata forblir liten i applikasjonsscenariene Når to partisjoner smelter sammen, utveksles metadata En node vil ikke nødvendigvis ha en perfekt global oversikt fordi det tar tid før endringer i metadata er propagert til alle Propagering av metadata i en nettverkspartisjon krever flere meldinger når ikke alle noder er i direkte kommunikasjonsavstand til hverandre (multihop) INF Ellen Munthe-Kaas 13
14 Paxos Utgangspunkt: Et distribuert system av N samarbeidende noder som trenger å oppnå konsensus/komme frem til en felles beslutning. Noder kan feile og meldinger bli borte Samme melding kan bli levert flere ganger En melding kan bruke vilkårlig lang tid på å bli levert Paxos-algoritmen består av en eller flere avstemningsrunder der målet er at nodene skal vedta ett felles dekret. (Dekretet representerer eller beskriver den felles beslutningen.) Hvis en majoritet av nodene blir enige om et dekret, blir det vedtatt. INF Ellen Munthe-Kaas 14
15 Paxos-algoritmen I hver avstemningsrunde foreligger ett forslag til dekret. Dekretet kan variere fra runde til runde. Bare ett av dekretene som fremmes, kan/vil bli vedtatt. I hver runde kan en node enten stemme for dekretet eller la være å stemme. I utgangspunktet er alle noder positivt innstilt til alle forslag til dekreter. Hvis en node ikke besvarer en melding, er det fordi ett av følgende har skjedd: meldingen eller svaret gikk tapt noden gikk ned før den fikk meldingen eller før den fikk svart på meldingen noden velger å ikke besvare meldingen INF Ellen Munthe-Kaas 15
16 Avstemningsrundene Hver avstemningsrunde tilordnes et nummer (b,p) der b er et tall og p en node. Rundenumrene ordnes leksikografisk: (b,p) b p q. Flere runder kan pågå samtidig hvis flere noder velger å påbegynne nye runder omtrent samtidig og/eller en node velger å påbegynne en ny runde, typisk fordi den ikke fikk inn nok svar i foregående runde. Rundenummeret reflekterer ikke nødvendigvis i hvilken rekkefølge rundene faktisk gjennomføres, men en og samme node tildeler sine runder stigende nummere. INF Ellen Munthe-Kaas 16
17 Fasene i en avstemningsrunde A. Forberedelsesfasen: En node ønsker å initiere en ny avstemningsrunde. Noden innhenter informasjon fra et tilstrekkelig stort antall noder om i hvilken runde de sist stemte, og hvilket dekret som da var oppe til avstemning. B. Stemmefasen: Noden initierer en ny avstemningsrunde der dekretet det skal stemmes over og hvilke noder som skal være med i avstemningen (et kvorum Q), delvis blir bestemt utifra de svarene som ble innhentet i fase A. C. Vedtaksfasen: Hvis alle i kvorumet stemte, er dekretet vedtatt og noden sender dekretet til samtlige noder i N. INF Ellen Munthe-Kaas 17
18 Variable og initialverdier lasttried p = b (b,p) er rundenummeret til siste runde initiert av node p. Initielt: - prevvote p = (b,q,d) (b,q) er høyeste rundenummer blant de rundene der node p har stemt. d er dekretet som var oppe til avstemning i runden. Initielt: (-, nil, BLANK) nextballot p = (b,q) (b,q) er høyeste rundenummer blant de rundene der node p har sagt seg villig til å delta. Initielt: (-, nil) outcome p = d d er det vedtatte dekretet. Initielt: BLANK INF Ellen Munthe-Kaas 18
19 Fase A forberedelsesfasen 1. Node p velger en ny b lasttried p. lasttried p := b. Send meldingen NextBallot(b,p) til en mengde noder M der M N. 2. Node q mottar en NextBallot(b,p)-melding: Hvis (b,p) nextballot q : nextballot q := (b,p). Send meldingen LastVote(b,p,prevVote q ) til p. Hvis (b,p) nextballot q : Ignorer meldingen. INF Ellen Munthe-Kaas 19
20 Fase B - stemmefasen 3. Node p har mottatt en LastVote(b,p,v)-melding fra alle noder i en mengde Q M der Q utgjør en majoritet av nodene og b = lasttried p : Velg dekret d (se algoritme neste side). Send meldingen BeginBallot(b,p,d) til hver av nodene i Q. 4. Node q mottar en BeginBallot(b,p,d)-melding: Hvis (b,p) = nextballot q : prevvote q := (b,p,d) Send meldingen Voted(b,p,q) til p. Ellers: Ignorer meldingen. INF Ellen Munthe-Kaas 20
21 Fase B valg av dekret Hvis samtlige LastVote(b,p,v) har v = (-, nil, BLANK), kan dekretet i avstemningsrunde (b,p) velges fritt. Hvis det finnes minst én b - (da er q nil og BLANK), så finn den med størst Dette, sammen med at kvorumet i hver runde må omfatte en majoritet av nodene, sikrer at avstemningsrundene vil konvergere mot et felles dekret. INF Ellen Munthe-Kaas 21
22 Fase C - vedtaksfasen 5. Node p har mottatt en Voted(b,p,q)-melding fra hver av nodene i Q, der b = lasttried p : outcome p := d Send meldingen Success(d) til hver av nodene i N. 6. Node q mottar en Success(d)-melding: outcome q := d INF Ellen Munthe-Kaas 22
23 Konsistens og vranglås Algoritmen sikrer konsistens, dvs. alle noder der outcome p = d BLANK, har samme verdi d. Algoritmen hindrer vranglås (deadlock): Til ethvert tidspunkt er det alltid mulig å gjennomføre en runde som leder til et vedtak, såsant tilstrekkelig mange meldinger kommer frem og besvares i hver fase. INF Ellen Munthe-Kaas 23
24 Fremdrift I utgangspunktet kan en node fritt velge å la være å besvare meldinger. Dette påvirker ikke konsistensen, men kan hindre at nodene oppnår konsensus/kommer frem til en beslutning. For å sikre at algoritmen har fremdrift, må alle noder forplikte seg til å gjennomføre stegene 2-6 så raskt de kan (besvare meldinger så lojalt som mulig). I tillegg må, så lenge det ikke er vedtatt noe dekret, nye runder (steg 1) initieres fra tid til annen. Dessuten må ikke nye runder initieres for ofte: Hvis det stadig initieres nye runder, risikerer man at ingen av rundene lykkes (livelock). Det er enklest å møte utfordringene i de to foregående punktene hvis en av nodene velges til president og bare presidenten får initiere avstemningsrunder. Da må man i tillegg ha en protokoll for valg av ny president hvis presidentnoden går ned. INF Ellen Munthe-Kaas 24
25 NoSQL NoSQL er et paraplybegrep som omfatter en rekke ulike typer DBMSer. Typiske egenskaper ved NoSQL-databaser: Datamodell avviker fra relasjonsmodellen Intet fast (eksplisitt) skjema enklere å videreutvikle databasen Enorme mengder data store maskinclustere Open-source INF Ellen Munthe-Kaas 25
26 Datamodeller under NoSQL Grafmodellen: Data er strukturert i form av entiteter (noder) og kanter som reflekterer hvordan entitetene forholder seg til hverandre. Søk: Angi hvordan grafen skal navigeres. Aggregatorienterte modeller: Et aggregat er i denne forbindelsen en samling av data som utgjør en naturlig enhet, dvs. spørringer og transaksjoner er typisk begrenset til ett og ett aggregat og involverer sjeldnere samlinger av aggregater. Hvert aggregat lagres som en enhet. Transaksjoner mot aggregater har typisk ACIDegenskapene INF Ellen Munthe-Kaas 26
27 Aggregatorienterte modeller Key-value store: Data er på formen (k,v) der k er en nøkkel og v en verdi. Søk: Oppgi k, finn tilhørende v. Document database: Data består av nestede strukturer av navn-verdi-par. Hvert «dokument» inneholder én slik kompleks datastruktur. Søk: Finn verdi for et gitt navn med angivelse av hvor i strukturen navn-verdiparet befinner seg. Column family database: Data er strukturert etter samhørende kolonner. Kolonnefamilier knyttes sammen med en radnøkkel. Søk: Angi radnøkkel og kolonnefamilienavn. INF Ellen Munthe-Kaas 27
28 Introduksjon til NoSQL Se følgende introduksjon til NoSQL av Martin Fowler (GOTO Aarhus Conference 2012): (Varighet: 55 min.) Temaer: Historikken bak NoSQL Datamodeller i NoSQL Distribusjonsmodeller (sharding, replikering) ACID vs. BASE CAP-teoremet Når og hvorfor bruke NoSQL INF Ellen Munthe-Kaas 28
Parallelle og distribuerte databaser del II
UNIVERSITETET I OSLO Parallelle og distribuerte databaser del II Paxos consensus Paxos commit Databaser i peer-to-peer-systemer (P2P) Databaser i mobile ad-hoc-nettverk (MANET) Institutt for Informatikk
DetaljerParallelle og distribuerte databaser del II
UNIVERSITETET I OSLO Parallelle og distribuerte databaser del II Paxos consensus Paxos commit Databaser i peer-to-peer-systemer (P2P) Databaser i mobile ad-hoc-nettverk (MANET) Institutt for Informatikk
DetaljerParallelle og distribuerte databaser del III
UNIVERSITETET I OSLO Parallelle og distribuerte databaser del III NoSQL og alternative datamodeller Institutt for Informatikk INF3100 20.4.2015 Ellen Munthe-Kaas 1 NoSQL NoSQL er et paraplybegrep som omfatter
DetaljerParallelle og distribuerte databaser
UNIVERSITETET IOSLO Parallelle og distribuerte databaser Institutt for Informatikk INF3100 28.3.2011 Ellen Munthe-Kaas 1 Parallellberegninger Database på én storskala parallellmaskin: Utnytter parallelliteten
DetaljerParallelle og distribuerte databaser del I
UNIVERSITETET I OSLO Parallelle og distribuerte databaser del I Databaser på parallellmaskiner; map-reduce Distribuerte databaser Distribusjonsmodeller (sharding, replikering) Distribuerte transaksjoner:
DetaljerAnta at det er 3 noder og at node 1 vil fremme dekretet "NEI" og de andre nodene dekretet "JA" hvis de får muligheten til det.
Paxos consensus Anta at det er 3 noder og at node 1 vil fremme dekretet "NEI" og de andre nodene dekretet "JA" hvis de får muligheten til det. 1. Forklar forløpet i Paxos consensus hvis node 1 er utpekt
DetaljerParallelle og distribuerte databaser
UNIVERSITETET I OSLO Parallelle og distribuerte databaser Institutt for Informatikk INF3100 11.4.2013 Ellen Munthe-Kaas 1 Parallellberegninger Database på én storskala parallellmaskin: Utnytter parallelliteten
DetaljerFakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4190 Distribuerte systemer Onsdag 4. august 2004, 0900 1300
Side 1 av 9 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjon
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer Institutt for Informatikk INF300-9..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Beslektet
DetaljerLøsningsforslag for Eksamensoppgave i TDT4190 Distribuerte systemer
Institutt for datateknikk og informasjonsvitenskap Løsningsforslag for Eksamensoppgave i TDT4190 Distribuerte systemer Faglig kontakt under eksamen: Jon Olav Hauglid Tlf.: 93 80 58 51 Eksamensdato: Onsdag
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-22.1.2013 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt en relasjon R(XYZ) med FDer F.
DetaljerParallelle og distribuerte databaser Del I
UNIVERSITETET I OSLO Parallelle og distribuerte databaser Del I Institutt for Informatikk INF3100 7.4.2014 Ellen Munthe-Kaas 1 Parallellberegninger Database på én storskala parallellmaskin: Utnytter parallelliteten
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-1.2.2010 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon
DetaljerUNIVERSITETET. Relasjonsdatabasedesign
UNIVERSITETET IOSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-31.1.2011 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt et relasjonsskjema R(XYZ) med FDer
DetaljerMaps og Hashing. INF Algoritmer og datastrukturer. Map - ADT. Map vs Array
Maps og Hashing INF0 - Algoritmer og datastrukturer HØSTEN 00 Institutt for informatikk, Universitetet i Oslo INF0, forelesning : Maps og Hashing Map - Abstrakt Data Type (kapittel.) Hash-funksjoner (kapittel..)
DetaljerFakultet for informasjonsteknologi, Løsning på eksamen i TDT4190 Distribuerte systemer Torsdag 9. juni 2005, 0900 1300
Side 1 av 10 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på eksamen i
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-8..008 Ragnar Normann Institutt for Informatikk Hva kjennetegner god relasjonsdatabasedesign? Beslektet
DetaljerHashing. INF Algoritmer og datastrukturer HASHING. Hashtabeller
Hashing INF2220 - Algoritmer og datastrukturer HØSTEN 200 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning : Hashing Hashtabeller (kapittel.) Hash-funksjoner (kapittel.2) Kollisjonshåndtering
DetaljerØving 5: Transaksjonshåndtering, logging og normalisering
Øving 5: Transaksjonshåndtering, logging og normalisering Lars Kirkholt Melhus Oppgave 1 a) ACID Atomic En transaksjon er en minste enhet. Alle ledd i transaksjonen må gå feilfritt for at transaksjonen
DetaljerMaps og Hashing. INF Algoritmer og datastrukturer. Map - ADT. Map vs Array
Maps og Hashing INF0 - Algoritmer og datastrukturer HØSTEN 00 Institutt for informatikk, Universitetet i Oslo INF0, forelesning : Maps og Hashing Map - Abstrakt Data Type Hash-funksjoner hashcode Kollisjonshåndtering
DetaljerFakultet for informasjonsteknologi, Løsning på kontinuasjonseksamen i TDT4190 / SIF8042 Distribuerte systemer August 2005, 0900 1300
Side 1 av 11 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjonseksamen
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 3: Maps og Hashing Bjarne Holen (Ifi, UiO) INF2220 H2009, forelesning 3 1 / 25 Maps
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 13: Dynamisk programmering (Ifi, UiO) INF2220 H2017, forelesning 13 1 / 30 Dagens plan Dynamisk
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 11. juni 2012 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 5 sider. Vedlegg: Ingen Tillatte
DetaljerRelasjonsdatabasedesign
Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-4..005 - Ragnar Normann Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet
DetaljerFakultet for informasjonsteknologi, Løsning på kontinuasjonseksamen i TDT4190 Distribuerte systemer 19. august 2006,
Side 1 av 8 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjonseksamen
DetaljerIN Algoritmer og datastrukturer
IN010 - Algoritmer og datastrukturer HØSTEN 018 Institutt for informatikk, Universitetet i Oslo Forelesning 6: Grafer III Ingrid Chieh Yu (Ifi, UiO) IN010 0.10.018 1 / 0 Dagens plan: Dybde-først søk Biconnectivity
DetaljerKapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process
INF 329 Web-teknologier Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process Navn: Bjørnar Pettersen bjornarp.ii.uib.no Daniel Lundekvam daniell.ii.uib.no Presentasjonsdato:
DetaljerKompleksitet og Beregnbarhet
Kompleksitet og Beregnbarhet 16. September, 2019 Institutt for Informatikk 1 Dagens plan Avgjørelsesproblemer. P EXPTIME NP Reduksjoner NP-kompletthet Uavgjørbarhet UNDECIDABLE DECIDABLE PSPACE NPC NP
DetaljerFakultet for informasjonsteknologi,
Side 1 av 9 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på SIF8037 Distribuerte
DetaljerA study of different matching heuristics. Hovedfagspresentasjon Jan Kasper Martinsen
A study of different matching heuristics Hovedfagspresentasjon Jan Kasper Martinsen (janma@ifi.uio.no) Terminologi: Graf teori En graf består av et sett med noder Nodene er tilknyttet hverandre ved hjelp
DetaljerLøsningsforslag til Eksamensoppgave i TDT4190 Distribuerte systemer
Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til Eksamensoppgave i TDT4190 Distribuerte systemer Faglig kontakt under eksamen: Jon Olav Hauglid Tlf.: 93 80 58 51 Eksamensdato: Lørdag
DetaljerPresentasjon av doktorgradsprosjekt
Presentasjon av doktorgradsprosjekt Fredag Jon Grov Tre deler Del 1 - litt om transaksjonshåndtering. Del 2 - om doktorgradsarbeidet. Del 3 - bittelitt om Python og SimPy (bare hvis vi har tid). 1 av 14
DetaljerINF 329: Web-Teknologier. Dataimplementasjon. Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004
INF 329: Web-Teknologier Dataimplementasjon Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004 av: Dag Viggo Lokøen (dagvl@ii.uib.no) Kent Inge F. Simonsen (kentis@ii.uib.no)
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-25.1.2016 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon
DetaljerDDBS. Distribuerte databasesystemer
UNIVERSITETET I OSLO DDBS Distribuerte databasesystemer Ragnar Normann INF5030 8. og 15.9.2005 Ragnar Normann 1 Støttelitteratur Özsu & Valduriez: Principles of Distributed Database Systems Second Edition
DetaljerOppsummering. Thomas Lohne Aanes Thomas Amble
Oppsummering Thomas Lohne Aanes Thomas Amble 14.11.04 Kapittel 2: Data Modell Mål: Data som skal brukes av applikasjonen blir spesifisert på en formell og likevel intuitiv måte. Resultat: Vi får et konseptuelt
DetaljerNormalformer utover 4NF (ikke pensum)
UNIVERSITETET I OSLO Normalformer utover 4NF (ikke pensum) Institutt for Informatikk INF3100 - Ellen Munthe-Kaas 1 Høyere normalformer, oversikt 1NF BCNF 4NF ETNF RFNF = KCNF SKNF 5NF INF3100 - Ellen Munthe-Kaas
Detaljer... Når internminnet blir for lite. Dagens plan: Løsning: Utvidbar hashing. hash(x) katalog. O modellen er ikke lenger gyldig ved
Dagens plan: Utvidbar hashing (kapittel 5.6) B-trær (kap. 4.7) Abstrakte datatyper (kap. 3.1) Stakker (kap. 3.3) Når internminnet blir for lite En lese-/skriveoperasjon på en harddisk (aksesstid 7-12 millisekunder)
DetaljerRelasjonsdatabasedesign
UNIVERSITETET IOSLO Relasjonsdatabasedesign Tapsfri dekomposisjon Normalformer INF3100-26.1.2009 Ragnhild Kobro Runde 1 Repetisjon: funksjonell avhengighet Gitt et relasjonsskjema R(A1,A2,,An) og la X,
DetaljerRelasjonsdatabasedesign. Ekstramateriale: Normalformer utover 4NF (ikke pensum)
UNIVERSITETET I OSLO Relasjonsdatabasedesign Ekstramateriale: Normalformer utover 4NF (ikke pensum) Institutt for Informatikk INF3100-26.1.2012 Ellen Munthe-Kaas 1 Høyere normalformer, oversikt 1NF BCNF
DetaljerForprosjektrapport. Utvikle en plattform for digitalisering av foosballbord.
Forprosjektrapport Tittel Oppgave Periode Openfoos Utvikle en plattform for digitalisering av foosballbord. 3. januar til 15. juni Gruppemedlemmer Amir Ghoreshi Marcel Eggum Neberd Salimi Valentin Rey
DetaljerINF3100 V2018 Obligatorisk oppgave nr. 2
INF3100 V2018 Obligatorisk oppgave nr. 2 Oppgavesettet skal løses og leveres individuelt. Gjennomføring og innlevering av oppgaven skal skje i henhold til gjeldende retningslinjer ved Institutt for informatikk,
DetaljerLars Vidar Magnusson
B-Trær Lars Vidar Magnusson 5.3.2014 Kapittel 18 B-trær Standard operasjoner Sletting B-Trær B-trær er balanserte trær som er designet for å fungere bra på sekundære lagringsmedium e.g. harddisk. Ligner
DetaljerUNIVERSITETET I OSLO INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper og underbegrepsforklaringer Kombinerte påkrevde roller Undertrykking av begreper Ekvivalente stier og joinskranker Behandling
DetaljerSystemfeil og logging
UNIVERSITETET I OSLO Systemfeil og logging Institutt for Informatikk INF3100 2.3.2016 Ellen Munthe-Kaas 1 Integritetsregler Vi ønsker at data alltid skal være korrekte: Integritetsregler er predikater
DetaljerDagens plan: INF Algoritmer og datastrukturer. Eksempel. Binære Relasjoner
Dagens plan: INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 10: Disjunkte Mengder Definisjon av binær relasjon Definisjon av ekvivalens
DetaljerDokumenter som skal inngå i en melding kan opprettes og signeres uavhengig av hverandre.
Systembeskrivelse for eksterne aktører Med milepæl 3 gir Kartverket neste innblikk i den kommende løsningen for elektronisk tinglysing. Milepæl 3 gir eksterne aktører mulighet til å få innsikt i grensesnitt
DetaljerDette er et lite notat der jeg forsøker å beskrive hvordan innblandinger kan implementeres og visualiseres i MUSIT sine databaser og applikasjoner.
OM INNBLANDINGER Stein Olsen, 27. oktober 2013 Dette er et lite notat der jeg forsøker å beskrive hvordan innblandinger kan implementeres og visualiseres i MUSIT sine databaser og applikasjoner. Jeg sier
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 10: Disjunkte Mengder Bjarne Holen (Ifi, UiO) INF2220 H2009, forelesning 10 1 / 27
DetaljerUNIVERSITETET I OSLO INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper og underbegrepsskranker Kombinerte totale roller Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende
DetaljerINF2220: Gruppe me 2. Mathias Lohne Høsten 2017
INF0: Gruppe me Mathias Lohne Høsten 0 1 Rød-svarte trær Vanlige binære søketrær blir fort veldig ubalanserte. røv å sett inn 1,,, 4, 5,, 7,... (i den rekkefølgen) i et binært søketre. Da vil vi i praksis
DetaljerLøsningsforslag Eksamen i TDT4190 Distribuerte systemer
Institutt for datateknikk og informasjonsvitenskap Løsningsforslag Eksamen i TDT4190 Distribuerte systemer Faglig kontakt under eksamen: Norvald Ryeng Tlf.: 97 17 49 80 Eksamensdato: Fredag 6. juni 2014
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-20.1.2014 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt en relasjon R(XYZ) med FDer F.
DetaljerNotat for oblig 2, INF3/4130 h07
Notat for oblig 2, INF3/4130 h07 Dag Sverre Seljebotn 15. oktober 2007 Jeg har skrivd et noe langt notat for oblig 2 som interesserte kan se på. Merk at dette er kun for å gi et par tips (for oppgave 3
DetaljerLineære ligningssystemer og gausseliminasjon
Kapittel Lineære ligningssystemer og gausseliminasjon Vi skal lære en metode for å finne og beskrive alle løsninger av systemer av m lineære ligninger med n ukjente Oppvarming Her er et eksempel på et
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-26.1.2015 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon
DetaljerIN Algoritmer og datastrukturer
IN2010 - Algoritmer og datastrukturer HØSTEN 2018 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 3: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2010 H2018, forelesning
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF3100-17.1.2014 Ellen Munthe-Kaas 1 Definisjon av nøkler Gitt en
DetaljerIntroduksjon til fagfeltet
LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side
DetaljerINF1300 Introduksjon til databaser
INF1300 Introduksjon til databaser Data (transiente, persistente) DBMS databser informasjon interesseområdet informasjonsmodeller informasjonssystemer Transiente og persistente data Når vi programmerer,
DetaljerLøsningsforslag for Obligatorisk Oppgave 3. Algoritmer og Datastrukturer ITF20006
Løsningsforslag for Obligatorisk Oppgave 3 Algoritmer og Datastrukturer ITF20006 Lars Vidar Magnusson Frist 28.03.14 Den tredje obligatoriske oppgaven tar for seg forelesning 9 til 13, som dreier seg om
DetaljerPeer-to-Peer systemer
Peer-to-Peer systemer Bakgrunn Oversikt Taksonomi Applikasjonsområder Modeller Mats Thoresens diplom 2003 1 2 Hva er Peer-to-Peer? Peer node i et nettverk Noder i en arkitektur kommuniserer og deler ressurser
DetaljerINF / Kap. 5, Del 2 Stein Krogdahl, Ifi, UiO
INF5110 12/2-2013 Kap. 5, Del 2 Stein Krogdahl, Ifi, UiO Dagens temaer: Noen foiler igjen fra forrige gang SLR(1), LR(1)- og LALR(1)-grammatikker NB: Oppgaver til kap 4 og 5 er lagt ut på undervisningsplanen
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ekvivalente stier Behandling av tid Informasjonsbærende representasjoner INF1300-17.9.2007 Ellen Munthe-Kaas 1 Stier Dette er en sti
DetaljerHva er det, hvordan fungerer det og hva kan det brukes til? Arcane Crypto
Hva er det, hvordan fungerer det og hva kan det brukes til? Hva er Bitcoin? Kryptovaluta: Alt du ikke forstår om penger, kombinert med alt du ikke forstår om datamaskiner John Oliver Infinite, time-respective,
DetaljerDagens plan. INF Algoritmer og datastrukturer. Koding av tegn. Huffman-koding
Grafer Dagens plan INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo Avsluttende om grådige algoritmer (kap. 10.1.2) Dynamisk programmering Floyds algoritme
DetaljerUNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF 4130: lgoritmer: Design og effektivitet Eksamensdag: 12. desember 2008 Tid for eksamen: Kl. 09:00 12:00 (3 timer) Oppgavesettet
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Data versus informasjon Beskrivelse av interesseområdet Begreper og representasjon av
DetaljerParallelle og distribuerte databaser del III
UNIVERSITETET I OSLO Parallelle og distribuerte databaser del III NoSQL og alternative datamodeller Institutt for Informatikk INF3100 27.4.2016 Ellen Munthe-Kaas 1 NoSQL NoSQL er et paraplybegrep som omfatter
DetaljerDatastrukturer. Kevin Thon. 25 april 2017
Datastrukturer Kevin Thon 25 april 2017 Innledning De fleste som er involvert med registerdata på et eller annet plan vil et et tidspunkt måtte forholde seg til hvordan dataen er strukturert. Dette gjelder
DetaljerRelasjonsdatabasedesign
UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF300-6..00 Ellen Munthe-Kaas Definisjon av nøkler Gitt et relasjonsskjema
DetaljerInformasjonssystemer, DBMSer og databaser
UNIVERSITETET I OSLO Informasjonssystemer, DBMSer og databaser Institutt for Informatikk INF3100-21.1.2008 Ellen Munthe-Kaas 1 Interesseområdet (UoD = Universe of Discourse) Interesseområdet er en del
Detaljer4.1. Kravspesifikasjon
4.1. Kravspesifikasjon Dette delkapittelet beskriver nærgående alle deler av systemet, hvordan det er tenkt ferdigutviklet med fokus på oppdragsgivers ønsker. 4.1.1. Innledning Informasjon om hvordan kravspesifikasjonens
DetaljerGrunnleggende Grafalgoritmer II
Grunnleggende Grafalgoritmer II Lars Vidar Magnusson March 17, 2015 Kapittel 22 Dybde-først søk Topologisk sortering Relasjonen til backtracking Dybde-Først Søk Dybde-først søk i motsetning til et bredde-først
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 9. desember 2005 Tid for eksamen: 14.30 17.30 Oppgavesettet
DetaljerINF2220: Forelesning 2
INF2220: Forelesning 2 Mer om analyse av algoritmer Analyse av binære søketrær Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) ANALYSE AV ALGORITMER 2 Analyse av tidsforbruk Hvor
DetaljerTTM4175 Hva er kommunikasjonsteknologi?
1 TTM4175 Hva er kommunikasjonsteknologi? Del 3 Bjørn J. Villa Stipendiat Institutt for Telematikk, NTNU bv@item.ntnu.no 2 Innhold Begrepet «Kommunikasjonsteknologi» Definisjon, historikk og en liten refleksjon
DetaljerOppdateringsanomalier Normalformer
UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 26.0.2009 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign?
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 11: Huffman-koding & Dynamisk programmering (Ifi, UiO) INF2220 H2015, forelesning 11 1 / 32 Dagens
DetaljerIN Algoritmer og datastrukturer
IN00 - Algoritmer og datastrukturer HØSTEN 08 Institutt for informatikk, Universitetet i Oslo Forelesning 5: Grafer II Ingrid Chieh Yu (Ifi, UiO) IN00 8.09.08 / Dagens plan: Korteste vei en-til-alle vektet
DetaljerINF mai 2014 Stein Krogdahl, Ifi, UiO
INF5110 7. mai 2014 Stein Krogdahl, Ifi, UiO Dette er foiler om global data-analyse NB: Disse foilene er også pensum (men stoffet finnes bare her på disse foilene.) Global dataflyt-analyse, eksempler:
DetaljerKombinatorikk. MAT1030 Diskret Matematikk. Oppsummering av regneprinsipper
MAT1030 Diskret Matematikk Forelesning 22: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo Kombinatorikk 14. april 2010 (Sist oppdatert: 2010-04-14 12:43) MAT1030 Diskret Matematikk 14.
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 22: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 14. april 2010 (Sist oppdatert: 2010-04-14 12:42) Kombinatorikk MAT1030 Diskret Matematikk 14.
DetaljerKTN1 - Design av forbindelsesorientert protokoll
KTN1 - Design av forbindelsesorientert protokoll Beskrivelse av A1 A1 skal tilby en pålitelig, forbindelsesorientert tjeneste over en upålitelig, forbindelsesløs tjeneste A2. Det er flere ting A1 må implementere
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1020 Algoritmer og datastrukturer Eksamensdag: 15. desember 2004 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 6 sider.
DetaljerEffektiv eksekvering av spørsmål
UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basisoperasjoner Implementasjonsalgoritmer Institutt for Informatikk INF3100 6.4.2016
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 11. juni 2013 Tid for eksamen: 9.00 13.00 Oppgavesettet er på 6 sider. Vedlegg: ingen Tillatte
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF3100 Databasesystemer Eksamensdag: 13. juni 2016 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 6 sider. Vedlegg: ingen
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
DetaljerEksamensoppgave i TDT4145 Datamodellering og databasesystemer
Institutt for datateknikk og informatikk Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Roger Midtstraum: 995 72 420 Svein Erik Bratsberg: 995 39 963 Eksamensdato:
DetaljerInformasjonsbærende representasjoner
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper Underbegrepsskranker Kombinerte totale roller Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2016 Institutt for informatikk, Universitetet i Oslo Forelesning 6: Grafer II Ingrid Chieh Yu (Ifi, UiO) INF2220 28.09.2016 1 / 30 Dagens plan: Dijkstra fort.
DetaljerMål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU
1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære å bruke unntak (Exceptions)
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1010 Objektorientert programmering Eksamensdag: 6. juni 2013 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 5 sider. Vedlegg:
DetaljerInnhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen
Innhold uke 10 Hva bruker vi klasser til? Objektorientert programmering i Python IN1000 Høst 2018 uke 10 Siri Moe Jensen Noen sentrale datastrukturer for programmering lenkede lister trær grafer Eksempler:
DetaljerTransaksjonshåndtering Del 3
UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Institutt for Informatikk INF3100 15.3.2012 Ellen Munthe-Kaas 1 Samtidighetsfenomener og -anomalier Dette er uønskede «merkverdigheter» som kan inntreffe
DetaljerDatabasesystemer, oversikt
Databasesystemer, oversikt Evgenij Thorstensen V18 Evgenij Thorstensen Databasesystemer, oversikt V18 1 / 23 Kurset Databasesystemer og databaser. Databaser er abstrakte objekter (datastrukturer, spørrespråk).
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
Detaljer