Relacioni model podataka - University of Novi Sad · 2014-05-15 · Ciljevi •Uvođenje jasne...

51
Relacioni model podataka

Transcript of Relacioni model podataka - University of Novi Sad · 2014-05-15 · Ciljevi •Uvođenje jasne...

Relacioni model podataka

Ciljevi

• Uvođenje jasne granice između logičkih i fizičkih aspekata baze podataka – nezavisnost podataka

– n-arna relacija

– šema relacije

– šema baze podataka

• Strukturalna jednostavnost

– dvodimenzinalna tabela

• Deklarativni jezik za defnisanje i korišćenje baze podataka

– SQL

Strukturalna komponenta RMP

• Skup obeležja realnog sistema ili njegovog dela koji je predmet posmatranja – univerzalni skup obeležja

– U = {Ai | i = 1, ..., m}

• Dom: U → D, (∀ Ai ∈ U)(Dom(Ai) ∈ D) – svakom obeležju iz univerzalnog skupa obeležja pridružuje se domen

Strukturalna komponenta RMP • R – vrednost (torka)

– R ⊆ U, R = {Ai | i = 1, ..., k} – t[R], t - funkcija koja preslikava svako obeležje iz R u

odgovarajuću vrednost • t: R → Dom, Dom = 𝑑𝑜𝑚(𝐴𝑖)𝑘

𝑖=1 • t(Ai) ∈ dom(Ai, i = 1, ..., k) • t(Ai) = ai, ai ∈ dom(Ai)

– {(Ai, ai), Ai ∈ R}

• Restrikcija R-vrednosti – X ⊆ R, t[R] – X-vrednost t[X], u kojoj je svakom obeležju A iz X

pridružena ista vrednost kao i u R-vrednosti t[R] – t[X] = {(Ai, ai) | Ai ∈ X} – Realan entitet ili poveznik

Strukturalna komponenta RMP

• Relacija, r(R) – konačan skup torki

– predstavlja se dvodimenzionalnom tabelom

– Skup realnih entiteta ili poveznika

– SAT(R) – skup svih relacija nad skupom obeležja R

• Projekcija relacije na skup obeležja – X ⊆ R, r – relacija nad R

– projekcija (restrikcija) relacije r na skup obeležja X je relacija r[X], definisana kao r[X] = {t[X] | t ∈ r(R)}

– 𝜋X(r(R)))

Strukturalna komponenta RMP

• Šema relacije

– imenovana dvojka N(R, C)

• N – naziv šeme relacije

• R – skup obeležja šeme relacije, R ⊆ U

• C – skup ograničenja

• Pojava nad šemom relacije

– relacija r(R) koja zadovoljava sva ograničenja iz skupa C šeme relacije N(R, C) je pojava nad tom šemom relacije

Strukturalna komponenta RMP

• Ključ šeme relacije

– obeležje ili skup obeležja koji jedinstveno određuju svaku torku u relaciji nad zadatom šemom relacije

– skup obeležja K, K ⊆ R, je ključ šeme relacije N(R, C), ako za svaku pojavu nad šemom relacije r važe sledeća dva uslova:

• (∀ u, v ∈ r) u[K]=v[K] ⇒ u=v (JEDINSTVENOST)

• (∀ X, X ⊂ K) ne važi prvi uslov (MINIMALNOST)

Strukturalna komponenta RMP

• Šema baze podataka

– imenovana dvojka N(S, I)

• N – naziv šeme baze podataka

• S – skup šema relacija

• I – skup međurelacionih ograničenja – međurelaciona ograničenja prikazuju odnose između relacija

– referencijalni integritet

Strukturalna komponenta RMP

• Pojava nad šemom baze podataka

– pojava nad skupom šema relacija S = {(Ri, Ci) | i = 1, ..., n} je funkcija koja preslikava svaku šemu relacije (Ri, Si) ∈ S u pojavu nad šemom relacije (Ri, Si)

Integritetna komponenta RMP

• Ključ

• Funkcionalna zavisnost

• Zavisnost sadržavanja

• Referencijalni integritet

Integritetna komponenta RMP

• Zavisnost sadržavanja

– domen kompatibilni skupovi (dom(X) ⊆ dom(Y))

– r je relacija nad U, A1, ..., An i B1, ..., Bn dva niza različitih obeležja iz U; relacija r zadovoljava zavisnost sadržavanja [A1, ..., An] ⊆ [B1, ..., Bn], ako važi da za svaku torku t iz relacije r postoji torka u iz relacije r, tako da su t[Ai]=u[Bi], za svako i∈{1, ..., n}

– neka su r1 i r2 relacije nad različitim šemama relacija N1(R1, C1) i N2(R2, C2), A1, ..., An ∈ R1 i B1, ..., Bn ∈ R2; zavisnost sadržavanja N1[A1, ..., An] ⊆ N2[B1, ..., Bn] je zadovoljena, ako važi da za svaku torku t1 iz relacije r1, postoji torka t2 iz relacije r2, tako da su t1[Ak]=t2[Bk], za svako k∈{1, ..., n}

Integritetna komponenta RMP

• Referencijalni integritet

– osnovno i najčešće korišćeno međurelaciono ograničenje

– međurelaciona zavisnost sadržavanja N1[A1, ..., An] ⊆ N2[B1, ..., Bn] kod koje je {B1, ..., Bn} primarni ključ relacije sa nazivom N2

– ako važi i zavisnost sadržavanja N2[B1, ..., Bn] ⊆ N1[A1, ..., An], tada se ona naziva inverzni referencijalni integritet

Integritetna komponenta RMP

• Funkcionalna zavisnost

– f: X → Y

• X – leva strana funkcionalne zavisnosti, lhs(f)

• Y – desna strana funkcionalne zavisnosti, rhs(f)

– X, Y su skupovi obeležja

– r – relacija nad skupom obeležja R, X, Y ⊆ R; skup torki relacije r zadovoljava funkcionalnu zavisnost X → Y ako za svake dve torke u i v važi u[X]=v[X] ⇒ u[Y]=v[Y]

Funkcionalne zavisnosti

• F – skup funkcionalnih zavisnosti

• F logički implicira X → Y (F ╞ X → Y) ako svaka relacija nad U, koja zadovoljava sve funkcionalne zavisnosti iz F, zadovoljava i X → Y

• Skup logičkih posledica skupa F

• Trivijalna funkcionalna zavisnost

– X → Y je trivijalna akko ∀ r ∈ SAT(U) važi X → Y

• Teorema: X → Y je trivijalna akko Y ⊆ X

Armstrongove aksiome

• Skup formalnih pravila putem kojih se mogu izvesti sve logičke posledice nekog skupa funkcionalnih zavisnosti

– Neredundantan

– Neprotivrečan

– Kompletan

Armstrongove aksiome

• F definisan nad U

• X, Y, Z, W ⊆ U

• A1 (refleksivnost): – Y ⊆ X ⇒ X → Y (trivijalna f.z.)

• A2 (proširenje): – X → Y i Z ⊆ W ⇒ XW → YZ

• A3 (pseudotranzitivnost): – X → Y i YW → Z ⇒ XW → Z

– W = {} - tranzitivnost

Armstrongove aksiome

• A4 (unija):

– X → Y1 i X → Y2 ⇒ X → Y1 Y2

• A5 (dekompozicija):

– X → Y i Z ⊆ Y ⇒ X → Z

• Primenom pravila A1-A5 na skup F, dobija se skup F+ - ZATVARANJE SKUPA FUNKCIONALNIH ZAVISNOSTI

Funkcionalne zavisnosti

• Nakon svakog ažuriranja baze podataka potrebno je proveriti da li su zadovoljene sve funkcionalne zavisnosti iz skupa F

• F može sadržati veliki broj logički suvišnih funkcionalnih zavisnosti

• Minimalan skup koji je podskup skupa F, a iz kog se mogu izvesti sve funkcionalne zavisnosti iz F – zadatak! – Redukovan skup funkcionalnih zavisnosti

– Neredundantno pokrivanje skupa funkcionalnih zavisnosti

Zatvaranje skupa obeležja

• Zatvaranje skupa obeležja X ⊆ U s obzirom na skup f.z. F, definisan u U, je skup XF

+ definisan na sledeći način:

– XF+ = {A | A ∈ U i X → A ∈ F+} – skup svih obeležja

koja funkcionalno zavise od X

• Algoritam...

Zatvaranje skupa obeležja - algoritam

• Ulaz: skup funkcionalnih zavisnosti F, X ⊆ U

• Izlaz: XF+ zatvaranje skupa obeležja

X+ ← X

Q ← 0

dok Q = X+ radi

Q ← X+

∀ f ∈ F, ako je lhs(f) ⊆ X+

X+ ← X+ ∪ rhs(f)

kraj ako

kraj dok

XF+ ← Q

Zatvaranje skupa obeležja

• Utvrđivanje ekvivalentnosti dva skupa f.z.

– F ≡ G ⇔ F ╞ G i G ╞ F

– (∀ f ∈ F)rhs(f) ⊆ (lhs(f)) + G

– (∀ g ∈ G) rhs(g) ⊆ (lhs(g)) + F

• Redukcija levih strana f.z.

– (X \ {A}) → B ∈ F ⇔ B ∈ (X \ {A})+F

• Traženje neredundantnog pokrivanja skupa f.z.

– f ∈ (F \ {f})+, f: X → B ⇔ B ∈ X+F\{f}

Redukcija

• Funkcionalna zavisnost X → A ∈ F+ je REDUKOVANA ili IMA REDUKOVANU LEVU STRANU s obzirom na F, ako važi:

– (∀ Y ⊂ X) (Y → A ∈ F+)

• Skup funkcionalnih zavisnosti F je REDUKOVAN ili IMA REDUKOVANE LEVE STRANE, ako je svaka f.z. f: X → A iz F redukovana

• Algoritam...

Redukcija levih strana - algoritam • Ulaz:

– zadati skup funkcionalnih zavisnosti F – svaka fz je desno redukovana (ima samo jedno obeležje sa desne

strane)

• Izlaz: – skup funkcionalnih zavisnosti G sa redukovanim levim stranama – G je ekvivalentno sa F

G ← 0 radi ∀ f : X → B ∈ F radi ∀ A ∈ X ako je X\{A} → B ∈ F+ tada X ← X\{A} kraj radi G ← G ∪ {X → B} kraj radi

• U proveri X\{A} → B ∈ F+ koriste se sve fz iz F+, pa i X → B • Rezultat redukcije zavisi od redosleda izbora elemenata sa leve

strane izabrane funkcionalne zavisnosti

Neredundantno pokrivanje • Za ekvivalentne skupove kažemo da pokrivaju

jedan drugog

• POKRIVANJE (pokrivač) skupa f.z. F je svaki skup f.z. G koji ima isto zatvaranje kao F – F+ = G+

• Skup G je NEREDUNDANTNO POKRIVANJE skupa f.z. F, ako ne sadrži pravi podskup koji takođe predstavlja pokrivanje skupa F

• Funkcionalna zavisnost f: X → Y je REDUNDANTNA u F, ako se može izvesti iz F \ {f} – f ∈ (F \ {f})+

• Algoritam...

Neredundantno pokrivanje - algoritam

• Ulaz: F = {X → A | X ⊆ U i A ∈ U} (desne strane su jednočlani skupovi)

• Izlaz: G – neredundantno pokrivanje skupa F G ← F

radi ∀ f ∈ G

ako je f ∈ (G \ {f})+ tada

G ← G \ {f}

kraj ako

kraj radi

• Prilikom provere da li je neka fz suvišna, ona sama se ne posmatra

Kanoničko pokrivanje

• G, F – skupovi funkcionalnih zavisnosti

• G je kanoničko pokrivanje skupa F ako:

– G+ = F+

– G je levo redukovan (sadrži samo redukovane fz)

– G je neredundantan

– Desna strana svake fz u G sadrži samo jedno obeležje

Projekcija skupa funkcionalnih zavisnosti

• Projekcija (restrikcija) skupa funkcionalnih zavisnosti F definisanih u U na skup obeležja W⊆U, u oznaci F|W ili 𝜋W(F), je:

F|W = {X→Y | (X→Y ∈ F+) ˄ (XY ⊆ W)}

Algoritam za izračunavanje ključa šeme relacije

• Skup obeležja X⊆R je ključ šeme relacije (R, F) ako važi: – X→R ∈ F+

– (∀ Y ⊂ X)(Y →R ∈ F+)

• Ulaz: (R, F)

• Izlaz: X (jedan ključ šeme relacije (R, F)) X←R

radi (∀A∈X)

ako je A∈(X\{A})+ tada

X←X\{A}

kraj ako

kraj radi

Algoritam za izračunavanje skupa ključeva šeme relacije

• Ulaz: (R, F)

• Izlaz: K – skup ključeva šeme relacije (R, F) K ← 0

radi ∀ X ⊆ R

ako je R=XF+ tada

radi (∀A∈X)

ako je A∈(X\{A})+ tada

X←X\{A}

kraj ako

kraj radi

K ← K ∪ X

kraj ako

kraj radi

Anomalije ažuriranja

• Anomalije prilikom upisa, brisanja, modifikacije torki

• Integritet entiteta: – Jedinstvenost vrednosti ključa

• (∀X∈K)(∀ti,tj∈r)(ti[X]=tj[X] ⇒ ti=tj)

– Ni kompletan ključ ni bilo koje obeležje ključa ne sme imati nepoznatu ili nula vrednost nad šemom relacije • (∀X∈K)(∀A∈X)(∀t∈r)(t[A]=𝜔)

• Vrednost ključa se ne sme menjati prilikom ažuriranja

Anomalije ažuriranja

• Anomalija upisa

• Anomalija brisanja

• Anomalija modifikacije

• Kad postoji samo jedna šema relacije (univerzalna relacije), sigurno dolazi do redundanse podataka

Normalne forme

• Prva normalna forma

– Obeležje je elementarno (atomično) ako se ne može dekomponovati; njegov domen sadrži samo atomične elemente.

– Šema relacije je u 1NF ako su sva njenaobeležja elementarna.

– Šema baze podataka je u 1NF ako su sve njene šeme relacija u 1NF.

Normalne forme

• Druga normalna forma – Atribut A relacije r je potpuno funkcionalno zavisan od

atributa X relacije r, ako je funkcionalno zavisan od atributa X, a nije funkcionalno zavisan ni od jednog pravog podskupa atributa X. • X→A je potpuna, ako važi (∀Y⊂X)Y→A∈F+

– Šema relacije je u 2NF ako je u 1NF i ako je svako neprimarno obeležje skupa R u potpunoj funkcionalnoj zavisnoti od svakog ključa šeme relacije (R,F) • Neprimarno obeležje je ono koje nije kandidat za ključ

– Šema baze podataka je u 2NF, ako je svaka njena šema relacije u 2NF

Normalne forme

• Treća normalna forma

– Netrivijalna funkcionalna zavisnost X→A je tranzitivna ako važi X→Y∈F+, Y→A∈F+, Y→X∈F+

– Šema relacije je u 3NF ako je u 2NF a ako svi njeni neključni (neprimarni) atributi netranzitivno zavise od primarnog ključa.

– Šema baze podataka je u 3NF, ako je svaka njena šema relacije u 3NF.

Normalne forme

• Boyce-Codd normalna forma (BCNF)

– Šema relacije je u BCNF ako svaka netrivijalna funkcionalna zavisnost u F+ sadrži ključ šeme relacije (R,F).

– Šema baze podataka je u BCNF, ako je svaka njena šema relacije u BCNF.

Normalne forme - primeri BRI IMES PREZS BPI OZP NAP OZN PRN OCE

123 Ana Perić 5 P1 Baze podataka 1 N1 Marković 10

123 Ana Perić 5 P2 Analiza 1 N2 Ilić 9

456 Ivan Marić 8 P1 Baze podataka 1 N1 Marković 8

135 Maja Savić 10 P2 Analiza 1 N3 Antić 9

765 Marko Dakić 4 P3 Web dizajn N4 Pantić 10

456 Ivan Marić 8 P3 Web dizajn N4 Pantić 7

765 Marko Dakić 4 P1 Baze podataka 1 N1 Marković 6

U = {BRI, IMES, PREZS, BPI, OZP, NAP, OZN, PRN, OCE} F = {BRI → IMES+PREZS+BPI, OZP → NAP, NAP → OZP, OZN→ PRN+OZP+NAP, BRI+OZP → OCE+OZN} K = {BRI+OZN, BRI+OZP, BRI+NAP}

Normalne forme - primeri BRI SPR IME SEM SSMER NAZSMER IMERUK NAZPRED OCENA

123 P1 Ana 5 1 Računarske nauke

Sima Analiza 1 7

123 P2 Ana 5 1 Računarske nauke

Sima Baze podataka 8

123 P3 Ana 5 1 Računarske nauke

Sima Uvod u programiranje

8

345 P3 Ivan 7 1 Računarske nauke

Sima Uvod u programiranje

10

345 P1 Ivan 7 1 Računarske nauke

Sima Analiza 1 5

987 P2 Mila 4 2 Informacione tehnologije

Mika Baze podataka 8

987 P5 Mila 4 2 Informacione tehnologije

Mika Informacioni sistemi

9

987 P4 Mila 4 2 Informacione tehnologije

Mika Operativni sistemi

6

987 P1 Mila 4 2 Informacione tehnologije

Mika Analiza 1 7

• BRI jedinstveno određuje ime studenta, semestar i šifru i naziv smera koji student studira. • SPR jedinstveno određuje naziv predmeta. • SSMER jedinstveno određuje naziv smera i ime rukovodioca. • Jedan student iz jednog predmeta može da ima samo jednu ocenu.

Normalne forme - primeri

BRI SPR NAZPRED OCENA

123 P1 Analiza 1 7

123 P2 Baze podataka 8

123 P3 Uvod u programiranje 8

345 P3 Uvod u programiranje 10

345 P1 Analiza 1 5

987 P2 Baze podataka 8

987 P5 Informacioni sistemi 9

987 P4 Operativni sistemi 6

987 P1 Analiza 1 7

Normalne forme - primeri

Predmet_id Predmet_naziv Semestar Godina Profesor

IT1 Analiza 1 1 2012 Pap

IT1 Analiza 1 1 2013 Takači

IT2 Algebra 1 1 2012 Vojvodić

IT2 Algebra 1 1 2013 Šešelja

IT3 Programski jezici 2 2012 Ivanović

IT3 Programski jezici 2 2013 Ivanović

IT4 Baze podataka 1 3 2013 Racković

IT5 OOP 3 2013 Radovanović

IT6 Baze podataka 2 4 2013 Racković

• Predmet_id određuje Predmet_naziv, semestar • Predmet_id i godina određuju profesora

Normalne forme - primeri

Predmet_id Godina Profesor_id Profesor

IT1 2012 P1 Pap

IT1 2013 P2 Takači IT2 2012 P3 Vojvodić

IT2 2013 P4 Šešelja

IT3 2012 P5 Ivanović

IT3 2013 P5 Ivanović

IT4 2013 P6 Racković

IT5 2013 P7 Radovanović

IT6 2013 P6 Racković

• Šeme relacija:

– A({A1, A2}, {A1→A2})

– B({B1, B2}, {B1→B2})

– X({A1, B1, X1}, {A1+B1→X1})

– C({C1, C2, B1}, {C1→C2, C1→B1})

– Y({A1, B1, C1, Y1}, {A1+B1+C1→Y1, C1→B1})

• Šeme relacija:

– A({A1, A2}, {A1})

– B({B1, B2}, {B1})

– X({A1, B1, X1}, {A1+B1})

– C({C1, C2, B1}, {C1})

– Y({A1, B1, C1, Y1}, {A1+B1+C1}) da li je ključ dobar?

• Fukcionalne zavisnosti:

– A1→A2

– B1→B2

– A1+B1→X1

– C1→C2, C1→B1

– A1+B1+C1→Y1

• SP - šifra predmeta

• N- naziv predmeta

• SN - šifra nastavnika

• IP – ime nastavnika

• BI – broj indeksa

• IS – ime studenta

• BC – broj časova

• SE - semestar

• Šeme relacija:

– Predmet({SP, N}, {SP→N})

– Nastavnik({SN, IP}, {SN→IP})

– Predaje({BC, SP, SN}, {SP+SN→BC})

– Student({BI, IS, SN}, {BI→IS, BI→SN})

– Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE, BI→SN})

SP N

P1 Baze podataka 1

P2 Informacioni sistemi 1

P3 Operativni sistemi 1

SN IP

N1 Ana

N2 Mirko

N3 Sava

SP SN

P1 N1

P2 N1

P2 N3

BI IME SN

S1 Tanja N1

S2 Marko N1

S3 Dunja N2

BI SN SP SE

S1 N1 P1 3

S1 N3 P2 5

S2 N3 P2 5

Nastavnik Predmet

Student Predaje

Sluša

Ali je narušena funkcionalna zavisnost BI→SN!

• Šema relacije • Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE, BI→SN})

nije u 2NF • ključ: SP+BI

• SP+BI→SN nije potpuna, jer važi i BI→SN

• Prilikom prevođenja bi trebalo preimenovati šifru nastavnika (SN), koja kao strani ključ prelazi u šemu relacije Student, jerje značenje tog tipa poveznika mentorstvo (koji nastavnik je mentor kom studentu)

– Student({BI, IS, SMentora}, {BI→IS, BI→SMentora}) • SMentora je preimenovano obeležje

– Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE}) • Ovde je ključ SP+SN+BI

Metoda dekompozicije

• Jedna od metoda normalizacije

• Rastavljanje šeme univerzalne relacije do skupa šema relacija, koje su sve u BCNF

• Ne garantuje se očuvanje polaznog skupa funkcionalnih zavisnosti (neke f.z. Iz polaznog skupa mogu biti izgubljene)

• (U,F)

X→Y

(XY, F|XY) (R\Y, F|R\Y)

Metoda dekompozicije

• Izbor funkcionalne zavisnosti:

– Netrivijalna f.z. koja nije posledica ključa

• P3: Y→A, (A⊆Y) ˄ (R⊆Y+) – ovaj uslov obezbeđuje dolazak u BCNF

– Strožiji uslov, koji garantuje da se pri dekompoziciji neće izgubiti neka f.z. ali ne garantuje dolazak u BCNF

• P1: Y→A, (A⊆Y) ˄ (R⊆Y+) ˄ (F+=(F|R\A∪F|YA)+)

• P2: Y→A, (A⊆Y) ˄ (AY⊂R) ˄ (F+=(F|R\A∪F|YA)+)

Metoda dekompozicije

• Izbor funkcionalne zavisnosti po kojoj se vrši dekompozicija – Ne treba dekomponovati na osnovu trivijalne f.z.

– Birati, ako je moguće, one f.z. koje na levoj strani ne sadrže ključ šeme relacije

– Birati, ako je moguće, one f.z. koje sa desne strane imaju obeležje koje se više nigde ne pojavljuje

• Da se ne bi nepotrebno gubile funkcionalne zavisnosti, dekompozicija se vrši prvo po pravilu P1, pa po P2, pa po P3

Metoda sinteze

• Jedna od metoda normalizacije • Šema univerzalne relacije (U,F)

– F je skup funkcionalnih zavisnosti, gde sve funkcionalne zavisnosti imaju jednočlane skupove obeležja sa desne strane

• Rezultat metode sinteze je skup šema relacija: – S={(Ri, Ki)|i=1,...,n}, Ri⊆U, Ki – sintetizovani ključevi – U= 𝑅𝑖

𝑛𝑖=1 - Skup šema relacija S sadrži kompletnu

informaciju o skupu obeležja U – F≡{X→Ri|X∈Ki ˄ ((Ri, Ki) ∈ S)} - Skup šema relacija S sadrži

kompletnu informaciju o skupu funkcionalnih zavisnosti F – (Ri, Ki)∈S je najmanje u 3NF – Ne postoji skup šema relacija T sa manjim brojem šema

relacija nego S, a da zadovoljava prethodna tri uslova

Metoda sinteze

• Koraci algoritma: 1. Redukcija skupa f.z. 2. Nalaženje neredundantnog pokrivača

• Polazni skup f.z. se prevodi u kanonički pokrivač H

3. Particija skupa f.z. na disjunktne podskupove f.z. sa jednakim levim stranama

• Svaki podskup bi mogao generisati jednu šemu relacije, ali moguće je da još uvek nije zadovoljen uslov minimalnosti

4. Izdvajanje ekvivalentnih levih strana • Isto zatvaranje levih strana (npr. X i Y), formira se skup J u kom se nalaze zavisnosti X→Y i

Y→X (nove f.z. koje jesu posledica skupa H, ali nisu morale postojati u H) • Zbog toga neke od postojećih f.z. mogu postati tranzitivne (suvišne) • Obezbeđuje se minimalnost skupa šema relacija

5. Pronalaženje tranzitivnih f.z. • Eliminisanje f.z. koje su posledica uvođenja f.z. X→Y i Y→X

6. Rekonstrukcija grupa • Uz eliminisanje tranzitivnih f.z. • Uključuju se f.z. X→Y i Y→X

7. Formiranje šema relacija • Skup obeležja f.z. proglašava se za skup obeležja šeme relacije • Skup levih strana f.z. postaje skup sintetizovanih ključeva posmatrane šeme relacije

• ⊆∈⇒⇔⊂ ∀ ∈