Transaksjonshåndtering Del 3
|
|
- Hanne Tollefsen
- 7 år siden
- Visninger:
Transkript
1 UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Ragnar Normann INF Ragnar Normann 1
2 Serialiserbarhet Vi har tidligere definert serialiserbarhet på denne måten: En eksekveringsplan kalles serialiserbar hvis den er ekvivalent med en seriell eksekveringsplan Problemet med denne definisjonen er at den ikke sier hva som menes med «ekvivalent» Hittil har vi sett på eksekveringsplaner som har vært konfliktekvivalente med serielle eksekveringsplaner, dvs. at rekkefølgen på lese-skrive- og skrive-skrivekonflikter er den samme som i en seriell plan, noe som igjen er det samme som at konfliktgrafen er asyklisk (uten noen sykel) Vi skal nå kort se på et par andre serialiserbarhetskriterier INF Ragnar Normann 2
3 Final-State serialiserbarhet (FS) En eksekveringsplan S kalles FS-serialiserbar hvis det finnes en seriell plan for transaksjonene i S som gir samme sluttilstand i databasen som S Dette betyr at med samme (vilkårlige) starttilstand skal det å utføre S gi samme sluttilstand som det å utføre den serielle planen Merk at det bare er sluttilstanden i databasen som må være lik Det er ingen krav om at enkelttransaksjonene skal lese eller skrive de samme verdiene i de to planene Dette gjør at lesetransaksjoner aldri vil ha noen innvirkning på FS-serialiserbarhet INF Ragnar Normann 3
4 Les-fra relasjonen La T og U være to transaksjoner Da sier vi at vi har en lese-fra avhengighet mellom T og U, notert (T,x,U), hvis U leser en verdi av x som T har skrevet La så S være en eksekveringsplan for transaksjonene {T 1,, T m } Definer to fiktive transaksjoner T 0 og T ved at T 0 skriver alle dataelementene i databasen før S startes T leser alle dataelementene etter at S er kjørt (dvs. at T leser «final state») Da defineres les-fra (Read-From) relasjonen til S som RF(S) = {(T k,x,t l ) T k S U {T 0 } og T l S U {T } } INF Ragnar Normann 4
5 View-serialiserbarhet La S 1 og S 2 være to eksekveringsplaner for de samme transaksjonene Vi sier at S 1 og S 2 er view-ekvivalente hvis RF(S 1 ) = RF(S 2 ) En eksekveringsplan er view-serialiserbar hvis den er view-ekvivalent med en seriell eksekveringsplan INF Ragnar Normann 5
6 Klassene FSR, VSR og CSR Vi har nå sett på tre måter å definere serialiserbarhet på Hver av disse gir opphav til en klasse av planer: FSR er klassen av alle Final-State serialiserbare planer VSR er klassen av alle view-serialiserbare planer CSR er klassen av alle konfliktserialiserbare planer INF Ragnar Normann 6
7 VSR vs FSR Alle view-serialiserbare planer er FS-serialiserbare, men ikke omvendt (VSR er en ekte delmengde av FSR) Begrunnelse: Anta at P er en view-serialiserbar plan Da finnes en seriell plan med RF(S) = RF(P) Spesielt må RF(S) og RF(P) inneholde de samme tuplene på formen (T k,x,t ) Altså gir P og S samme sluttilstand Siden FS-serialiserbarhet ikke tar hensyn til lesetransaksjoner, er det lett å lage en plan i FSR som ikke ligger i VSR: P = w 1 (x)r 2 (x)r 2 (y)w 1 (y)c 1 c 2 INF Ragnar Normann 7
8 VSR vs CSR Forskjellen mellom view- og konfliktserialiserbarhet viser seg når T skriver en x som ingen leser (fordi en annen transaksjon også skriver x før noen har lest x) En slik w T (x) kan gi en sykel i konfliktgrafen uten å stride mot view-seriabilitet Ved å legge på et krav om begrenset skriving: En transaksjon får ikke lov til å skrive et dataelement uten først å ha lest det blir alle view-serialiserbare eksekveringsplaner konfliktserialiserbare Konklusjon: Alle konfliktserialiserbare eksekveringsplaner er view-serialiserbare, men ikke omvendt INF Ragnar Normann 8
9 Et pre for konfliktserialiserbarhet Det er mye dyrere å håndheve FS- og view-serialiserbarhet enn konfliktserialiserbarhet Å håndheve view-serialiserbarhet (og også FS-serialiserbarhet) er en NP-komplett oppgave og derfor «umulig» for store transaksjonsmengder Å vedlikeholde konfliktgrafen kan gjøres i polynomisk tid (dette er ikke pensum, men informasjon til de interesserte) INF Ragnar Normann 9
10 Multiversjonsdatabaser Noen DBMSer kan lagre flere versjoner av hvert dataelement Dette forutsetter at transaksjonene får et tidsstempel (transaksjonsnummer) når de starter Når en transaksjon t k (der k er transaksjonsnummeret) skriver en ny verdi i et objekt x, blir det dannet et nytt objekt x k (den gamle verdien av x blir ikke overskrevet) Siden det kan bli mange versjoner av hvert objekt, må det finnes en prosess som sletter gamle versjoner som ingen lenger kan få bruk for (søppeltømming) INF Ragnar Normann 10
11 Snapshot Isolation (SI) SI er en protokoll som lager multiversjonsplaner SI er interessant fordi den brukes i flere mye brukte DBMSer, bl.a. Oracle PostgreSQL Microsoft SQL Server Merk at det disse DBMSene kaller Serializable (som er deres standardisolasjonsnivå), i virkeligheten er SI Vi skal senere vise at SI ikke er det samme som det som i SQL-1992-standarden kalles serialiserbar INF Ragnar Normann 11
12 SI-protokollen SI-protokollen består i å håndheve følgende to regler: 1. Når en transaksjon T leser et objekt X, så leser T den nyeste versjonen av X som er skrevet av en transaksjon som committet før T startet 2. Skrivemengden til to samtidige transaksjoner må være disjunkte Regel 2 betyr at hvis T 1 og T 2 er to transaksjoner hvor T 1 starter før T 2, og T 1 gjør commit etter at T 2 er startet, så får ikke T 1 og T 2 skrive samme objekt Det finnes flere metoder for å håndheve regel 2 én er å sammenligne skrivemengdene ved commit INF Ragnar Normann 12
13 Første oppdaterer vinner Oracle håndhever regel 2 slik at første oppdaterer vinner: Anta at to transaksjoner T 1 og T 2 er samtidige, at T 1 skriver X, og at T 2 også vil skrive X Da kan ikke T 2 skrive X før T 1 slipper sin skrivelås på X Det er da tre muligheter: Hvis T 2 står i kø for å skrive X, og T 1 gjør commit, blir T 2 øyeblikkelig abortert Hvis T 1 gjør commit før T 2 prøver å skrive X, blir T 2 abortert i det den prøver å skrive X Hvis T 1 slipper låsen fordi den aborterer, får T 2 skrive X INF Ragnar Normann 13
14 Søppeltømming ved bruk av SI Regelen for når søppeltømmeren kan fjerne «gamle» versjoner av dataobjekter, er slik: En versjon X i av et dataobjekt X kan fjernes hvis, og bare hvis, det finnes en nyere versjon X k av X slik at alle aktive transaksjoner startet etter at X k ble skrevet En konsekvens av denne regelen er at den sist skrevne versjonen av et dataobjekt aldri kan bli slettet av søppeltømmeren INF Ragnar Normann 14
15 SI og serialiserbarhet Betrakt planen P = r 1 (x)r 2 (y)w 1 (y)w 2 (x)c 1 c 2 P er et eksempel på skriveskjevhet (Write Skew) både T 1 og T 2 skriver objekter de selv ikke har lest, men som den andre transaksjonen har lest P er opplagt ikke konfliktserialiserbar (T 1 T 2 T 1 ) Derimot tilfredsstiller P SI både T 1 og T 2 leser bare data skrevet av T 0, og skrivmengdene deres er disjunkte INF Ragnar Normann 15
16 Monotonitet La S være en plan, og la T være en delmengde av transaksjonene i S Da definerer vi projeksjonen av S på T som den planen vi får hvis vi fra S fjerner alle operasjoner utført av transaksjoner som ikke ligger i T En klasse med planer kalles monoton hvis alle projeksjoner av planer i klassen selv ligger i klassen INF Ragnar Normann 16
17 Monotonitet og schedulere La E være klassen av planer som en gitt scheduler S kan lage (E er klassen av lovlige planer) Hvis E ikke er monoton, kan følgende skje: S lager en plan P for en mengde transaksjoner T En av transaksjonene i T aborterer Projeksjonen av P på resten av transaksjonene i T er ikke i E (de danner en ulovlig plan) Et annet problem er at en ulovlig plan kan bli lovlig hvis det kommer en ny transaksjon som skal flettes inn i planen INF Ragnar Normann 17
18 Monotonitet i multiversjonsdatabaser (Dette og neste lysark er hentet fra Lene Østbys masteroppgave) Det er ikke opplagt hvordan monotonitet skal defineres i multiversjonsdatabaser (Det egentlige problemet er hvordan projeksjoner skal defineres) Betrakt følgende multiversjonsplan for T 1, T 2 og T 3 : S = r 1 (x 0 )r 1 (y 0 )r 2 (y 0 )w 2 (y 2 )c 2 r 3 (x 0 )r 3 (y 2 )c 3 w 1 (x 1 )c 1 En rett frem projeksjon av S på T ={T 1,T 3 } blir slik: Π T (S) = r 1 (x 0 )r 1 (y 0 )r 3 (x 0 )r 3 (y 2 )c 3 w 1 (x 1 )c 1 Her leser T 3 en versjon av y skrevet av T 2 som ikke finnes i planen (så y 2 eksisterer ikke) Vi lar derfor T 3 lese siste committede verdi av y, som gir: Π T (S) = r 1 (x 0 )r 1 (y 0 )r 3 (x 0 )r 3 (y 0 )c 3 w 1 (x 1 )c 1 INF Ragnar Normann 18
19 Klassen av SI-planer er monoton Bevis (Lene Østby 2008): La S være en plan generert i henhold til SI-protokollen, dvs. at enhver transaksjon T i S bare leser verdier skrevet av transaksjoner som har committet før T startet, og at S ikke inneholder noen skrive-skrive konflikter La P være projeksjonen av S på en delmengde av transaksjonene i S Definisjonen av projeksjon på forrige lysark gjør at ingen transaksjon T i P kan lese en verdi skrevet av en transaksjon som ikke er committet før T startet Dessuten kan ikke en projeksjon innføre nye skrive-skrive konflikter Dermed oppfyller P begge kravene til SI q.e.d. INF Ragnar Normann 19
20 CSR er monoton Dette er en konsekvens av serialiserbarhetsteoremet som sier at en plan er konfliktserialiserbar hvis, og bare hvis, konfliktgrafen er asyklisk Begrunnelse: Anta at P er en plan i CSR, dvs. at P har en asyklisk konfliktgraf Konfliktgrafen til enhver projeksjon av P vil være en subgraf i Ps konfliktgraf, og slike subgrafer er også asykliske Altså ligger alle projeksjoner av P i CSR INF Ragnar Normann 20
21 FSR og VSR er ikke monotone Beviset for dette resultatet består i å finne en plan i VSR som har en projeksjon som ikke ligger i FSR Beviset for den siste påstanden ligger utenfor rammen for dette kurset INF Ragnar Normann 21
22 Vranglåser og «timeout» I et låsbasert system sier vi at vi har en vranglås når to eller flere transaksjoner venter på hverandre Når en vranglås er oppstått, er det generelt umulig å unngå å rulle tilbake (minst) en transaksjon En «timeout» er en øvre grense for hvor lenge en transaksjon får lov til å være i systemet En transaksjon som overskrider grensen, må frigi alle sine låser og bli rullet tilbake Lengden av «timeout» og velegnethet av denne metoden er avhengig av hva slags transaksjoner vi har INF Ragnar Normann 22
23 Vent-på-grafer For å unngå (evt oppdage) vranglåser, kan planleggeren vedlikeholde en Vent-på-graf: Noder: Transaksjoner som har eller venter på en lås Kanter T U: Det finnes et dataelement A slik at U har låst A T venter på å få låse A T får ikke sin ønskede lås på A før U frigir sin Vi har vranglås hvis, og bare hvis, det er en sykel i Vent-på-grafen En enkel strategi for å unngå vranglås er å rulle tilbake alle transaksjoner som kommer med et låseønske som vil generere en sykel i Vent-på-grafen INF Ragnar Normann 23
24 Vranglåshåndtering ved ordning Dersom alle låsbare dataelementer er ordnet, har vi en enkel strategi for å unngå vranglås: la alle transaksjoner sette sine låser i ordningsrekkefølge Bevis for at vi unngår vranglås med denne strategien: Anta at vi har en sykel T 1 T 2 T 3 T n T 1 i Ventpå-grafen, at hver T k har låst A k, og at hver T k venter på å låse A k+1, unntatt T n som venter på å låse A 1 Da er A 1 <A 2 < <A n <A 1, noe som er umulig Da vi sjelden har en naturlig ordning av dataelementene, er nytteverdien av denne strategien begrenset INF Ragnar Normann 24
25 Vranglåstidsstempler Vranglåstidsstempler er et alternativ til å vedlikeholde en Vent-på-graf Alle transaksjoner tildeles et entydig vranglåstidsstempel idet de starter, og dette tidsstempelet har følgende egenskaper ved tildelingen er det det største som er tildelt til nå det er ikke det samme tidsstempelet som (eventuelt) blir brukt til samtidighetskontroll det forandres aldri; transaksjonen beholder sitt vranglåstidsstempel selv om den rulles tilbake En transaksjon T sies å være eldre enn en transaksjon U hvis T har et mindre vranglåstidsstempel enn U INF Ragnar Normann 25
26 Vent Dø strategien La T og U være transaksjoner og anta at T må vente på en lås holdt av U Vent Dø (Wait Die) strategien er som følger: Hvis T er eldre enn U, får T vente til U har gitt slipp på låsen(e) sin(e) Hvis U er eldre enn T, så dør T, dvs at T rulles tilbake Siden T får beholde sitt vranglåstidsstempel selv om den rulles tilbake, vil den før eller siden bli eldst og dermed være sikret mot flere tilbakerullinger Vi sier at Vent Dø strategien sikrer mot utsultning (starvation) INF Ragnar Normann 26
27 Skad Vent strategien La T og U være transaksjoner og anta at T må vente på en lås holdt av U Skad Vent (Wound Wait) strategien er som følger: Hvis T er eldre enn U, blir U skadet av T Som oftest blir U rullet tilbake og må overgi sin(e) lås(er) til T Unntaket er hvis U allerede er i krympefasen Da overlever U og får fullføre Hvis U er eldre enn T, så venter T til U har gitt slipp på låsen(e) sin(e) Om U rulles tilbake, vil den før eller siden bli eldst og dermed være sikret mot flere tilbakerullinger, så også Skad Vent strategien sikrer mot utsulting INF Ragnar Normann 27
28 Vranglåstidsstempler gjør jobben sin TEOREM Både Vent Dø og Skad Vent forhindrer vranglås Bevis: Det er nok å vise at begge strategiene sikrer at det ikke kan bli sykler i Vent-på-grafen Så, ad absurdum, anta at Vent-på-grafen har en sykel, og la T være den eldste transaksjonen som inngår i sykelen Hvis vi bruker Vent Dø strategien, kan transaksjoner bare vente på yngre transaksjoner, så ingen i sykelen kan vente på T som dermed ikke kan være med i sykelen Hvis vi bruker Skad Vent, kan transaksjoner bare vente på eldre transaksjoner, så T kan ikke vente på noen andre i sykelen og kan følgelig ikke selv være med i den QED INF Ragnar Normann 28
29 Lange transaksjoner og sagaer En transaksjon kalles lang hvis den varer så lenge at den ikke kan få lov til å holde låser i hele sin levetid Vanlig samtidighetskontroll kan ikke brukes for lange transaksjoner de håndteres med sagaer: En saga representerer alle mulige forløp av en lang transaksjon og består av en mengde (korte) transaksjoner kalt aksjoner en graf hvor nodene er aksjonene og to terminalnoder abort og ferdig, og hvor en kant A i A k betyr at A k bare kan utføres dersom A i er utført, og hvor alle noder unntatt abort og ferdig har utgående kanter en markert startnode (første aksjon som utføres) Merk at en saga kan inneholde sykler INF Ragnar Normann 29
30 Samtidighetskontroll for sagaer En lang transaksjon L er en sti gjennom sagaen fra startnoden A 0 til en av terminalnodene (fortrinnsvis ferdig) Aksjonene er, og behandles som, vanlige transaksjoner L aborterer ikke selv om en aksjon blir rullet tilbake I en saga har hver aksjon A en kompenserende aksjon A -1 som opphever virkningen av A Presist: Hvis D er en lovlig databasetilstand og S er en eksekveringsplan, skal det å utføre S og ASA -1 på D gi samme resultattilstand Hvis L ender i abort, fjernes virkningen av L ved å kjøre de kompenserende aksjonene i omvendt rekkefølge: A 0 A 1 A n abort kompenseres med A n -1 A 1-1 A 0-1 ferdig INF Ragnar Normann 30
Transaksjonshåndtering Del 3
UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Ragnar Normann INF3100 12.4.2010 Ragnar Normann 1 Samtidighetsfenomener og -anomalier Dette er uønskede «merkverdigheter» som kan inntreffe i eksekveringsplaner.
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
DetaljerTransaksjonshåndtering Del 3
UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Institutt for Informatikk INF3100 17.3.2014 Ellen Munthe-Kaas 1 Samtidighetsfenomener og -anomalier Dette er uønskede «merkverdigheter» som kan inntreffe
DetaljerTransaksjonshåndtering Del 3
UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Institutt for Informatikk INF3100 10.3.2015 Ellen Munthe-Kaas 1 Samtidighetsfenomener og -anomalier Dette er uønskede «merkverdigheter» som kan inntreffe
DetaljerTransaksjonshåndtering Del 3
UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Institutt for Informatikk INF3100 4.4.2016 Ellen Munthe-Kaas 1 Samtidighetsfenomener og -anomalier Dette er uønskede «merkverdigheter» som kan inntreffe
DetaljerINF3100 Databasesystemer. Transaksjonshåndtering. ndtering Del 3. Ragnar Normann
INF3100 Databasesystemer Transaksjonshåndtering ndtering Del 3 Ragnar Normann View-serialiserbarhet Hittil har vi sett på eksekveringsplaner som har vært konfliktekvivalente med serielle eksekveringsplaner
DetaljerTransaksjonshåndtering og samtidighetskontroll
UNIVERSITETET I OSLO Transaksjonshåndtering og samtidighetskontroll Ragnar Normann Mange lysark er basert på en original laget av Hector Garcia-Molina INF3100 26.4.2005 Ragnar Normann 1 Transaksjoner En
DetaljerTransaksjonshåndtering Del 2
UNIVERSITETET I OSLO Transaksjonshåndtering Del 2 Ragnar Normann Noen figurer er basert på en original laget av Hector Garcia-Molina INF3100 10.3.2008 Ellen Munthe-Kaas 1 En ny type serialiseringsprotokoll
DetaljerDBS21 Samtidighetskontrollteknikker
Side 1 for Databaser DBS21 Samtidighetskontrollteknikker mandag 30. mai 2016 21.25 Pensum: 21.1, side 781-792, og 21.3 side 795-796 tom 21.3.1 21.1 Tofaselåsingsteknikker for samtidighetskontroll 21.1.1
DetaljerTransaksjonshåndtering Del 2
UNIVERSITETET I OSLO Transaksjonshåndtering Del 2 Ragnar Normann Noen figurer er basert på en original laget av Hector Garcia-Molina INF3100 3.5.2005 Ragnar Normann 1 En ny type serialiseringsprotokoll
Detaljerndtering og samtidighetskontroll
INF3100 Databasesystemer Transaksjonshåndtering ndtering og samtidighetskontroll Ragnar Normann Mange lysark er basert på en original laget av Hector Garcia-Molina Transaksjoner En transaksjon er en samling
DetaljerTransaksjonshåndtering Del 2
UNIVERSITETET I OSLO Transaksjonshåndtering Del 2 Institutt for Informatikk INF3100 14.3.2014 Ellen Munthe-Kaas 1 En ny type serialiseringsprotokoll Hittil har vi bare sett på 2PL-baserte protokoller Alle
DetaljerFor alle ikke-trivielle FDer X A i R: eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R
1NF-BCNF For alle ikke-trivielle FDer X A i R: X er en supernøkkel i R eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R 1 Normalisering Finn alle ikke-trivielle ti i FDer som gjelder
DetaljerTransaksjonshåndtering og samtidighetskontroll
UNIVERSITETET IOSLO Transaksjonshåndtering og samtidighetskontroll Institutt for Informatikk INF3100 1.3.2011 Ellen Munthe-Kaas 1 Transaksjoner En transaksjon er en sekvensens av operasjoner som bevarer
DetaljerTransaksjonshåndtering og samtidighetskontroll
UNIVERSITETET I OSLO Transaksjonshåndtering og samtidighetskontroll Institutt for Informatikk INF3100 7.3.2016 Ellen Munthe-Kaas 1 Transaksjoner En transaksjon er en sekvens av operasjoner som bevarer
DetaljerRepetisjonsforelesning, SQL og utover
Repetisjonsforelesning, SQL og utover Evgenij Thorstensen V18 Evgenij Thorstensen Repetisjon V18 1 / 23 Temaer SQL, semantikk Databasearkitektur Spørringskompilering og optimisering Indekser Transaksjonshåndtering
DetaljerRepetisjon av transaksjonshåndtering og samtidighetskontroll. Lana Vu
Repetisjon av transaksjonshåndtering og samtidighetskontroll Lana Vu anhlv@ifi.uio.no Repetisjon ACID- egenskapene Transaksjon Eksekveringsplan og serialiserbarhet Konfliktserialiserbarhet og presedensgraf
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
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
DetaljerDBS20 - Introduksjon til transaksjonsprosessering og teori
Side 1 for Databaser DBS20 - Introduksjon til transaksjonsprosessering og teori søndag 29. mai 2016 21.15 Pensum: 20.1-20-6, side 745-776, untatt 2.5.4 og 2.5.5 20.1 Introduksjon til transaksjonsprosessering
DetaljerSamtidighetsfenomener og anomalier i eksekveringsplaner (kursorisk) INF3100 Ellen Munthe-Kaas 1
Samtidighetsfenomener og anomalier i eksekveringsplaner (kursorisk) INF3100 Ellen Munthe-Kaas 1 Liste over fenomener P0 Skitten skriv w 1 (x)..w 2 (x)..(c 1 eller a 1 ) P1 Skitten les w 1 (x)..r 2 (x)..(c
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
DetaljerUNIVERSITETET I OSLO Institutt for informatikk. En teoretisk studie av Snapshot Isolation. Masteroppgave 60 studiepoeng. Lene T.
UNIVERSITETET I OSLO Institutt for informatikk En teoretisk studie av Snapshot Isolation Masteroppgave 60 studiepoeng Lene T. Østby 24. april 2008 Innhold 1 Innledning 1 1.1 Problemstilling............................
DetaljerDBMS Database Management System (repetisjon) Programmeringsgrensesnitt. Serialiserbarhet
DBMS Database Management System (repetisjon) Spesialisert SW Karakteristika: Persistens Transaksjonshåndtering A tomicity C onsistency I solation D urability Programmeringsgrensesnitt INF212 v2003 1 Serialiserbarhet
DetaljerSamtidighetsfenomener og anomalier i eksekveringsplaner. INF Ellen Munthe-Kaas 1
Samtidighetsfenomener og anomalier i eksekveringsplaner INF3100 15.3.2012 Ellen Munthe-Kaas 1 Liste over fenomener og anomalier P0 Skitten skriv w 1 (x)..w 2 (x)..(c 1 eller a 1 ) P1 Skitten les w 1 (x)..r
DetaljerTransaksjoner. transaksjon. når starter/slutter 1 trans.?
Transaksjoner IBE211 Kap. 10 feil mediefeil: disk feiler må gjenopprette (fra sikkerhetskopi, kap. 11) instansfeil: databasen stopper midt i noe tilbakeføring (rollback) til konsistent samtidighet når
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: SQL: Outer join Denormalisering og splitting Transaksjoner og ACID-reglene DBMSer en introduksjon til INF3100 INF1300 19.11.2007 Ragnar
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,
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 9. juni 2008 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 5 sider. Vedlegg: Tillatte hjelpemidler: INF3100 Databasesystemer
DetaljerIsolasjon i postgres og mysql
Isolasjon i postgres og mysql Evgenij Thorstensen V19 Evgenij Thorstensen Isolasjon i postgres og mysql V19 1 / 20 Isolasjonsnivåer Read uncommitted Read committed Repeatable read Serializable SELECT...
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: ORM og normalisering Denormalisering og splitting Transaksjonshåndtering INF1300 17.11.2010 Ellen Munthe-Kaas 1 ORM og normalisering
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
DetaljerDeling av data Transaksjoner
Deling av data Transaksjoner INF5040 Foreleser: Olav Lysne SRL & Ifi/UiO 1 Introduksjon Tjenere kan tilby samtidig aksess fra klienter til de objekter/data tjenerne innkapsler o fler-trådede tjenere =>
DetaljerRelasjonsdatabasedesign (forts.)
UNIVERSITETET I OSLO Relasjonsdatabasedesign (forts.) Flerverdiavhengigheter Høyere normalformer INF3100-29.1.2008 Ragnar Normann Institutt for Informatikk 1 Flerverdiavhengigheter Generalisering av FDer
DetaljerRelasjonsdatabasedesign
UNIVERSITETET IOSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-1.2.2011 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter
DetaljerDeling av data Transaksjoner
Deling av data Transaksjoner INF5040 Foreleser: Olav Lysne SRL & Ifi/UiO 1 Introduksjon Tjenere kan tilby samtidig aksess fra klienter til de objekter/data tjenerne innkapsler o fler-trådede tjenere =>
DetaljerMAT1140: Kort sammendrag av grafteorien
MAT1140, H-15 MAT1140: Kort sammendrag av grafteorien Dette notatet gir en kort oppsummering av grafteorien i MAT1140. Vekten er på den logiske oppbygningen, og jeg har utelatt all motivasjon og (nesten)
DetaljerReplikeringsgrafer og multiversjonsserialiserbarhet. Jon Grov. Hovedfagsoppgave. 29. april 2003
UNIVERSITETET I OSLO Institutt for informatikk Replikeringsgrafer og multiversjonsserialiserbarhet Jon Grov Hovedfagsoppgave 29. april 2003 Til Elin Forord Denne rapporten ville aldri blitt fullført uten
DetaljerAndre sett obligatoriske oppgaver i INF3100 V2013
Andre sett obligatoriske oppgaver i INF3100 V2013 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,
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:
DetaljerLO118D Forelesning 5 (DM)
LO118D Forelesning 5 (DM) Relasjoner 03.09.2007 1 Relasjoner 2 Ekvivalensrelasjoner 3 Matriser av relasjoner 4 Relasjonsdatabaser Relasjon Relasjoner er en generalisering av funksjoner En relasjon er en
DetaljerDet matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det.
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 - Databaseteori Eksamensdag : Onsdag 8. juni 1994 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg
DetaljerHva har vi gjort? SQL og Databasedesign
Hva har vi gjort? SQL og Databasedesign HVA? Begrepsmessig databasedesign E/R diagram Logisk databasedesign Tabeller HVORDAN? Fysisk databasedesign Filer Indekser Etter vi har behandlet de mer statiske
DetaljerMAT1140: Kort sammendrag av grafteorien
MAT1140: Kort sammendrag av grafteorien Dette notatet gir en kort oversikt over den delen av grafteorien som er gjennomgått i MAT1140 høsten 2013. Vekten er på den logiske oppbygningen, og jeg har utelatt
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 16. april 2008 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og
DetaljerOppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Forelesning 23: Grafteori
Oppsummering MAT1030 Diskret matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 16. april 2008 En graf består av noder og kanter Kanter ligger inntil noder, og
DetaljerRelasjonsdatabasedesign (forts.)
Relasjonsdatabasedesign (forts.) Flerverdiavhengigheter Høyere normalformer INF3100-25.1.2005 - Ragnar Normann 1 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter gir opphav til en større
DetaljerForelesning 23. Grafteori. Dag Normann april Oppsummering. Oppsummering. Oppsummering. Digresjon: Firefarveproblemet
Forelesning 23 Grafteori Dag Normann - 16. april 2008 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og noder kan være naboer. Vi bør kjenne til begrepene om sammenhengende
DetaljerUtvalgsaksiomet, velordningsprinsippet og Zorns lemma
Utvalgsaksiomet, velordningsprinsippet og Zorns lemma Dag Normann Universitetet i Oslo Matematisk Institutt Boks 1053 - Blindern 0316 Oslo 13. mars 2007 I dette notatet skal vi gi et bevis for ekvivalensen
DetaljerUretta grafar (1) Mengde nodar Mengde kantar som er eit uordna par av nodar
Kapittel 13, Grafar Uretta grafar (1) Ein uretta graf Mengde nodar Mengde kantar som er eit uordna par av nodar To nodar er naboar dersom dei er knytta saman med einkant Ein node kan ha kant til seg sjølv.
DetaljerDBS22 Databasegjenopprettingsteknikker
Side 1 for Databaser DBS22 Databasegjenopprettingsteknikker onsdag 1. juni 2016 21.49 Pensum: 22.1-22.5, side 813-831 22.1 Gjenopprettingskonsepter 22.1.1 Recovery outline and categorization of recovery
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF212 Databaseteori Eksamensdag: 28. mai 2003 Tid for eksamen: 9.00 15.00 Oppgavesettet er på 8 sider. Vedlegg: Tillatte hjelpemidler:
Detaljer4.1 Vektorrom og underrom
4.1 Vektorrom og underrom Vektorrom er en abstraksjon av R n. De kan brukes til å utlede egenskaper, resultater og metoder for tilsynelatende svært ulike klasser av objekter : n-tupler, følger, funksjoner,
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 10: Mengdelære Dag Normann Matematisk Institutt, Universitetet i Oslo 17. februar 2010 (Sist oppdatert: 2010-02-17 12:40) Kapittel 5: Mengdelære MAT1030 Diskret Matematikk
DetaljerKapittel 5: Mengdelære
MAT1030 Diskret Matematikk Forelesning 10: Mengdelære Dag Normann Matematisk Institutt, Universitetet i Oslo Kapittel 5: Mengdelære 17. februar 2010 (Sist oppdatert: 2010-02-17 12:41) MAT1030 Diskret Matematikk
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
Detaljer4.1 Vektorrom og underrom
4.1 Vektorrom og underrom Vektorrom er en abstraksjon av R n. Kan brukes til å utlede egenskaper, resultater og metoder for tilsynelatende svært ulike klasser av objekter : n-tupler, følger, funksjoner,
DetaljerD: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.
Side 1 av 7 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER
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
DetaljerLøsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer
Institutt for datateknikk og informasjonsvitenskap Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Eksamensdato: 26. mai 2014 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2016 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 5: Grafer I Ingrid Chieh Yu (Ifi, UiO) INF2220 H2016, forelesning 5 1 / 49
DetaljerMAT1030 Forelesning 24
MAT1030 Forelesning 24 Grafteori og trær Roger Antonsen - 28. april 2009 (Sist oppdatert: 2009-04-28 22:32) Forelesning 24 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 6: Grafer Bjarne Holen (Ifi, UiO) INF2220 H2009, forelesning 6 1 / 31 Dagens plan:
DetaljerØvingsforelesning 4. Topologisk sortering, Strongly Connected Components og Minimale spenntrær. Magnus Botnan
Øvingsforelesning 4 Topologisk sortering, Strongly Connected Components og Minimale spenntrær Magnus Botnan botnan@stud.ntnu.no 09/10/09 1 I dag Topologisk Sortering Sterke Komponenter Minimale Spenntrær
DetaljerDisjunkte mengder ADT
Binære relasjoner A A = {(x, y) x, y A}: mengden av ordnede par over A. Disjunkte mengder ADT Weiss kap. 8.1 8.5 Løser ekvivalensproblemet Lett og rask implementasjon Vanskelig tidsforbrukanalyse Ark 1
DetaljerLO118D Forelesning 9 (DM)
LO118D Forelesning 9 (DM) Grafteori 26.09.2007 1 Introduksjon 2 Veier og sykler 3 Hamiltonsykler og omreisende handelsmenn Graf, urettet Definisjon En graf (eller urettet graf) G består av en mengde V
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 10: Mengdelære Roger Antonsen Institutt for informatikk, Universitetet i Oslo 24. februar 2009 (Sist oppdatert: 2009-02-25 08:27) Kapittel 5: Mengdelære MAT1030 Diskret
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
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF Logiske metoder for informatikk Eksamensdag:. desember Tid for eksamen:.. Oppgavesettet er på sider. Vedlegg: Ingen Tillatte
DetaljerAndre sett obligatoriske oppgaver i INF3100 V2012
Andre sett obligatoriske oppgaver i INF3100 V2012 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,
DetaljerMaks Flyt og NPkompletthet
Maks Flyt og NPkompletthet Flyt - Intro Mange av oppgavene om flyt handler om å se at Dette kan vi løse som et flytproblem. Resten er som regel kortsvarsoppgaver, og går på grunnleggende forståelse av
DetaljerRepetisjon og mer motivasjon. MAT1030 Diskret matematikk. Repetisjon og mer motivasjon
Repetisjon og mer motivasjon MAT030 Diskret matematikk Forelesning 22: Grafteori Roger Antonsen Matematisk Institutt, Universitetet i Oslo 4. april 2008 Først litt repetisjon En graf består av noder og
DetaljerDet matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 Databaseteori Eksamensdag : Fredag 6. juni 1997 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg :
DetaljerINF1020 Algoritmer og datastrukturer GRAFER
GRAFER Dagens plan: Definisjon av en graf (kapittel 9.1) Grafvarianter Intern representasjon av grafer (kapittel 9.1.1) Topologisk sortering (kapittel 9.2) Korteste vei, en-til-alle, for: uvektet graf
DetaljerMAT1030 Forelesning 10
MAT1030 Forelesning 10 Mengdelære Roger Antonsen - 24. februar 2009 (Sist oppdatert: 2009-02-25 08:27) Kapittel 5: Mengdelære Oversikt Vi har nå innført de Boolske operasjonene, union snitt komplement
DetaljerLitt topologi. Harald Hanche-Olsen
MA2104 2006 Litt topologi Harald Hanche-Olsen hanche@math.ntnu.no De reelle tall En grunnleggende egenskap ved de reelle tall, som skiller dem fra de rasjonale tall, er kompletthetsaksiomet. Det har flere
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,
DetaljerNotat 05 for MAT Relasjoner, operasjoner, ringer. 5.1 Relasjoner
Notat 05 for MAT1140 5 Relasjoner, operasjoner, ringer 5.1 Relasjoner Når R er en relasjon som er veldefinert på A B, slik at R(x, y) er en påstand når x A og B B, tenker vi på relasjonen som noe som lever
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 8. juni 2010 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 5 sider. Vedlegg: Ingen Tillatte
DetaljerKapittel 5: Relasjoner
MAT1030 Diskret Matematikk Forelesning 11: Relasjoner Dag Normann Matematisk Institutt, Universitetet i Oslo Kapittel 5: Relasjoner 23. februar 2010 (Sist oppdatert: 2010-02-23 14:33) MAT1030 Diskret Matematikk
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Side Det matematisk-naturvitenskapelige fakultet Prøveekasmen 2007, med svarforslag Eksamen i: INF 330/430: Algoritmer: Design og effektivitet Eksamensdag: Fredag. desember 200 Tid
DetaljerKompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon
Kompleksitet IN2010 - algoritmer og datastrukturer Plenumstime / repetisjon Dagens agenda Kompleksitet - hva er det? Avgjørelsesproblemer Kompleksitetsklassene P og NP Reduksjoner - å redusere et problem
DetaljerGrafteori. MAT1030 Diskret Matematikk. Repetisjon og mer motivasjon. Repetisjon og mer motivasjon. Forelesning 23: Grafteori.
MAT030 Diskret Matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo Grafteori 20. april 200 (Sist oppdatert: 200-04-20 4:8) MAT030 Diskret Matematikk 20. april 200
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
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 20. april 2010 (Sist oppdatert: 2010-04-20 14:17) Grafteori MAT1030 Diskret Matematikk 20. april
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
DetaljerZorns lemma og utvalgsaksiomet
MAT1140, H-16 Zorns lemma og utvalgsaksiomet I dette notatet skal vi se på Zorns lemma, som er et kraftig redskap for å bevise eksistensen av matematiske objekter. Beviset for Zorns lemma bygger på det
Detaljer4.1 Vektorrom og underrom
4.1 Vektorrom og underrom Vektorrom er en abstraksjon av R n. De kan brukes til å utlede egenskaper, resultater og metoder for tilsynelatende svært ulike klasser av objekter : n-tupler, følger, funksjoner,
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF 110 Algoritmer og datastrukturer Eksamensdag : Lørdag 8. desember 2001 Tid for eksamen : 09.00-15.00 Oppgavesettet er på
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
DetaljerAndre sett obligatoriske oppgaver iinf3100v2011
Andre sett obligatoriske oppgaver iinf3100v2011 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser, men
DetaljerAndre sett obligatoriske oppgaver i INF3100 V2010
Andre sett obligatoriske oppgaver i INF3100 V2010 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,
DetaljerMAT1120 Notat 1 Tillegg til avsnitt 4.4
MAT1120 Notat 1 Tillegg til avsnitt 4.4 Vi tar utgangspunkt i Teorem 8 fra avsn. 4.4 i boka. For ordens skyld gjentar vi teoremet her: Teorem 8 [Avsn. 4.4]: Anta at B = {b 1,..., b n } er en (ordnet) basis
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
DetaljerForelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Dag Normann
MAT1030 Diskret Matematikk Forelesning 25: Trær Dag Normann Matematisk Institutt, Universitetet i Oslo Forelesning 25 27. april 2010 (Sist oppdatert: 2010-04-27 14:16) MAT1030 Diskret Matematikk 27. april
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 5: Grafer I Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning 5 1 / 55
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET IOSLO INF1300 Introduksjon til databaser Dagens tema: ORM og normalisering Denormalisering og splitting Triggere og databasefunksjoner Transaksjonshåndtering INF1300 2.11.2011 Ellen Munthe-Kaas
Detaljer