Relasjonsdatabasedesign, ekstramateriale (ikke pensum)

Størrelse: px
Begynne med side:

Download "Relasjonsdatabasedesign, ekstramateriale (ikke pensum)"

Transkript

1 UNIVERSITETET I OSLO Relasjonsdatabasedesign, ekstramateriale (ikke pensum) Normalformer utover 4NF Bruk av Datalog for å uttrykke mer komplekse integritetsregler Institutt for Informatikk INF Ellen Munthe-Kaas 1

2 Normalformer utover 4NF INF Ellen Munthe-Kaas 2

3 Høyere normalformer, oversikt 1NF BCNF 4NF ETNF RFNF = KCNF SKNF 5NF INF Ellen Munthe-Kaas 3

4 Normalformer utover 4NF ETNF Essential Tuple Normal Form (Darwen, Date, Fagin 2012) KCNF Key-Complete Normal Form (Maier 1983) RFNF Redundancy Free Normal Form (Vincent 1995) SKNF Superkey Normal Form (Maier 1983) 5NF Femte normalform (Fagin 1979) INF Ellen Munthe-Kaas 4

5 Joinavhengigheter La R være en relasjon med attributtene A={A 1,,A k }, og la {C 1,,C m } være en samling av komponenter over A (dvs. C i A for alle i og C 1 C m = A). Vanligvis overlapper hver C i med minst én annen komponent C j (der j i). Vi sier at R tilfredsstiller joinavhengigheten eller JDen (Join Dependency) J= {C 1,,C m } hvis vi for enhver gyldig instans av R har at dekomposisjonen av instansen i henhold til komponentene i J er tapsfri. INF Ellen Munthe-Kaas 5

6 JDer og MVDer Joinavhengigheter gir opphav til en større klasse integritetsregler enn de som kan uttrykkes ved bare FDer og MVDer. Teorem. Hvis m=2, dvs. J= {C 1,C 2 }, så tilfredsstiller R JDen J hvis og bare hvis vi har en MVD X Y der X=C 1 C 2 og Y=C 2 C 1 Dette betyr at en MVD er det samme som en JD med 2 komponenter INF Ellen Munthe-Kaas 6

7 Armstrongs slutningsregler og JDer Armstrongs slutningsregler kan ikke utvides til å omfatte JDer: Det finnes intet sunt, komplett og endelig regelsett for JDer. (Det finnes sunne regelsett, men til ethvert slikt regelsett går det alltid an å konstruere eksempelrelasjoner der regelsettet ikke er tilstrekkelig til å vise alt som holder.) INF Ellen Munthe-Kaas 7

8 Utgangspunkt for normalformene utover 4NF Alle integritetsregler er i form av FDer og JDer Dette omfatter også MVDer siden alle MVDer kan uttrykkes som JDer Generelt er altså utgangspunktet for alle normalformene en relasjon R der de gyldige instansene er karakterisert ved at de tilfredsstiller en mengde FDer F og en mengde JDer J INF Ellen Munthe-Kaas 8

9 Trivielle JDer En JD kalles triviell dersom en av komponentene omfatter samtlige attributter. Trivielle JDer holder for alle instanser uansett hvilke andre FDer og JDer som gjelder. INF Ellen Munthe-Kaas 9

10 Irredusible JDer En JD J= {C 1,,C m } er reduserbar hvis det finnes en komponent C i der også J = {C 1,,C i-1,c i+1,...,c m } holder (dvs. der J følger logisk fra de integritetsreglene F og J som gjelder). Hvis det finnes en slik C i, vil C i alltid være overflødig fordi den ikke gir noen begrensninger på mengden av mulige instanser utover det de øvrige komponentene i J gir. En JD der det ikke fins noen slik komponent, kalles irredusibel. INF Ellen Munthe-Kaas 10

11 Utgangspunkt for normalformene utover 4NF (forts.) Vi kan uten tap av generalitet begrense oss til relasjoner R der de gyldige instansene er karakterisert ved at de tilfredsstiller en mengde ikketrivielle FDer F og en mengde ikketrivielle og irredusible JDer J. Så på resten av lysarkene har vi underforstått en relasjon R der mengden av gyldige instanser er karakterisert ved at de oppfyller reglene i to mengder F og J der FDene i F er ikketrivielle og JDene i J er ikketrivielle og irredusible. INF Ellen Munthe-Kaas 11

12 Eksplisitte og implisitte integritetsregler Vi skiller mellom eksplisitte og implisitte FDer og JDer: De eksplisitte er de integritetsreglene som er listet opp i henholdsvis F og J. De implisitte er de som følger logisk fra (kan utledes fra) F og J INF Ellen Munthe-Kaas 12

13 Partielt redundante tupler La r være en instans av R. Et tuppel t i r er partielt redundant hvis det finnes et annet tuppel t t i r og en ikketriviell (eksplisitt eller implisitt) FD X A slik at t [X] = t[x]. Intuitivt betyr dette at informasjonen i t [A] er representert to ganger (i t[a] og i t [A]). INF Ellen Munthe-Kaas 13

14 Fullt redundante tupler Et tuppel i en instans r er fullt redundant hvis det finnes en mengde av tupler S i r der t S og det er slik at t følger logisk fra S. Intuitivt betyr dette at informasjonen i tuppelet både finnes indirekte (kan utledes fra andre tupler i instansen) og direkte (i tuppelet selv). Tuppelet kan imidlertid ikke uten videre fjernes, for da risikerer vi at den resulterende mengden av tupler ikke lenger oppfyller alle integritetsreglene. INF Ellen Munthe-Kaas 14

15 Essensielle tupler Et tuppel er essensielt hvis det hverken er partielt eller fullt redundant. INF Ellen Munthe-Kaas 15

16 Verdiredundans La R være en relasjon, r en instans av R, t et tuppel i r og A et attributt. Da er verdien t[a] redundant i r hvis det er slik at hvis vi erstatter t med et annet tuppel t der t [A] t[a] og t [B] = t[b] for alle attributter B A, så får vi noe som ikke er en gyldig instans i R. Intuitivt betyr dette at verdien i t[a] er entydig bestemt av de andre attributtverdiene i r. Merk at verdiredundans og partielt redundante tupler ikke er det samme. INF Ellen Munthe-Kaas 16

17 BCNF Boyce-Codd Normal Form Alternativ definisjon av BCNF: En relasjon R er på BCNF hvis alle eksplisitte og implisitte FDer følger logisk fra kandidatnøklene i R. Teorem. En relasjon er på BCNF hvis og bare hvis ingen instans har noe partielt redundant tuppel. INF Ellen Munthe-Kaas 17

18 4NF Alternativ definisjon av 4NF: En relasjon R er på 4NF hvis alle eksplisitte og implisitte MVDer følger logisk fra kandidatnøklene i R. INF Ellen Munthe-Kaas 18

19 ETNF Essential Tuple Normal Form En relasjon R er på ETNF hvis alle tupler i alle instanser er essensielle. Teorem. En relasjon R er på ETNF hvis og bare hvis den er på BCNF og hver eksplisitt JD har minst én komponent som er en supernøkkel. INF Ellen Munthe-Kaas 19

20 KCNF Key-Complete Normal Form En relasjon R er på KCNF hvis den oppfyller de to kravene under: 1. Relasjonen er på BCNF. 2. For hver eksplisitt eller implisitt JD J er det slik at hvis vi tar unionen av de komponentene i J som er supernøkler, så får vi samtlige attributter i R. INF Ellen Munthe-Kaas 20

21 RFNF Redundancy-Free Normal Form En relasjon R er på RFNF hvis det ikke finnes noen instans med et tuppel t der verdien av t er redundant i ett av attributtene. Teorem. RFNF = KCNF INF Ellen Munthe-Kaas 21

22 SKNF Superkey Normal Form En relasjon R er på SKNF hvis R er på BCNF og hver komponent i hver irredusibel eksplisitt eller implisitt JD er en supernøkkel. INF Ellen Munthe-Kaas 22

23 5NF Femte normalform En relasjon R er på 5NF hvis alle eksplisitte og implisitte JDer følger logisk fra kandidatnøklene i R. INF Ellen Munthe-Kaas 23

24 Nøkkelsammenhengende JDer 5NF forklart på en annen måte: En relasjon R er på 5NF hvis alle eksplisitte og implisitte JDer J er nøkkelsammenhengende i henhold til følgende algoritme: Så lenge det finnes to komponenter i J hvor snittet er en supernøkkel eller hvor den ene komponenten er inneholdt i den andre, så bytt ut de to komponentene med unionen av de to Hvis prosessen terminerer med R (dvs. samtlige attributter) som en av komponentene, er J nøkkelsammenhengende, ellers ikke INF Ellen Munthe-Kaas 24

25 BCNF, 4NF og 5NF Sammenlikn definisjonene under: En relasjon R er på BCNF hvis alle eksplisitte og implisitte FDer følger logisk fra kandidatnøklene i R. En relasjon R er på 4NF hvis alle eksplisitte og implisitte MVDer følger logisk fra kandidatnøklene i R. En relasjon R er på 5NF hvis alle eksplisitte og implisitte JDer følger logisk fra kandidatnøklene i R. INF Ellen Munthe-Kaas 25

26 5NF, PJNF og SKNF 5NF kalles også PJNF Project-Join Normal Form Vær oppmerksom på at mange lærebøker definerer 5NF feil det de kaller 5NF, er i realiteten SKNF. Dette skyldes en tidlig misforståelse/feil i definisjonen av 5NF i David Maiers lærebok The Theory of Relational Databases (Computer Science Press, 1983) og at denne definisjonen ukritisk er blitt kopiert til andre lærebøker INF Ellen Munthe-Kaas 26

27 Oppsummering av høye normalformer 5NF er (ekte) inneholdt i SKNF, SKNF er (ekte) inneholdt i RFNF, RFNF er (ekte) inneholdt i ETNF og ETNF er (ekte) inneholdt i 4NF RFNF = KCNF En relasjon R er på 4NF hvis og bare hvis alle (eksplisitte og implisitte) JDer med to komponenter består av to supernøkler. (Dette bevises ved å vise at en join av to supernøkler er tapsfri hvis og bare hvis deres snitt er en supernøkkel) Hvis vi fortsetter å tapsfritt dekomponere en relasjon på ETNF, så vil ikke dekomposisjonen bety noen reduksjon i antall tupler eller verdier som må lagres, tvert imot vil lagerbehovet øke INF Ellen Munthe-Kaas 27

28 Høyere normalformer, oversikt Ingen JDer med tre eller flere komponenter Ingen ekte MVDer 1NF EKNF BCNF Minst én ekte MVD Minst én ekte 1 JD med tre eller flere komponenter 1 Med ekte JD mener vi at JDen ikke følger fra de andre reglene 5NF SKNF RFNF=KCNF ETNF BCNF = 4NF når vi ikke har noen ekte MVDer. BCNF = 4NF = ETNF = RFNF = SKNF = 5NF når alle integritetsregler kan formuleres med bare FDer. 4NF INF Ellen Munthe-Kaas 28

29 Chasealgoritmen utvidet for JDer Gitt en dekomposisjon av R(A,B,...) til relasjonene S 1,...,S k og et sett F med FDer og et sett J med JDer for R. Er dekomposisjonen tapsfri? 1. Lag en tabell med en kolonne for hvert attributt i R og en rad for hver S i 2. I kolonnen for attributt A, for hver rad i: Skriv a hvis A er et attributt i S i Skriv a i hvis A ikke er et attributt i S i 3. Så lenge det skjer forandringer i tabellen og det ikke finnes en rad uten subskriptverdier: For hver FD X Y, for alle rader i tabellen med lik X-verdi, gjør Y- verdiene like. Hvis en av Y-ene er en verdi uten subskript, skal denne velges For hver JD {C 1,...,C m }, for hvert utvalg av m rader t 1,...,t m der t i [C i C j ]=t j [C i C j ] for alle par (i,j), lag en ny rad t der t[c i ]=t i [C i ] for alle i. Hvis en rad er uten subskriptverdier, er dekomposisjonen tapsfri, ellers ikke. INF Ellen Munthe-Kaas 29

30 Annen bruk av chasealgoritmen For å vise en JD {C 1,...,C m }, start tabellen med m rader der rad j har verdier uten subskript for attributtene i C j og verdier med subskript forøvrig. Målet er å komme frem til en instans der en av disse radene er uten subskriptverdier. INF Ellen Munthe-Kaas 30

31 Eksempel 1: JDer og begrepene ikketriviell og irredusibel Betrakt R(A,B,C) der A BC er eneste integritetsregel. Da holder de implisitte JDene J 1 = {AB,AC,ABC} J 2 = {AB,AC,BC} J 3 = {AB,AC} Dette kan vises ved å bruke chasealgoritmen INF Ellen Munthe-Kaas 31

32 Eksempel 1 (forts.) J 1 er triviell; den inneholder komponenten ABC. J 1 er reduserbar; den kan reduseres til {ABC}. Hverken J 2 eller J 3 er trivielle. J 2 er reduserbar: komponenten BC er overflødig; når vi tar den bort, reduseres J 2 til J 3. J 3 er irredusibel; vi kan ikke fjerne noen av komponentene AB eller AC uten at vi bryter kravet om at alle attributtene skal være representert i minst én komponent. INF Ellen Munthe-Kaas 32

33 Eksempel 2: Relasjon som er på ETNF, men ikke RFNF Gitt relasjonen R(A,B,C) der A er leverandør, B er reservedel og C er prosjekt. Følgende integritetsregler skal holde: Hvis leverandør A leverer en reservedel B, og B leveres til prosjekt C, og C får leveranser fra A, så skal A levere B til C. Dvs. JDen {AB,BC,CA} skal gjelde. Hvert prosjekt C mottar en reservedel B fra maksimalt én leverandør A. Dvs. FDen BC A skal gjelde. INF Ellen Munthe-Kaas 33

34 Eksempel 2 (forts.) Hva sier JDen {AB,BC,CA}? A B C a b c Hvis disse tre tuplene er med, a b c a b c a b c må dette tuppelet også være med (tuppelet er i såfall fullt redundant) Hva sier FDen BC A? a og a i instansen over skal være like så instansen må se slik ut: A B C a b c a b c a b c (ingen redundante tupler; det redundante tuppelet forsvinner ) INF Ellen Munthe-Kaas 34

35 Eksempel 2 (forts.) Relasjonen er på BCNF: Bruk chasealgoritmen til å sjekke at ingen av FDene AB C, B A, C A eller C B holder. Relasjonen er på ETNF: Eneste kandidatnøkkel er BC. Så JDen {AB,BC,CA} inneholder en komponent som er en supernøkkel (nemlig BC). Relasjonen er ikke på RFNF: Siden RFNF=KCNF, er det tilstrekkelig å undersøke om unionen av supernøkkelkomponentene i {AB,BC,CA} omfatter samtlige attributter. Men BC er eneste supernøkkelkomponent, så A er ikke dekket av noen supernøkkelkomponent. INF Ellen Munthe-Kaas 35

36 Domenerestriksjoner Det er viktig å være klar over at en av forutsetningene for normalformene slik de er formulert over, er at integritetsreglene bare er i form av FDer og JDer Hvis vi i tillegg til FDer og JDer kan ha restriksjoner på hvilke verdier et attributt kan inneholde, f.eks. at ett attributt har domenet boolean og et annet har en av verdiene {gull, sølv, bronse}, så holder ikke nødvendigvis teoremene lenger. I tillegg må (noen av) normalformdefinisjonene endres litt. INF Ellen Munthe-Kaas 36

37 Høyere normalformer med domenerestriksjoner, oversikt For alle normalformer merket med * blir definisjonene og/eller teoremene påvirket hvis vi kan ha domenerestriksjoner. For 4NF og lavere er det tilstrekkelig å forutsette at alle domener har minst to elementer; da holder teoremene. I praksis er dette alltid oppfylt. For *-normalformene høyere enn 4NF holder alle teoremene når vi i tillegg har at nøkkelattributtenes domener er store nok 1 1NF BCNF* 4NF* ETNF* RFNF*, KCNF* SKNF* 5NF* DKNF INF Ellen Munthe-Kaas 37

38 DKNF Domain-Key Normal Form En relasjon R er på DKNF hvis de eneste integritetsreglene i R er FDer som oppfyller BCNF (også kalt nøkkelrestriksjoner ) og domenerestriksjoner (Fagin 1981) DKNF er lett å håndheve, men det er for mange integritetsregler som ikke kan uttrykkes på denne måten til at vi kan begrense oss til å ha komponenter på DKNF INF Ellen Munthe-Kaas 38

39 Eksempel 3: ETNF-teoremet bryter sammen ved domenerestriksjoner Gitt relasjonen R(A,B,C,D,E,F). Følgende integritetsregler gjelder: dom(a) = dom(b) = {0,1} dom(c, D, E, F) = {0,1,2,...} ABC DEF, DEF ABD (så ABC og DEF er kandidatnøkler) J = {ACDE, ACDF, ACEF, BCDE, BCDF, BCEF} INF Ellen Munthe-Kaas 39

40 Eksempel 3 (forts.) Det kan vises at J følger fra FDene og domenerestriksjonene alene, så vi får nøyaktig samme mengde gyldige instanser (nøyaktig samme relasjon R) om vi fjerner J. Relasjonen R oppfyller derfor BCNF og DKNF. På lysark 18 stod følgende teorem: En relasjon er på ETNF hvis og bare hvis den er på BCNF og hver eksplisitt JD har minst én komponent som er en supernøkkel. J inneholder ingen supernøkkelkomponent, så hvis vi bruker teoremet, får vi at R ikke er i ETNF. Samtidig er det slik at om vi fjerner J, og deretter bruker teoremet, får vi at R er i ETNF. Så vi har en inkonsistens (selvmotsigelse): R kan vises å både tilhøre og ikke tilhøre ETNF. Problemet skyldes at teoremet ikke er gyldig i nærvær av for små domener. Derfor må alle definisjoner og beviser revurderes i nærvær av domenerestriksjoner. INF Ellen Munthe-Kaas 40

41 Hvordan uttrykke integritetsregler utover det vi kan uttrykke ved hjelp av FDer og JDer : Datalog - TGDer og EGDer INF3100 Ellen Munthe-Kaas 41

42 Datalog Datalog er en samling språk som kan brukes for å beskrive deduktive databaser og uttrykke spørringer mot dem. Datalog egner seg godt til å uttrykke integritetsregler også mot vanlige databaser: Tegnet markerer skillet mellom hode (venstreside) og kropp (høyreside) i en regel Hver venstreside er et eksistenskvantorisert atom eller inneholder symbolet Hver av høyresidene er en konjunksjon av atomer og negerte atomer Alle frie variable i venstresiden må også finnes i høyresiden En regel kan leses som hvis høyresiden er oppfylt, så skal venstresiden være oppfylt INF3100 Ellen Munthe-Kaas 42

43 TGD TGDer tuppelgenererende avhengigheter (Tuple-Generating Dependencies) kan uttrykke naturlige integritetsregler utover det JDer (og derfor også MVDer) kan. Format: y.r(x,y) ϕ(x) der R er et atom, ϕ er en konjunksjon av atomer og x, y er lister av variable (y kan være tom). INF3100 Ellen Munthe-Kaas 43

44 TGDer og JDer La R være en relasjon med attributter X. Betrakt JDen J= {C 1,,C m }. La X i = X - C i. J kan uttrykkes ved TGDen R(x) R(x' 1 c 1 ),, R(x' m c m ) der hver av x, x' 1,, x' m, c 1,, c m er lister av variable. Eksempel: Se leverandøreksempelet side 50. INF3100 Ellen Munthe-Kaas 44

45 EGD EGDer likhetsgenererende avhengigheter (Equality-Generating Dependencies) kan uttrykke naturlige integritetsregler utover det FDer kan. Format: x=y ϕ(x) der ϕ er en konjunksjon av atomer og x, y er to av variablene i x. INF3100 Ellen Munthe-Kaas 45

46 EGDer og FDer La R være en relasjon med attributter X. Betrakt FDen F = Y Z der Z er ett attributt. La W = X - YZ. F kan uttrykkes ved EGDen z = z' R(y z w), R(y z' w') der z og z' er variable og hver av y, w, w' er lister av variable. Eksempel: Se leverandøreksempelet side 50. INF3100 Ellen Munthe-Kaas 46

47 Negasjon Format: ϕ(x) der ϕ er en konjunksjon av atomer. står for false. Eksempel: Se ekteskapseksempelet side 52. INF3100 Ellen Munthe-Kaas 47

48 Voktere Hvis venstresiden er et ikkekvantorisert atom og ett av de unegaterte atomene i høyresiden inneholder samtlige frie variable, kalles dette en vokter (guard); resonnementer i nærvær av voktere er vesentlig mindre komplekse enn uten voktere, men språket blir tilsvarende mindre uttrykkskraftig hvis vi begrenser det til å måtte ha voktere Eksempel: Den siste regelen i ekteskapseksempelet (s. 52) har vokteren Ekteskap(x,y). INF3100 Ellen Munthe-Kaas 48

49 Uttrykkskraft TGDer kan uttrykke mer enn JDer: k.s(p,o 1,b 2,k) S(p,o 1,b 1,k 1 ), S(p,o 2,b 2,k 2 ) EGDer kan uttrykke mer enn FDer: y = x P(x,x,y) INF3100 Ellen Munthe-Kaas 49

50 Eksempel 1: Leverandører Del(leverandør, reservedel, prosjekt) La A = leverandør, B = reservedel, C = prosjekt. Regler: Hvis leverandør a leverer en reservedel b, og b leveres til prosjekt c, og c får leveranser fra a, så skal a levere b til c: Del(a,b,c) Del(a,b,c'), Del(a',b,c), Del(a,b',c) Dette er det samme som JDen {AB,BC,AC}. Hvert prosjekt c mottar en reservedel b fra maksimalt én leverandør a: a 1 = a 2 Del(a 1,b,c), Del(a 2,b,c) Dette er det samme som FDen BC A. INF3100 Ellen Munthe-Kaas 50

51 Eksempel 2: Puber og øl Salg(pub, øltype, bryggeri, pris) Et øl er identifisert ved dets øltype og bryggeriet som produserer det, dvs. (øltype, bryggeri). La P = pub, Ø = øltype, B = bryggeri, K = pris. Regler: Et øl på en gitt pub har en gitt pris (dvs. FDen PØB K): k 1 = k 2 Salg(p,ø,b,k 1 ), Salg(p,ø,b,k 2 ) Dersom en pub selger en øltype fra ett bryggeri, må den også tilby denne øltypen fra alle andre bryggerier som den har produkter fra: k.salg(p,ø 1,b 2,k) Salg(p,ø 1,b 1,k 1 ), Salg(p,ø 2,b 2,k 2 ) Dette kan ikke uttrykkes ved noen FD eller JD. INF3100 Ellen Munthe-Kaas 51

52 Eksempel 3: Ekteskap Ekteskap(ektefelle1, ektefelle2) Regler: En person kan ikke være gift med seg selv: Ekteskap(x,x) Dette kan ikke uttrykkes ved noen FD eller JD. Ekteskap er en symmetrisk relasjon: Ekteskap(y,x) Ekteskap(x,y) Dette kan heller ikke uttrykkes ved noen FD eller JD. INF3100 Ellen Munthe-Kaas 52

53 Eksempel 4: Varemagasin Forretningsregler: 1. En reol består av et visst antall hyller. Hver hylle inneholder bare én type varer. 2. En vare selges av bare én avdeling. 3. Hver reol inneholder varer fra bare én avdeling. 4. Det skal foretas maksimalt én bestilling av en gitt vare på en gitt dato. 5. Den som foretar bestilling av en vare, må tilhøre den avdelingen som har ansvar for varen. INF Ellen Munthe-Kaas 53

54 Eksempel 4: Vare- magasin II INF Ellen Munthe-Kaas 54

55 Eksempel 4: Varemagasin - III Hylleinnhold(reolnr, hyllenr, varenr, #varer) Vare(varenr, avdeling) Reol(reolnr, avdeling) Innkjøp(varenr, dato, #bestilt, enhetspris, bestiller) Ansatt(ansatt, avdeling) I tillegg må de ekvivalente stiene Hylleinnhold-Reol-Avdeling/Hylleinnhold-Vare-Avdeling og Innkjøp-Vare-Avdeling/Innkjøp-Ansatt-Avdeling overholdes INF3100 Ellen Munthe-Kaas 55

56 Eksempel 4: Varemagasin - IV Primærnøkler: Hylleinnhold(reolnr, hyllenr, varenr, #varer) Vare(varenr, avdeling) Reol(reolnr, avdeling) Innkjøp(varenr, dato, #bestilt, enhetspris, bestiller) Ansatt(ansatt, avdeling) v 1 = v 2 Hylleinnhold(r,h,v 1,n 1 ), Hylleinnhold(r,h,v 2,n 2 ) n 1 = n 2 Hylleinnhold(r,h,v 1,n 1 ), Hylleinnhold(r,h,v 2,n 2 ) a 1 = a 2 Vare(v,a 1 ), Vare(v,a 2 ) a 1 = a 2 Reol(r,a 1 ), Reol(r,a 2 ) n 1 = n 2 Innkjøp(v,d,n 1,e 1,b 1 ), Innkjøp(v,d,n 2,e 2,b 2 ) e 1 = e 2 Innkjøp(v,d,n 1,e 1,b 1 ), Innkjøp(v,d,n 2,e 2,b 2 ) b 1 = b 2 Innkjøp(v,d,n 1,e 1,b 1 ), Innkjøp(v,d,n 2,e 2,b 2 ) a 1 = a 2 Ansatt(p,a 1 ), Ansatt(p,a 2 ) INF3100 Ellen Munthe-Kaas 56

57 Eksempel 4: Varemagasin - V Fremmednøkler: Hylleinnhold(reolnr, hyllenr, varenr, #varer) Vare(varenr, avdeling) Reol(reolnr, avdeling) Innkjøp(varenr, dato, #bestilt, enhetspris, bestiller) Ansatt(ansatt, avdeling) a. Vare(v,a) Hylleinnhold(r,h,v,n) a. Reol(r,a) Hylleinnhold(r,h,v,n) a. Vare(v,a) Innkjøp(v,d,n,p,b) a. Ansatt(b,a) Innkjøp(v,d,n,p,b) INF3100 Ellen Munthe-Kaas 57

58 Eksempel 4: Varemagasin - VI Ekvivalente stier: Hylleinnhold(reolnr, hyllenr, varenr, #varer) Vare(varenr, avdeling) Reol(reolnr, avdeling) Innkjøp(varenr, dato, #bestilt, enhetspris, bestiller) Ansatt(ansatt, avdeling) a 1 = a 2 Hylleinnhold(r,h,v,n), Vare(v,a 1 ), Reol(r,a 2 ) a 1 = a 2 Innkjøp(v,d,n,p,b), Vare(v,a 1 ), Ansatt(b,a 2 ) INF3100 Ellen Munthe-Kaas 58

Relasjonsdatabasedesign. Ekstramateriale: Normalformer utover 4NF (ikke pensum)

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

Detaljer

Normalformer utover 4NF (ikke pensum)

Normalformer 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

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET IOSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-1.2.2011 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-1.2.2016 Ellen Munthe-Kaas 1 Flerverdiavhengigheter FDer uttrykker "en Y for hver

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-26.1.2012 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter gir

Detaljer

Relasjonsdatabasedesign (forts.)

Relasjonsdatabasedesign (forts.) UNIVERSITETET I OSLO Relasjonsdatabasedesign (forts.) Flerverdiavhengigheter Høyere normalformer INF3100-29.1.2008 Ragnar Normann Institutt for Informatikk 1 Flerverdiavhengigheter Generalisering av FDer

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-24.1.2014 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter brukes

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-27.1.2015 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter brukes

Detaljer

Relasjonsdatabasedesign (forts.)

Relasjonsdatabasedesign (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

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign 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

Detaljer

UNIVERSITETET. Relasjonsdatabasedesign

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

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign 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

Detaljer

Relasjonsdatabasedesign

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

Detaljer

Relasjonsdatabasedesign

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

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign 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

Detaljer

Relasjonsdatabasedesign

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

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign 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

Detaljer

Hva kjennetegner god relasjonsdatabasedesign? Eksempel: Grossistdatabase versjon 1

Hva kjennetegner god relasjonsdatabasedesign? Eksempel: Grossistdatabase versjon 1 Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet (samlokalisering i skjema) gjenspeiler logisk nærhet Brudd på dette har en tendens til å påtvinge dobbeltlagring

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF3100-20.1.2016 Ellen Munthe-Kaas 1 Definisjon av nøkler Gitt en

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer Institutt for Informatikk INF300-9..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Beslektet

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF300-6..00 Ellen Munthe-Kaas Definisjon av nøkler Gitt et relasjonsskjema

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-26-27..2004 - Ragnar Normann Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig

Detaljer

UNIVERSITETET I OSLO. Oppskriftsbok. FDer og MVDer Relasjonsalgebra. Institutt for Informatikk. INF3100 Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO. Oppskriftsbok. FDer og MVDer Relasjonsalgebra. Institutt for Informatikk. INF3100 Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO Oppskriftsbok FDer og MVDer Relasjonsalgebra Institutt for Informatikk INF3100 Ellen Munthe-Kaas 1 Tillukningsalgoritmen Hvordan finne alle kandidatnøkler FDer og MVDer Hvordan finne

Detaljer

Oppskriftsbok. FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45

Oppskriftsbok. FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45 UNIVERSITETET I OSLO Oppskriftsbok FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45 Oppskriftsboken er ment brukt som oppslagsverk og eksempelsamling. Ikke alt er like viktig. I

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-8..008 Ragnar Normann Institutt for Informatikk Hva kjennetegner god relasjonsdatabasedesign? Beslektet

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-4..005 - Ragnar Normann Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet

Detaljer

Oppdateringsanomalier Normalformer

Oppdateringsanomalier 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?

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer INF300..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler beslektet

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer INF300 7.0.008 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler

Detaljer

UNIVERSITETET I OSLO. Relasjonsmodellen. Relasjoner og funksjonelle avhengigheter. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO. Relasjonsmodellen. Relasjoner og funksjonelle avhengigheter. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO Relasjonsmodellen Relasjoner og funksjonelle avhengigheter Institutt for Informatikk INF3100-23.1.2007 Ellen Munthe-Kaas 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for

Detaljer

Dagens tema: Oppdateringsanomalier Normalformer

Dagens tema: Oppdateringsanomalier Normalformer UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 08..0 michael@ifi.uio.no Hva kjennetegner god relasjonsdatabasedesign?

Detaljer

Oppdateringsanomalier. Normalformer. Institutt for informatikk INF

Oppdateringsanomalier. Normalformer. Institutt for informatikk INF Oppdateringsanomalier Normalformer Institutt for informatikk INF300 7.0.04 Relasjonene samler beslektet informasjon Så lite dobbeltlagring som mulig Så få glisne relasjoner som mulig Korrekt totalinformasjon

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Relasjonsmodellen INF3100-18.1.2005 - Ragnar Normann 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for å beskrive strukturen til en database Relasjonsmodellen Databasen

Detaljer

IN2090 Databaser og datamodellering. Databasedesign og normalformer

IN2090 Databaser og datamodellering. Databasedesign og normalformer IN2090 Databaser og datamodellering Databasedesign og normalformer Evgenij Thorstensen evgenit@ifi.uio.no Universitetet i Oslo 1 / 43 Oversikt Gode og dårlige skjemadesign (og litt historie) Funksjonelle

Detaljer

Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF

Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF Martin Giese 7. november 2018 1 Agenda Nytt eksempel Med funksjonelle avhengigheter 1NF (veldig kort) 2NF, Grundig Hva er vitsen? anomalier Få eksemplet

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 : Fredag 6. juni 1997 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg :

Detaljer

God Databasedesign: På vei mot Normalformer

God Databasedesign: På vei mot Normalformer God Databasedesign: På vei mot Normalformer Martin Giese 4. november 08 Agenda Hva er god databasedesign? Forklart ved et dårlig eksempel Oppdateringsanomalier Repetisjon: Supernøkler, kandidatnøkler,

Detaljer

Relasjonsdatabaseteori

Relasjonsdatabaseteori Relasjonsdatabaseteori Nøkler, funksjonelle avhengigheter og normalformer Arash Khorram arashk@ifi.uio.no Lana Vu anhlv@ifi.uio.no Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler beslektet

Detaljer

Oppgaver INF3100. Oversikt over innholdet

Oppgaver INF3100. Oversikt over innholdet Oppgaver INF3100 Dette heftet inneholder først og fremst løsningsforslag til oppgaver fra læreboken, men også noen ekstraoppgaver. Ekstraoppgavene er gitt navn etter hvilket kapittel de tilhører, og løsningsforslag

Detaljer

INF3100 V2016 Obligatorisk oppgave nr. 1

INF3100 V2016 Obligatorisk oppgave nr. 1 INF3100 V2016 Obligatorisk oppgave nr. 1 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

INF3100 V2015 Obligatorisk oppgave nr. 1

INF3100 V2015 Obligatorisk oppgave nr. 1 INF3100 V2015 Obligatorisk oppgave nr. 1 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

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-8.2.2010 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Forelesere: Naci Akkök Ragnar Normann Mål: Kjennskap til databasesystemer Oppgaver og moduler Virkemåte Implementasjon Teoretiske og praktiske problemer INF3100-19-20.1.2004 -

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ragnar Normann

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ragnar Normann UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et språk til å beskrive spørsmål om

Detaljer

Universitetet i Oslo Institutt for informatikk. Relasjonsmodellen og normaliseringsteori. Til bruk i IN 212. Ragnar Normann.

Universitetet i Oslo Institutt for informatikk. Relasjonsmodellen og normaliseringsteori. Til bruk i IN 212. Ragnar Normann. Universitetet i Oslo Institutt for informatikk Relasjonsmodellen og normaliseringsteori Til bruk i IN 212 Ragnar Normann Kompendium 64 4. utgave. Januar 1999 INNHOLD i Innhold 1 Metaspråket 1 1.1 Algebraer...

Detaljer

UNIVERSITETET. Relasjonsalgebra. INF Ragnhild Kobro Runde

UNIVERSITETET. Relasjonsalgebra. INF Ragnhild Kobro Runde UNIVERSITETET IOSLO Relasjonsalgebra Regning med relasjoner 1 Annen bruk av chasealgoritmen (korrigert lysark) For å vise en FD X Y starter tabellen med to rader som er like for attributtene i X, og ulike

Detaljer

Oppgaver INF3100. Oversikt over innholdet

Oppgaver INF3100. Oversikt over innholdet Oppgaver INF3100 Dette heftet inneholder først og fremst løsningsforslag til oppgaver fra læreboken, men også noen ekstraoppgaver. Ekstraoppgavene er gitt navn etter hvilket kapittel de tilhører, og løsningsforslag

Detaljer

Databaser fra et logikkperspektiv

Databaser fra et logikkperspektiv Databaser fra et logikkperspektiv Evgenij Thorstensen IFI, UiO Høst 2013 Evgenij Thorstensen (IFI, UiO) Databaser fra et logikkperspektiv Høst 2013 1 / 31 Outline 1 Logikk som verktøy 2 Relasjonsdatabaser

Detaljer

UNIVERSITETET RELASJONSALGEBRA. Regning g med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET RELASJONSALGEBRA. Regning g med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET IOSLO RELASJONSALGEBRA Regning g med relasjoner Institutt for Informatikk INF3100-7.2.2011 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss

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

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

INF1800 LOGIKK OG BEREGNBARHET

INF1800 LOGIKK OG BEREGNBARHET INF1800 LOGIKK OG BEREGNBARHET FORELESNING 20: FØRSTEORDENS LOGIKK Roger Antonsen Institutt for informatikk Universitetet i Oslo 22. oktober 2008 (Sist oppdatert: 2008-10-22 10:50) Mer om førsteordens

Detaljer

Mer om førsteordens logikk

Mer om førsteordens logikk INF1800 LOGIKK OG BEREGNBARHET FORELESNING 20: FØRSTEORDENS LOGIKK Roger Antonsen Mer om førsteordens logikk Institutt for informatikk Universitetet i Oslo 22. oktober 2008 (Sist oppdatert: 2008-10-22

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et språk til å beskrive spørsmål om

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-3.2.2016 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

Relasjonsalgebraen. Algebra

Relasjonsalgebraen. Algebra Relasjonsalgebraen Definerer en mengde av operasjoner på relasjoner Gir oss et språk til å beskrive spørsmål om innholdet i relasjonene Språket er prosedyralt: Vi sier hvordan svaret skal beregnes. Alternativet

Detaljer

Databaser fra et logikkperspektiv del 2

Databaser fra et logikkperspektiv del 2 Databaser fra et logikkperspektiv del 2 Evgenij Thorstensen IFI, UiO Høst 2015 Evgenij Thorstensen (IFI, UiO) Databaser og logikk del 2 Høst 2015 1 / 22 Outline 1 Konjunktive spørringer 2 QA for konj.

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-2.2.2015 Ellen Munthe-Kaas Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

INF3100 V2018 Obligatorisk oppgave nr. 1

INF3100 V2018 Obligatorisk oppgave nr. 1 INF3100 V2018 Obligatorisk oppgave nr. 1 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

INF212 - Databaseteori. Kursinnhold

INF212 - Databaseteori. Kursinnhold INF212 - Databaseteori Forelesere: Naci Akkök Ellen Munthe-Kaas Mål: Kjennskap til databasesystemer Virkemåte Implementasjon Teoretiske og praktiske problemer INF212 v2003 1 Kursinnhold Databasedesign

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

MA2401 Geometri Vår 2018

MA2401 Geometri Vår 2018 MA2401 Geometri Vår 2018 Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag Løsningsforslag Øving 1 2.4 7 I Fanos geometri (se side 18 i læreboka) er punktene gitt ved symbolene

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO Dagens tema: INF1300 Introduksjon til databaser Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk INF1300 12.9.2016 1 Relasjonsmodellen

Detaljer

INF1800 Forelesning 20

INF1800 Forelesning 20 INF1800 Forelesning 20 Førsteordens logikk Roger Antonsen - 22. oktober 2008 (Sist oppdatert: 2008-10-22 10:51) Mer om førsteordens logikk Tillukninger Vi har definert semantikk kun for lukkede formler.

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsalgebraen Oversettelse av select-from-where til relasjonsalgebra SQL: union, snitt, differanse, kartesisk produkt INF1300 22.10.2007

Detaljer

IN2090 Introduksjon til databaser

IN2090 Introduksjon til databaser UNIVERSITETET I OSLO IN2090 Introduksjon til databaser Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk IN2090 26.9.2018!1 Relasjonsmodellen

Detaljer

INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1

INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1 INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1 Dagens temaer Relasjonsalgebraen Renavning Algebra Heltallsalgebra Klassisk relasjonsalgebra Mengdeoperatorer Union Snitt

Detaljer

Plenum: Nøkler, normalformer og funksjonelle avhengigheter

Plenum: Nøkler, normalformer og funksjonelle avhengigheter Plenum: Nøkler, normalformer og funksjonelle avhengigheter Mathias Stang 14. november 2017 1 Agenda Hva er god databasedesign? Atomære verdier Nøkler: Supernøkler, kandidatnøkler, primærnøkler, nøkkelattributter

Detaljer

INF3170 / INF4171. Intuisjonistisk logikk: Kripke-modeller, sunnhet, kompletthet. Andreas Nakkerud. 15. september 2015

INF3170 / INF4171. Intuisjonistisk logikk: Kripke-modeller, sunnhet, kompletthet. Andreas Nakkerud. 15. september 2015 INF3170 / INF4171 Intuisjonistisk logikk: Kripke-modeller, sunnhet, kompletthet Andreas Nakkerud 15. september 2015 Kripke-modeller Vi ser på modeller for et språk L. Definisjon En Kripke-modell er et

Detaljer

Sekventkalkyle for utsagnslogikk

Sekventkalkyle for utsagnslogikk Sekventkalkyle for utsagnslogikk Tilleggslitteratur til INF1800 Versjon 11. september 2007 1 Hva er en sekvent? Hva er en gyldig sekvent? Sekventkalkyle er en alternativ type bevissystem hvor man i stedet

Detaljer

TMA 4140 Diskret Matematikk, 3. forelesning

TMA 4140 Diskret Matematikk, 3. forelesning TMA 4140 Diskret Matematikk, 3. forelesning Haaken Annfelt Moe Department of Mathematical Sciences Norwegian University of Science and Technology (NTNU) September 5, 2011 Haaken Annfelt Moe (NTNU) TMA

Detaljer

Aksiom 3.1 (Likhet av mengder). La A og B være mengder. Da er A og B like hvis og bare hvis de har akkurat de samme elementene.

Aksiom 3.1 (Likhet av mengder). La A og B være mengder. Da er A og B like hvis og bare hvis de har akkurat de samme elementene. Notat 3 for MAT1140 3 Mengder 3.1 Mengder definert ved en egenskap Det matematiske begrepet mengde har sin opprinnelse i vår intuisjon om samlinger. Objekter kan samles sammen til et nytt objekt kalt mengde.

Detaljer

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk MAT1030 Diskret Matematikk Forelesning 27: Trær Dag Normann Matematisk Institutt, Universitetet i Oslo 4. mai 2010 (Sist oppdatert: 2010-05-04 14:11) Forelesning 27 MAT1030 Diskret Matematikk 4. mai 2010

Detaljer

Forelesning 27. MAT1030 Diskret Matematikk. Bevistrær. Bevistrær. Forelesning 27: Trær. Roger Antonsen. 6. mai 2009 (Sist oppdatert: :28)

Forelesning 27. MAT1030 Diskret Matematikk. Bevistrær. Bevistrær. Forelesning 27: Trær. Roger Antonsen. 6. mai 2009 (Sist oppdatert: :28) MAT1030 Diskret Matematikk Forelesning 27: Trær Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 27 6. mai 2009 (Sist oppdatert: 2009-05-06 22:28) MAT1030 Diskret Matematikk 6.

Detaljer

UNIVERSITETET I OSLO INF1300. Dagens tema: Ringskranker. Tommelfingerregler. Institutt for informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO INF1300. Dagens tema: Ringskranker. Tommelfingerregler. Institutt for informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ringskranker Klisjéer (mønstre) Tommelfingerregler Institutt for informatikk INF1300 19.10.2009 Ellen Munthe-Kaas 1 Ringskranker INF1300

Detaljer

Relasjonsmodellen og normaliseringsteori

Relasjonsmodellen og normaliseringsteori Relasjonsmodellen og normaliseringsteori Til bruk i INF3100 Ragnar Normann 5. utgave, mai 2013 INNHOLD i Innhold 1 Metaspråket 1 1.1 Algebraer................................. 1 1.2 1. ordens logikk.............................

Detaljer

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk MAT1030 Diskret matematikk Forelesning 27: Trær Dag Normann Matematisk Institutt, Universitetet i Oslo 30. april 2008 Oppsummering Mandag så vi på hvordan vi kan finne uttrykk og termer på infiks form,

Detaljer

Spørsmålskompilering del 1

Spørsmålskompilering del 1 UNIVERSITETET I OSLO Spørsmålskompilering del 1 Parsering Logiske spørreplaner uttrykt i relasjonsalgebra Optimalisering ved hjelp av algebraiske lover Institutt for Informatikk INF3100 - V18 - Evgenij

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

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ringskranker Klisjéer Tommelfingerregler ORM og normalisering Denormalisering og splitting ORM som metode INF1300 7.11.2016 Ellen Munthe-Kaas

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

Deduksjon i utsagnslogikk

Deduksjon i utsagnslogikk Deduksjon i utsagnslogikk Lars Reinholdtsen, Universitetet i Oslo Merknad Dette notatet om deduksjon er ikke pensum, og den behandlingen som Goldfarb gir av emnet fra 33 og utover dekker fullt ut det som

Detaljer

Kompleksitet og Beregnbarhet

Kompleksitet 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

Detaljer

INF4170 { Logikk. Forelesning 1: Utsagnslogikk. Arild Waaler. 20. august Institutt for informatikk, Universitetet i Oslo

INF4170 { Logikk. Forelesning 1: Utsagnslogikk. Arild Waaler. 20. august Institutt for informatikk, Universitetet i Oslo INF4170 { Logikk Forelesning 1: Utsagnslogikk Arild Waaler Institutt for informatikk, Universitetet i Oslo 20. august 2013 Dagens plan 1 Utsagnslogikk 2 Sekventkalkyle 3 Sunnhet 4 Kompletthet Institutt

Detaljer

Spørsmålskompilering del 1

Spørsmålskompilering del 1 UNIVERSITETET I OSLO Spørsmålskompilering del 1 Parsering Logiske spørreplaner uttrykt i relasjonsalgebra Optimalisering ved hjelp av algebraiske lover Institutt for Informatikk INF3100-11.4.2016 - Ellen

Detaljer

INF4170 Logikk. Forelesning 12: Automatisk bevissøk IV matriser og koblingskalkyle. Bjarne Holen. Institutt for informatikk, Universitetet i Oslo

INF4170 Logikk. Forelesning 12: Automatisk bevissøk IV matriser og koblingskalkyle. Bjarne Holen. Institutt for informatikk, Universitetet i Oslo INF4170 Logikk Forelesning 12: matriser og koblingskalkyle Bjarne Holen Institutt for informatikk, Universitetet i Oslo 11. mai 2010 Dagens plan 1 Institutt for informatikk (UiO) INF4170 Logikk 11.05.2010

Detaljer

Lineære ligningssystemer og gausseliminasjon

Lineæ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

Detaljer

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1080 Logiske metoder for informatikk Eksamensdag: 10. desember 2012 Tid for eksamen: 09.00 13.00 Innledning La U være mengden

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

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1080 Logiske metoder for informatikk Eksamensdag: 26. november 2010 Tid for eksamen: 13:00 17:00 Oppgave 1 La A = { }. Mengdelære

Detaljer

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

UNIVERSITETET 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

Detaljer

Førsteordens logikk - syntaks

Førsteordens logikk - syntaks INF3170 Logikk Forelesning 5: Førsteordens logikk syntaks og semantikk Institutt for informatikk Universitetet i Oslo Førsteordens logikk - syntaks 23. februar 2010 (Sist oppdatert: 2010-02-09 17:42) INF3170

Detaljer

Flere skranker i ORM Integritetsregler med «CHECK» i SQL

Flere skranker i ORM Integritetsregler med «CHECK» i SQL IN2090 Databaser og datamodellering Flere skranker i ORM Integritetsregler med «CHECK» i SQL Mathias Stang (mjstang@ifi.uio.no) 10. oktober 2018 1 Agenda Verdiskranker Mengdeskranker Ekstern påkrevd rolle

Detaljer

Eksamensveiledning. LOKALT GITT SKRIFTLIG EKSAMEN DAT3001 System og infrastruktur. - om vurdering av eksamensbesvarelser

Eksamensveiledning. LOKALT GITT SKRIFTLIG EKSAMEN DAT3001 System og infrastruktur. - om vurdering av eksamensbesvarelser Fylkeskommunenes landssamarbeid Eksamensveiledning - om vurdering av eksamensbesvarelser LOKALT GITT SKRIFTLIG EKSAMEN DAT3001 System og infrastruktur Eksamensveiledning for lokalt gitt skriftlig eksamen

Detaljer