Hva har vi gjort? SQL og Databasedesign

Størrelse: px
Begynne med side:

Download "Hva har vi gjort? SQL og Databasedesign"

Transkript

1 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 aspektene av databaser skal vi nå ser på Databaser i Produksjon (databases at work). Databaser Leksjon 10: Transaksjoner - 1

2 Transaksjoner Transaksjonsbegrepet og ACID-egenskapene Transaksjonsloggen og gjenoppbygging Samtidighetsproblemer Sekvensielle og serialiserbare forløp Låsing Leselåser og skrivelåser Låsegranularitet To-fase-låsing Vranglås Tidsstempling og optimistiske metoder Pensum: Kapittel 10 Databaser Leksjon 10: Transaksjoner - 2

3 Øyeblikksbilde av en database Data lagres på disk, men må leses inn i hurtigminnet for beregning. Sentralenhet Hurtigminne På et bestemt tidspunkt vil en del av databasen eksistere kun i minnet. Databasesystemer er i produksjon over lang tid. Må håndtere feilsituasjoner. Databaser Leksjon 10: Transaksjoner - 3

4 Hva er en «operasjon»? SQL-setninger kan behandle mange rader: UPDATE Ansatt SET Lønn = Lønn * 1.1 DBHS må løpe gjennom Ansatt-tabellen og oppdatere i kolonnen Lønn for hver rad. 1 SQL-setning utfører altså mange «operasjoner». Motsatt kan vi ønske å betrakte flere SQL-setninger som en enkelt operasjon. Eksempel fra Hobbyhuset: Ordrebestilling krever innsetting av rader i Ordre og Ordrelinje, samt oppdatering av Vare. Databaser Leksjon 10: Transaksjoner - 4

5 Transaksjonsbegrepet En transaksjon er en logisk operasjon mot databasen som fører databasen fra en lovlig tilstand til en annen. Kan involvere en eller flere tabeller. Kan bestå av en eller flere SQL-setninger, eller gjøres fra et høynivåspråk (Visual Basic, Java, PHP, ). Programmereren bestemmer hva som er en transaksjon. Transaksjoner kan avsluttes på to måter: COMMIT: bekreft, endringene gjøres permanente ROLLBACK: angre, transaksjonen «rulles tilbake» Utfordringer: Feil - for eksempel Diskfeil (fra skrivefeil til diskkrasj) (mediefeil) Feil i programvare og/eller operativsystemet Brudd på nettverksforbindelsen strømbrudd Samtidige brukere Databaser Leksjon 10: Transaksjoner - 5

6 Transaksjoner i SQL Ansatt 22 mottar bestilling av 5 enheter av produkt 4034 fra kunde og oppretter ordre 2020: INSERT INTO Ordre(OrdreNr,KNr,AnsNr) VALUES (2020,1003,22); INSERT INTO Ordrelinje(OrdreNr,VNr,Antall) VALUES (2020,'4034',5); UPDATE Vare SET Antall = Antall-5 WHERE VareNr='4034'; COMMIT; Etter den første og de to første SQL-setningene er ikke databasen i en lovlig tilstand. Databaser Leksjon 10: Transaksjoner - 6

7 Transaksjoner i et SQL-konsoll SQL*Plus er et interaktivt «SQL-konsoll» mot Oracle. > SELECT Spørreresultat blir vist > INSERT INTO Kvittering fra systemet To måter å sette opp et slikt konsoll: Systemet legger på en implisitt commit etter hver SQLkommando. Kan sette opp MySQL Bruker må skrive commit/rollback selv. på tilsvarende måte. Hvorfor har vi ikke noe «begin transaction»? En transaksjon går fra en commit/rollback til neste. Tenk at systemet legger inn en «første» commit ved pålogging. Noen systemer har «begin transaction». Databaser Leksjon 10: Transaksjoner - 7

8 ACID-egenskapene Atomicity: Alle eller ingen av deloperasjonene i en transaksjon må fullføres. Ansvar: DBHS Consistency: En transaksjon fører databasen fra en lovlig tilstand til en annen lovlig tilstand. Ansvar: Programmereren Independence: Effekt av transaksjoner under utførelse skal ikke kunne observeres av andre transaksjoner. Ansvar: DBHS Durability: Effekt av fullførte (comitted) transaksjoner lagres i databasen og skal ikke gå tapt på grunn av feil. Ansvar: DBHS Databaser Leksjon 10: Transaksjoner - 8

9 Transaksjonsloggen En transaksjon kan betraktes som en sekvens av lese- og skriveoperasjoner mot databasen. En transaksjonslogg er en fil på ytre lager som inneholder data om alle operasjoner som er utført mot databasen. En egen modul i DBHS har som oppgave å vedlikehold loggen. Fordi DBHS registrerer operasjoner i loggen før den skriver til databasen, blir det mulig å gjenopprette databasen ved feil. Generelt blir flere transaksjoner utført samtidig. Dermed vil oppføringene for en transaksjon ikke nødvendigvis stå samlet i loggen! Transaksjonsloggen inneholder informasjon om livsløpet til en transaksjon (bok S. 215/16). Databaser Leksjon 10: Transaksjoner - 9

10 Transaksjonsloggen TransID Table RowID Attribute Before After 101 *** BEGINTRANS 101 VARE ANTALL VARE ANTALL *** COMMIT Først ved COMMIT får transaksjoner (varig) effekt på databasen. Ved ROLLBACK: Innholdet i loggen blir ikke skrevet til databasen og eventuelle oppdateringer av databasen blir «rullet tilbake» (ved å lese loggen «baklengs»). (Diskuter «livsløp» av en transaksjon S. 215/16.) Ved gjenoppretting etter feil: Siste sikkerhetskopi blir lastet. Transaksjonsloggen brukes for å «rulle fram» til feiltidspunktet. Mer om sikkerhetskopiering og gjenoppbygging i neste leksjon. Databaser Leksjon 10: Transaksjoner - 10

11 Samtidighetskontroll Ønsker å tillate flere samtidige brukere av samme database. Utnytte parallellitet (CPU og I/O) Få ned gjennomsnittlig ventetid (lange og korte transaksjoner) Trygg samtidig aksess: Mange brukere kan lese samme data samtidig To brukere kan skrive samtidig kun hvis de jobber med forskjellige data. Feilsituasjoner som skyldes samtidighet: Tapt oppdatering Angret oppdatering Inkonsistent analyse Slike feil kan bare oppstå i et DBHS uten skikkelig samtidighetskontroll. Først ser vi på feilene, og deretter på løsningene. Databaser Leksjon 10: Transaksjoner - 11

12 Les-Beregn-Skriv Hva skjer når en «celle» på ytre lager skal oppdateres? UPDATE Ansatt SET Lønn = Lønn * 1.1 WHERE AnsNr = 14 Transaksjonen består av følgende deloperasjoner: 1. Les post med AnsNr = 14 fra ytre lager 2. Beregn ny lønn 3. Skriv resultat til ytre lager Les-Beregn-Skriv er ikke en atomær operasjon. Det betyr at to oppdateringer kan «flettes» i tid! Databaser Leksjon 10: Transaksjoner - 12

13 Tapt oppdatering Samtidighetsproblemer kan oppstå når to transaksjoner jobber med samme data til samme tid. Vi studerer hva som skjer når to transaksjoner skal oppdatere kolonnen Saldo i en bestemt rad (et tall). Transaksjon 1: Saldo 1 :=Saldo 1-10 Transaksjon 2: Saldo 1 :=Saldo Oppdateringen til transaksjon 2 blir skrevet over av transaksjon 1 og går tapt. Hvis Saldo=150 ved start, så får vi her Saldo=140 ved slutt. Korrekt resultat er Saldo=240 ( ). Databaser Leksjon 10: Transaksjoner - 13

14 Angret oppdatering Transaksjon 1 bygger på et resultat fra transaksjon 2 som transaksjon 2 seinere «angrer» på at den produserte. Transaksjon 1: Saldo 1 :=Saldo 1-10 Transaksjon 2: Saldo 1 :=Saldo ROLLBACK Transaksjoner må ikke få lov til å avlese andres «mellomresultater». Databaser Leksjon 10: Transaksjoner - 14

15 Inkonsistent analyse Transaksjon 2 produserer en rapport basert på noen «gamle» og noen «nye» resultater. Transaksjon 1: Saldo 1 :=Saldo 1-10 READ(Saldo 3 ) Saldo 3 :=Saldo WRITE(Saldo 3 ) Transaksjon 2: Sum:=0 Sum:=Sum+Saldo 1 READ(Saldo 2 ) Sum:=Sum+Saldo 2 READ(Saldo 3 ) Sum:=Sum+Saldo 3 Selv 1 «leser» og 1 «skriver» kan gi samtidighetsproblemer! Databaser Leksjon 10: Transaksjoner - 15

16 Låser Generell løsning på samtidighetsproblemene: Transaksjoner må vente på hverandre. En lås (lock) er en «ventemekanisme». En transaksjon kan låse en bestemt datamengde: hele databasen en tabell en rad i en tabell en «celle» i en rad i en tabell Vi skiller mellom skrivelåser (exclusive locks) og leselåser (shared locks). Hver lås kan føre til en ventekø. DBHS må holde styr på mange ventekøer. Databaser Leksjon 10: Transaksjoner - 16

17 Tapt oppdatering Samtidighetsproblemer kan oppstå når to transaksjoner jobber med samme data til samme tid. Vi studerer hva som skjer når to transaksjoner skal oppdatere kolonnen Saldo i en bestemt rad (et tall). Transaksjon 1: Saldo 1 :=Saldo 1-10 Transaksjon 2: Saldo 1 :=Saldo Oppdateringen til transaksjon 2 blir skrevet over av transaksjon 1 og går tapt. Hvis Saldo=150 ved start, så får vi her Saldo=140 ved slutt. Korrekt resultat er Saldo=240 ( ). Databaser Leksjon 10: Transaksjoner - 17

18 Løsning: Tapt oppdatering Transaksjon 1: BEGINTRANS WRITELOCK(Saldo 1 ) WAIT WAIT WAIT WAIT Saldo 1 :=Saldo 1-10 UNLOCK(Saldo 1 ) COMMIT Transaksjon 2: BEGINTRANS WRITELOCK(Saldo 1 ) Saldo 1 :=Saldo UNLOCK(Saldo 1 ) COMMIT Databaser Leksjon 10: Transaksjoner - 18

19 Angret oppdatering Transaksjon 1 bygger på et resultat fra transaksjon 2 som transaksjon 2 seinere «angrer» på at den produserte. Transaksjon 1: Saldo 1 :=Saldo 1-10 Transaksjon 2: Saldo 1 :=Saldo ROLLBACK Transaksjoner må ikke få lov til å avlese andres «mellomresultater». Databaser Leksjon 10: Transaksjoner - 19

20 Løsning: Angret oppdatering Transaksjon 1: BEGINTRANS WRITELOCK(Saldo 1 ) WAIT WAIT WAIT WAIT WAIT Saldo 1 :=Saldo 1-10 UNLOCK(Saldo 1 ) COMMIT Transaksjon 2: BEGINTRANS WRITELOCK(Saldo 1 ) Saldo 1 :=Saldo UNLOCK(Saldo1) ROLLBACK Databaser Leksjon 10: Transaksjoner - 20

21 Inkonsistent analyse Transaksjon 2 produserer en rapport basert på noen «gamle» og noen «nye» resultater. Transaksjon 1: Saldo 1 :=Saldo 1-10 READ(Saldo 3 ) Saldo 3 :=Saldo WRITE(Saldo 3 ) Transaksjon 2: Sum:=0 Sum:=Sum+Saldo 1 READ(Saldo 2 ) Sum:=Sum+Saldo 2 READ(Saldo 3 ) Sum:=Sum+Saldo 3 Selv 1 «leser» og 1 «skriver» kan gi samtidighetsproblemer! Databaser Leksjon 10: Transaksjoner - 21

22 Løsning: Inkonsistent analyse Transaksjon 1: BEGINTRANS WRITELOCK(Saldo 1 ) Saldo 1 :=Saldo 1-10 WRITELOCK(Saldo 3 ) READ(Saldo 3 ) Saldo 3 :=Saldo WRITE(Saldo 3 ) UNLOCK(Saldo 1 ) UNLOCK(Saldo 3 ) COMMIT Transaksjon 2: BEGINTRANS Sum:=0 READLOCK(Saldo 1 ) WAIT WAIT WAIT... Databaser Leksjon 10: Transaksjoner - 22

23 Serialiserbarhet Et forløp er en «fletting» i tid av deloperasjonene til en samling transaksjoner. Opplagt riktig resultat: Kun 1 transaksjon av gangen = sekvensiell forløp. Men: Det er mer effektivt med samtidige transaksjoner. Et serialiserbart forløp tillater samtidighet («fletting»), men har samme effekt som et sekvensielt forløp. Galt resultat - ikke serialiserbart forløp. T1: WRITELOCK(X) T1: X = X-5 T1: UNLOCK(X) T2: WRITELOCK(X) T2: WRITELOCK(Y) T2: IF X>0 THEN X = X-10 T2: IF Y>0 THEN Y = Y-10 T2: UNLOCK(X) T2: UNLOCK(Y) T1: WRITELOCK(Y) T1: Y = Y-5 T1: UNLOCK(Y) Databaser Leksjon 10: Transaksjoner - 23

24 To-fase-låsing En transaksjon følger reglene for to-fase låsing hvis alle låseoperasjoner gjøres før første frigivelse (opplåsing). Det vil si, ingen låsing etter første opplåsing! Lås Lås opp Lås Lås opp Lås Lås opp vokse fase minke fase Følgende gjelder: Hvis alle transaksjoner følger to-fase låsing vil ethvert forløp bli serialiserbart. Databaser Leksjon 10: Transaksjoner - 24

25 Vranglås:The Dining Philosophers Filosofene tenker og spiser. Hva skjer hvis alle fire vil spise samtidig? En filosof trenger begge gaflene for å spise (pasta av den sleipe typen). Vranglås:Transaksjoner som gjensidig venter på at de andre skal frigi låser. Databaser Leksjon 10: Transaksjoner - 25

26 Oppdage og «løse opp» vranglås Håndtere vranglås Bygge opp en ventegraf: Hvis transaksjon T1 må vente på transaksjon T2, så legg til en kant (pil) fra T1 til T2. Av og til: Gå gjennom ventegrafen og sjekk om det har oppstått en cykel, for eksempel at T1 venter på T2 som venter på T3 som igjen venter på T1. Velg en av transaksjonene i cykelen. Avbryt transaksjonen («rull den tilbake»). Gjennomfør de andre, og start avbrutt transaksjon etterpå. Forhindre vranglås Alle transaksjoner gis et unikt tidsstempel. Hvis en transaksjon vil måtte vente på en eldre transaksjon blir den avbrutt. Det betyr at yngre transaksjoner aldri vil vente på eldre og dermed kan det ikke oppstå cykler. Databaser Leksjon 10: Transaksjoner - 26

27 Pessimistisk og optimistisk låsing Pessimistisk låsing = standard låsing. Optimistisk låsing: Hensiktsmessig i systemer med få konflikter, for eksempel hvis de fleste kun leser, og i «interaktive» databaseapplikasjoner. Transaksjoner blir utført uten restriksjoner fram til COMMIT, men skriver til lokal kopi. Validering før lokal kopi blir skrevet til databasen. Kan velge mellom optimistisk/pessimistisk låsing i Access. Databaser Leksjon 10: Transaksjoner - 27

28 Oppsummering En transaksjon er en logisk operasjon. Blir definert ved COMMIT og ROLLBACK. Skal tilfredsstille ACID-egenskapene. DBHS må håndtere feil og samtidighet. Feil: Hvilke transaksjoner ble avbrutt når? Strømbrudd: Transaksjonslogg. Diskkrasj: Sikkerhetskopi + transaksjonslogg. Samtidighet: Transaksjoner må ikke få lov til å «forstyrre» hverandre. DBHS bruker leselåser og skrivelåser. Låser alene sikrer ikke et korrekt resultat. Tofase-låsing sikrer serialiserbare forløp. Kan fremdeles få vranglås. Vranglås kan oppdages eller forhindres. Databaser Leksjon 10: Transaksjoner - 28

Transaksjoner. transaksjon. når starter/slutter 1 trans.?

Transaksjoner. 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

Detaljer

Transaksjoner og flerbrukerproblematikk. Transaksjoner

Transaksjoner og flerbrukerproblematikk. Transaksjoner LC238D http://www.aitel.hist.no/fag/_dmdb/ Transaksjoner og flerbrukerproblematikk Transaksjoner side 2-4 Låseteknikker side 5 Isolasjonsnivåer side 6-7 Flerbrukerproblemer i fbm utførelse av transaksjoner

Detaljer

Repetisjonsforelesning, SQL og utover

Repetisjonsforelesning, 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

Detaljer

Transaksjoner og flerbrukerproblematikk. Transaksjoner

Transaksjoner og flerbrukerproblematikk. Transaksjoner LC238D http://www.aitel.hist.no/fag/_dmdb/ Transaksjoner og flerbrukerproblematikk Transaksjoner side 2-4 Låseteknikker side 5 Isolasjonsnivåer side 6-7 Flerbrukerproblemer i fbm utførelse av transaksjoner

Detaljer

INF3100 V2018 Obligatorisk oppgave nr. 2

INF3100 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,

Detaljer

DBS21 Samtidighetskontrollteknikker

DBS21 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

Detaljer

Presentasjon av doktorgradsprosjekt

Presentasjon 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

Detaljer

1. SQL datadefinisjon og manipulering

1. SQL datadefinisjon og manipulering Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL datadefinisjon og manipulering Tore Mallaug 7.10.2008 Lærestoffet er utviklet for faget Databaser 1. SQL datadefinisjon og manipulering

Detaljer

DBS20 - Introduksjon til transaksjonsprosessering og teori

DBS20 - 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

Detaljer

Introduksjon til fagfeltet

Introduksjon 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

Detaljer

Systemfeil og logging

Systemfeil 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

Detaljer

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn EKSAMENSFORSIDE Skriftlig eksamen med tilsyn Emnekode: Emnenavn: 6102 Databaser Dato: Tid fra / til: 06.06.2017 10:00-14:00 Ansv. faglærer: Bjørn Kristoffersen Campus: Fakultet: Bø Handelshøyskolen Antall

Detaljer

Isolasjon i postgres og mysql

Isolasjon 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...

Detaljer

Transaksjonshåndtering Del 2

Transaksjonshå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

Detaljer

Høgskolen i Telemark EKSAMEN 6102 DATABASER Tid: Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

Høgskolen i Telemark EKSAMEN 6102 DATABASER Tid: Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1 Høgskolen i Telemark EKSAMEN 6102 DATABASER 02.12.2014 Tid: 10-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 13 med forside Ingen Ingen Vedlegg: Eksempeldata til oppgave 1 Eksamensresultater

Detaljer

Databaseadministrasjon

Databaseadministrasjon Databaseadministrasjon Oppgavene til DBA gjennom livsløpet til databasen Systemarkitekturer Systemkatalogen Oppbygging av DBHS Verktøy for DBA Sikkerhetstrusler og virkemidler Sikkerhetskopiering og gjenoppbygging

Detaljer

Transaksjonshåndtering og samtidighetskontroll

Transaksjonshå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

Detaljer

DBS22 Databasegjenopprettingsteknikker

DBS22 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

Detaljer

Samtidighetsfenomener og anomalier i eksekveringsplaner. INF Ellen Munthe-Kaas 1

Samtidighetsfenomener 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

Detaljer

Transaksjonshåndtering Del 2

Transaksjonshå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

Detaljer

Transaksjonshåndtering og samtidighetskontroll

Transaksjonshå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

Detaljer

Transaksjonshåndtering Del 2

Transaksjonshå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

Detaljer

Systemfeil og logging

Systemfeil og logging UNIVERSITETET I OSLO Systemfeil og logging Institutt for Informatikk INF3100 7.3.2014 Ellen Munthe-Kaas 1 Integritetsregler Vi ønsker at data alltid skal være korrekte: Integritetsregler er predikater

Detaljer

Transaksjonshåndtering og samtidighetskontroll

Transaksjonshå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

Detaljer

5602 DATABASER 02.12.2010. Bokmål/nynorsk. 17 (inkludert denne forsiden) Eksamensresultatene blir offentliggjort på Studentweb.

5602 DATABASER 02.12.2010. Bokmål/nynorsk. 17 (inkludert denne forsiden) Eksamensresultatene blir offentliggjort på Studentweb. Høgskolen i Telemark EKSAMEN 5602 DATABASER 02.12.2010 Tid: 9-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 17 (inkludert denne forsiden) Ingen Ingen Vedlegg: A: Eksempeldata og B: Svarark

Detaljer

ndtering og samtidighetskontroll

ndtering 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

Detaljer

Innhold. Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer. Prinsipper for synkronisering av felles hukommelse

Innhold. Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer. Prinsipper for synkronisering av felles hukommelse Innhold Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer Prinsipper for synkronisering av felles hukommelse Multiprosessorer koblet sammen av én buss 02.05 2001 Parallelle

Detaljer

INF1300 Introduksjon til databaser

INF1300 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

Detaljer

Transaksjonshåndtering Del 3

Transaksjonshåndtering Del 3 UNIVERSITETET I OSLO Transaksjonshåndtering Del 3 Ragnar Normann INF3100 24.3.2009 Ragnar Normann 1 Serialiserbarhet Vi har tidligere definert serialiserbarhet på denne måten: En eksekveringsplan kalles

Detaljer

Transaksjonsmodell. Samtidighet (1) ACID-transaksjoner. Samtidighet (2) Systemkræsj (1) Kapittel 17, Coping With System Failure

Transaksjonsmodell. Samtidighet (1) ACID-transaksjoner. Samtidighet (2) Systemkræsj (1) Kapittel 17, Coping With System Failure SIF8020 Datamodellering og databasesystemer: Transaksjonsmodell Kapittel 17, Coping With System Failure 20. april 2004, Roger Midtstraum, IDI/ ACID-transaksjoner Atomicity Alt eller ingenting Consistency

Detaljer

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

Samtidighetsfenomener og anomalier i eksekveringsplaner (kursorisk) INF3100 Ellen Munthe-Kaas 1

Samtidighetsfenomener 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

Detaljer

Det matematisk-naturvitenskapelige fakultet

Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 Databaseteori Eksamensdag : Fredag 7. juni 1996 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 6 sider Vedlegg :

Detaljer

Repetisjon av transaksjonshåndtering og samtidighetskontroll. Lana Vu

Repetisjon 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

Detaljer

Transaksjonshåndtering. Skalerbarhet.

Transaksjonshåndtering. Skalerbarhet. Else Lervik 13.04.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 11. Resymé: Vi skali denne leksjonen se litt på hva vi må ta hensyn

Detaljer

INF1300 Introduksjon til databaser

INF1300 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

DBMS Database Management System (repetisjon) Programmeringsgrensesnitt. Serialiserbarhet

DBMS 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

Detaljer

EKSAMEN DATABASER

EKSAMEN DATABASER EKSAMEN 6102 DATABASER 30.05.2016 Tid: 4 timer (9-13) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål 7 (inkludert denne) Ingen Ingen Eksempeldata Sensuren finner du på StudentWeb. Vekting

Detaljer

FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 11 INTRODUKSJON...

FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 11 INTRODUKSJON... Innholdsfortegnelse FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 1 INTRODUKSJON... 3 1.1 DATABASESYSTEMER... 3 1.1.1 Anvendelser... 3 1.1.2 Oppgaver

Detaljer

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

D: 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

Detaljer

svarforslag SLUTTEKSAMEN IBE211 Databaser, våren 2015

svarforslag SLUTTEKSAMEN IBE211 Databaser, våren 2015 svarforslag SLUTTEKSAMEN IBE211 Databaser, våren 2015 Dato: 11/5-2015. Tid: 4 timer, skriftlig, ingen hjelpemidler. Oppgave 1 (80 %) Vi skal lage et sterkt forenklet system for Sjøfartsdirektoratet som

Detaljer

INF3100 Databasesystemer. Transaksjonshåndtering. ndtering Del 3. Ragnar Normann

INF3100 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

Detaljer

SLUTTPRØVE 5602 DATABASER I 5.12.2008. 17 (inkludert vedlegg og denne forsida) Vedlegg: A: Eksempeldata og B: Svarark til oppgave 4

SLUTTPRØVE 5602 DATABASER I 5.12.2008. 17 (inkludert vedlegg og denne forsida) Vedlegg: A: Eksempeldata og B: Svarark til oppgave 4 Høgskolen i Telemark SLUTTPRØVE 5602 DATABASER I 5.12.2008 Tid: 9-14 Målform: Sidetal: Hjelpemiddel: Merknader: Bokmål og nynorsk 17 (inkludert vedlegg og denne forsida) Ingen Ingen Vedlegg: A: Eksempeldata

Detaljer

MySQL. Historikk. Nedlasting og installasjon

MySQL. Historikk. Nedlasting og installasjon 1 MySQL MySQL kan lastes ned gratis fra Internett (dev.mysql.com/doc). Vi forklarer hvordan man laster ned og installerer verktøyet, og også hvordan man kommer i gang med å lage databaser i MySQL. Historikk

Detaljer

Deling av data Transaksjoner

Deling 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 =>

Detaljer

Deling av data Transaksjoner

Deling 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 =>

Detaljer

Metaspråket for å beskrive grammatikk

Metaspråket for å beskrive grammatikk 1 SQL-syntaks Korrekt språkbruk bygger på et sett av regler. Eksempler: En SQL utvalgsspørring inneholder alltid ordene SELECT og FROM, mens WHERE og tilhørende betingelse er valgfri. Etter SELECT kan

Detaljer

Tabeller og enkle spørringer

Tabeller og enkle spørringer Tabeller og enkle spørringer Database, relasjonsdatabase Databasehåndteringssystem (DBHS) Databasesystem Tabell, kolonne, rad, datatype, verdi, primærnøkkel Utvalgsspørringer i SQL Velge ut rader Velge

Detaljer

Miniverden og ER- modell

Miniverden og ER- modell TDT4145 Datamodellering og databasesystemer SQL- oppgave 1 Miniverden og ER- modell Vi tar utgangspunkt i en enkel modell for en pizza- restaurant, der følgende ER- diagram beskriver databasen: Relasjonsdatabase-

Detaljer

Høgskolen i Telemark EKSAMEN 6102 DATABASER 02.12.2014. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

Høgskolen i Telemark EKSAMEN 6102 DATABASER 02.12.2014. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1 Høgskolen i Telemark EKSAMEN 6102 DATABASER 02.12.2014 Tid: 10-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 13 med forside Ingen Ingen Vedlegg: Eksempeldata til oppgave 1 Eksamensresultater

Detaljer

Transaksjonshåndtering Del 3

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.

Detaljer

Øving 5: Transaksjonshåndtering, logging og normalisering

Ø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

Detaljer

Satsvise, interaktive, sanntids/innbakte systemer. Arne Maus, Ifi. Oppdeling av både program og data på flere maskiner

Satsvise, interaktive, sanntids/innbakte systemer. Arne Maus, Ifi. Oppdeling av både program og data på flere maskiner Typer av systemer, Arkitektur og Databaser Arne Maus, Ifi med takk til Dag Lorås(Visma) og Ian Sommerville for delvis lån av gamle foiler Dagens forelesning. Ulike typer systemer Satsvise, interaktive,

Detaljer

Databearbeiding direkte i memory på LASR server nye muligheter? Trond Holmen, SAS Institute

Databearbeiding direkte i memory på LASR server nye muligheter? Trond Holmen, SAS Institute Databearbeiding direkte i memory på LASR server nye muligheter? Trond Holmen, SAS Institute Bakgrunn: Hvordan virker en tradisjonell database Store datamengder har tradisjonelt vært lagret på disk For

Detaljer

Transaksjonshåndtering Del 3

Transaksjonshå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

Detaljer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 99539963 Roger Midtstraum: 99572420

Detaljer

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON...

FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON... FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON... 3 1.1 DATABASESYSTEMER...3 1.1.1 Anvendelser...3 1.1.2 Oppgaver og arkitektur...4 1.1.3

Detaljer

12. Et større ASP-eksempel. 12.1. Innledning. 12.2. Beskrivelse av nett-butikken. Innhold

12. Et større ASP-eksempel. 12.1. Innledning. 12.2. Beskrivelse av nett-butikken. Innhold Else Lervik 20.04.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 12. Resymé: Vi skali denne leksjonen se litt på hva vi må ta hensyn

Detaljer

Videregående programmering 6

Videregående programmering 6 Videregående programmering 6 1. Feilkontroll i klasser uten unntaksobjekter Klasser skal lages sikre. Argumentverdier skal kontrolleres, og eventuelle feil skal rapporteres til klienten. I praksis har

Detaljer

Arne Maus, Ifi. delvis lån av gamle foiler

Arne Maus, Ifi. delvis lån av gamle foiler Typer av systemer, Arkitektur og Databaser Arne Maus, Ifi med takk til Dag Lorås(Visma) og Ian Sommerville for delvis lån av gamle foiler INF 1050 Systemutvikling v2010 1 Dagens forelesning 1. Ulike typer

Detaljer

9. ASP med databasekopling, del II

9. ASP med databasekopling, del II Else Lervik 23.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 9. Resymé: I forrige leksjon så vi hvordan ASP kunne brukes til å vise

Detaljer

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Eksamensdato: 23. mai 2013 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte

Detaljer

Andre sett obligatoriske oppgaver i INF3100 V2012

Andre 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,

Detaljer

Datamodellering og databaser SQL, del 2

Datamodellering og databaser  SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

GetMutex(lock) { while(testandset(lock)) {} } En context switch kan ikke ødelegge siden testen og endringen av lock skjer i samme instruksjon.

GetMutex(lock) { while(testandset(lock)) {} } En context switch kan ikke ødelegge siden testen og endringen av lock skjer i samme instruksjon. Hardware-støttet Semafor og Implementasjon av semafor i OS til å synkronisere Hardware-støttet alle softwareløsninger innebærer mange instruksjoner i tillegg til busy-waiting, som koster CPU-tid. I praksis

Detaljer

Fakultet for informasjonsteknologi, Løsning på kontinuasjonseksamen i TDT4190 / SIF8042 Distribuerte systemer August 2005, 0900 1300

Fakultet 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

Detaljer

Spørringer mot flere tabeller

Spørringer mot flere tabeller Spørringer mot flere tabeller Kartesisk produkt / kryssprodukt/krysskobling Likekoblinger INNER JOIN syntaks Generelle koblinger Egenkoblinger Ytre koblinger Union, snitt og differanse Mer om gruppering

Detaljer

Datamodellering og databaser SQL, del 2

Datamodellering og databaser  SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

SQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks.

SQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks. SQL og Mengdelære Oracle, MySQL, Access, bruker forskjellige syntaks. Kan vi beskrive, hva SQL er og hva man kan gjøre med SQL, uavhengig av konkret syntaks!!! Hvilke universale formelle språk har vi til

Detaljer

INF5030. Håndtering av virksomhetskritiske data

INF5030. Håndtering av virksomhetskritiske data UNIVERSITETET I OSLO INF5030 Håndtering av virksomhetskritiske data Jon Grov Ragnar Normann 8. september 2005 INF5030 - Jon Grov 1 Introduksjon Tema for kurset er transaksjonshåndtering Vi er altså interessert

Detaljer

For 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

For 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

Detaljer

Normalisering. Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering

Normalisering. Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering Normalisering Motivasjon Redundans Funksjonelle avhengigheter Determinanter Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering Pensum:

Detaljer

Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem

Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem Innhold Forord....................................................... 5 Innledning.................................................... 15 Databaser som basis i grunnopplæringen....................... 15

Detaljer

Normalisering. ER-modell

Normalisering. ER-modell Normalisering Hensikten med normalisering: En informasjonsenhet ett sted. Forhindrer anomalier Anomalier: Innsettingsanomalier. F.eks være avhengig av å sette inn flere verdi, selv om det er det er bare

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

Andre sett obligatoriske oppgaver iinf3100v2011

Andre 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

Detaljer

Parallelle og distribuerte databaser Del I

Parallelle 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

Detaljer

Sikkerhet og tilgangskontroll i RDBMS-er

Sikkerhet og tilgangskontroll i RDBMS-er Sikkerhet og tilgangskontroll i RDBMS-er IN2090 14. nov 2018 Mathias Stang 1 Agenda Modeller for tilgangskontroll Brukere og roller i RDBMS-er GRANT og REVOKE SQL Injections 2 Hovedmål med databasesikkerhet

Detaljer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 995 39 963 Roger Midtstraum: 995 72

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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:

Detaljer

Systemfeil og logging

Systemfeil og logging UNIVERSITETET IOSLO Systemfeil og logging Institutt for Informatikk INF3100 28.2.2011 Ellen Munthe-Kaas 1 Korrekthet av data Vi ønsker at data alltid skal være riktige og nøyaktige Eksempel på tvilsomme

Detaljer

SQL: Systemaspekter. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21

SQL: Systemaspekter. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21 SQL: Systemaspekter Evgenij Thorstensen V18 Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21 Oversikt Hvordan et DBMS er organisert (med psql som eksempel) Trelagsarkitektur og impedance mismatch Databasetilgangsmåter

Detaljer

Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer

Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer Institutt for datateknikk og informasjonsvitenskap Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 9953 9963 Eksamensdato: 9. desember

Detaljer

Parallelle og distribuerte databaser del I

Parallelle 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:

Detaljer

Andre sett obligatoriske oppgaver i INF3100 V2013

Andre 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,

Detaljer

Applikasjonsutvikling med databaser

Applikasjonsutvikling med databaser Applikasjonsutvikling med databaser Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 10.10.2011 October 12, 2011 1 / 24 Applikasjonsutvikling med databaser Databaser tilbyr

Detaljer

EKSAMENSOPPGAVE I TDT4145 DATAMODELLERING OG DATABASESYSTEMER. Faglig kontakt under eksamen: Svein Erik Bratsberg og Roger Midtstraum

EKSAMENSOPPGAVE I TDT4145 DATAMODELLERING OG DATABASESYSTEMER. Faglig kontakt under eksamen: Svein Erik Bratsberg og Roger Midtstraum Side 1 av 5 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap EKSAMENSOPPGAVE I TDT4145 DATAMODELLERING OG DATABASESYSTEMER Faglig kontakt under eksamen:

Detaljer

Andre sett obligatoriske oppgaver i INF3100 V2009

Andre sett obligatoriske oppgaver i INF3100 V2009 Andre sett obligatoriske oppgaver i INF3100 V2009 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 19. mai 2003 Varighet: 0900-1300 Fagnummer: Fagnavn: Klasser: LV193D Web-programmering med JSP NETT Studiepoeng:

Detaljer

ORDBMS og OODBMS i praksis

ORDBMS og OODBMS i praksis ORDBMS og OODBMS i praksis Lars Vidar Magnusson November 2, 2011 Lars Vidar Magnusson () Forelesning i DAS 01.11.2011 November 2, 2011 1 / 18 Eksempler på ORDBMS Flere av de store databaser i dag hevder

Detaljer

WinTid Scheduler. Oppgradering til versjon 6.0.1 HRM

WinTid Scheduler. Oppgradering til versjon 6.0.1 HRM Oppgradering til versjon 6.0.1 HRM Innholdsfortegnelse 1. OM DOKUMENTET... 3 1.1 DOKUMENTETS MÅLSETNING... 3 1.2 HVEM ER DOKUMENTET SKREVET FOR?... 3 1.3 OPPBYGNING OG OPPBEVARING... 3 1.4 ANSVARLIG FOR

Detaljer

Fakultet for informasjonsteknologi, Løsning på eksamen i TDT4190 Distribuerte systemer Torsdag 9. juni 2005, 0900 1300

Fakultet 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

Detaljer

Transaksjonshåndtering Del 3

Transaksjonshå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

Detaljer

Oppgave 1 ER- og relasjonsmodell 10 %

Oppgave 1 ER- og relasjonsmodell 10 % Side 1 av 7 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER

Detaljer

Databasedesign HVA? HVORDAN? E/R diagram. Begrepsmessig databasedesign. Logisk databasedesign. Fysisk databasedesign

Databasedesign HVA? HVORDAN? E/R diagram. Begrepsmessig databasedesign. Logisk databasedesign. Fysisk databasedesign Databasedesign HVA? Begrepsmessig databasedesign E/R diagram Logisk databasedesign HVORDAN? Fysisk databasedesign Databaser Leksjon 7: Logisk databasedesign - 1 Logisk databasedesign Fra E/R til tabellstruktur:

Detaljer

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det.

Det 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

Detaljer