You are on page 1of 40

Normalizacija

Nenad Mitic
Matematicki fakultet
nenad@matf.bg.ac.rs

Projektovanje baze podataka

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Logi
cko projektovanje/fizicko

projektovanje baze
Logi
cko projektovanje baze
Normalizacija - koricenje ideja o
normalizaciji radi razbijanja "velikih"u
"male"relacije
Semanti
cko modeliranje - upotreba
modela entiteta i odnosa radi formiranja
"velikih"relacija

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.2

Normalizacija - uvod

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer

Normalizacija je proces zamene

relacija skupom relacija koje su u


pogodnijem obliku
Svrha normalizacije je izbegavanje
redundantnosti i pojedinih anomalija
auriranja

Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.3

Normalizacija - uvod

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

U procesu normalizacije operator projekcije


se vie puta primenjuje na datu relaciju na
takav nacin da spajanjem projekcija moe
da se dodje do pocetne relacije. Na taj
nacin, proces normalizacije je reverzibilan i
c uva informacije, tj. uvek je moguce da se
uzme izlaz iz procesa i preslika unatrag do
ulaza

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.4

Normalne forme

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma

Prva normalna forma (1NF)

Treca normalna forma


Nedostaci

Druga normalna forma (2NF)


Treca normalna forma (3NF)
Bojs-Kodova normalna forma (BCNF)

Cetvrta
normalna forma (4NF)
Peta normalna forma (5NF)

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.5

Uvod

Anomalije

Projektovanje baze
podataka
Normalizacija - uvod

Primer: relacija PredmetIspit koja je dobijena


meanjem relacija Predmet i Ispit. Relacija sadri
atribute {Id_predmeta, Sifra, Naziv, Bodovi, Indeks,
Ocena}

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti

Primarni kljuc je {Id_predmeta, Indeks}, a vai i


dodatna FZ NazivBodovi.
ID_PREDMETA
----------1001
1002
1001
1021
1101
1101
2002
2002
2003
2004
4001
4002

SIFRA
----M111
M112
M111
M131
M105
M105
P102
P102
P103
P104
R101
R102

NAZIV
----------------------------------Analiza 1
Analiza 2
Analiza 1
Geometrija
Diskretne strukture 1
Diskretne strukture 1
Programiranje 2
Programiranje 2
Objektno orijentisano programiranje
Algoritmi i strukture podataka
Uvod u organizaciju racunara
Uvod u Veb i Internet tehnologije

BODOVI
-----6
6
6
6
5
5
8
8
8
8
7
7

Indeks
-------20100021
20100021
20100022
20100021
20100021
20100023
20100024
20100025
20100021
20100021
20100021
20100021

Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Ocena
---7
8
7
8
6
6
9
9
7
6
10
10

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.6

Uvod

Anomalije

Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma

Postoji redundatnost: svaki Id_predmeta 1001 kao


naziv pokazuje Analiza 1. Takodje, svaka Analiza 1
za broj bodova ima vrednost 5, itd.
ID_PREDMETA
----------1001
1001

SIFRA
----M111
M111

NAZIV
----------------------------------Analiza 1
Analiza 1

BODOVI
-----6
6

Indeks
-------20100021
20100022

Ocena
---7
7

Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.7

Anomalije

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

Anomalije auriranja:
Unoenje: ne moe jednostavno da se unese podatak
da neki Id odgovara pojedinom nazivu predmeta dok
neko nije polagao taj predmet. (jer ne postoji
odgovarjauci broj indeksa koji je deo p.k)

Ako se izbriu svi podaci za Id_predmeta, takodje se


brii i podaci o nazivu tog predmeta, njegovoj ifri, broju
bodova, ...

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Poto se isti naziv javlja na vie mesta, to moe da


dovede do problema pri promeni naziva.

Normalne forme
relacija - primeri
Primer 1
Primer 2

Zbog toga se vri dekompozicija (preko projekcija)


ovakvih relacija.

10.8

Prva normalna forma

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti

Relvar je u 1NF ako i samo ako u svakoj


vaecoj vrednosti tog relvar-a svaka torka
sadri tacno jednu vrednost za svaki atribut

Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.9

Nereducibilna FZ

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Nereducibilna funkcionalna zavisnost: Ako


AB i uklanjanje bilo kog atributa iz A
povlaci da AB postaje netacno, tada je
B nereducibilno zavisno od A

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije

Naredna definicija podrazumeva postojanje


samo jednog kandidata za kljuc koji je
istovremeno i primarni kljuc

Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.10

Druga normalna forma

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti

Relvar je u 2NF ako i samo ako je u 1NF i


svaki nekljucni atribut je nereducibilno
zavisan od primarnog kljuca

Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.11

normalna forma
Treca

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Relvar je u 3NF ako i samo ako je u 2NF i


svaki nekljucni atribut je netranzitivno
zavisan od primarnog kljuca

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Prethodna definicija podrazumeva postojanje samo


jednog kandidata za kljuc koji je istovremeno i
primarni kljuc. Posledica: nekljucni atributi su
uzajamno nezavisni

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.12

normalne forme
Nedostaci trece

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma

Kodova originalna definicija 3NF nije


uzimala u obzir slucajeve kada relacija
1 ima vie od jednog kandidata za klju
c
2 kandidat za klju
c je kompozitan
3 kompozitni kandidati za klju
ceve se
preklapaju
Ovi slucajevi su obuhvaceni Bojs-Kodovom
normalnom formom

Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.13

normalne forme
Nedostaci trece
(nastavak)

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma

Primer: relacija SPN


(Student-Predmet-Nastavnik)

Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

S
Lazic
Lazic
Peric
Peric

P
matematika
racunarstvo
matematika
racunarstvo

N
Petrovic
Markovic
Petrovic
Markovic

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

Znacenje torke: student S slua predmet P


kod nastavnika N.
10.14

normalne forme
Nedostaci trece
(nastavak)

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma

Pretpostavke:

Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije

2
3
4

za svaki predmet svaki student slua


nastavu samo kod jednog nastavnika,
tj. {S,P}N
Kandidati za kljuc su {S,P} i {S,N}
FZ {S,P}N
Svaki nastavnik predaje samo jedan
predmet, tj. NP

Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.15

Bojs-Kodova normalna forma

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Relvar je u BCNF ako i samo ako svaka


netrivijalna levo-nereducibilna FZ ima
kandidat za kljuc kao svoju levu stranu
Manje formalno: Relvar je u BCNF ako i
samo ako su jedini kandidati za kljuc leve
strane FZ

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.16

Primer redukcije u BCNF

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Neka su nazivi predmeta jedinstveni.


Relacija PredmetDosije{Id_predmeta,
Naziv, Indeks, Ocena}
Kandidati za kljuc su

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja

{Id_predmeta, Indeks}Ocena
{Naziv, Indeks}Ocena

Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Naziv predmeta je jedinstven:

Normalne forme
relacija - primeri
Primer 1
Primer 2

Id_predmetaNaziv
NazivId_predmeta

10.17

Primer redukcije u BCNF

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

Id_predmeta i Naziv su na levoj strani FZ,


ali nisu kandidati za kljuc
= PredmetDosije nije u BCNF

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma

Reenje: razbijanje PredmetDosije na dve


relacije:

Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija

IN{Id_predmeta,Naziv} i
PD{Id_predmeta, Indeks, Ocena}, ili

Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

IN{Id_predmeta,Naziv} i
PD{Naziv, Indeks, Ocena}

10.18

redukcije
Moguce

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

U relaciji
Dosije {Indeks, Jmbg, Datum_rodjenja, ...}

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije

kandidati za kljuc su Indeks i Jmbg. Neka vae


sledece FZ:

Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Indeks Jmbg
Jmbg Datum_rodjenja
... ...

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

Relacija nije u 3NF jer postoji tranzitivna zavisnost


Indeks Datum_rodjenja.

10.19

redukcije (nastavak)
Moguce

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

Razbijanja relacije Dosije

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma

Dosije_1a {Indeks, Jmbg, ...}


Dosije_1b {Jmbg, Datum_rodjenja, ...}

Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Dosije_2a {Indeks, Jmbg, ...}


Dosije_2b {Indeks, Datum_rodjenja, ...}
Dosije_3a {Jmbg, Datum_rodjenja, ...}
Dosije_3b {Indeks, Datum_rodjenja, ...}

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.20

redukcije (nastavak)
Moguce

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Sva tri para relacija jesu u 3NF i u

BCNF
Dekompozicije [1] i [2] ne dovode do
gubitka informacija
Pri dekompoziciji [2] javlja se anomalija
pri unosu

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

= korektno razbijanje je kao u slucaju [1].

10.21

redukcije (nastavak)
Moguce

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

Pravila:
1 Sve FZ polaznog skupa moraju da
budu ocuvane (direktno ili mogucim
izvodjenjem iz skupa relacija dobijenih
dekompozicijom)
2 Ako u novodobijenim projekcijama
nastalim razbijanjem osnovne relacije
postoji zajednicki atribut, on mora da
bude kljuc u bar jednoj od
novodobijenih relacija

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.22

Uvod

Vieznacne
zavisnosti

Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Relacija PNU
(Predmet-Nastavnik-Udbenik):

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer

P
matematika
racunarstvo

N
{Petrovic,
Markovic}
Petrovic

U
{Analiza,
Linearna algebra}
{Linearna algebra,
Uvod u programiranje,
Strukture podataka}

Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

Znacenje torke: predmet P moe da


predaje bilo koji nastavnk N i da koristi bilo
koji udbenik U
10.23


Vieznacne
zavisnosti (nastavak)

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Pretpostavke:
1 za dati kurs postoji proizvoljan broj
nastavnika i udbenika
2 nastavnici i tekstovi su nezavisni
3 nastavnik ili tekst moze da se pridrui
bilo kom kursu
U ovoj relaciji ne postoje FZ

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.24


Vieznacne
zavisnosti (nastavak)

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Primarni klju
c: {Predmet, Nastavnik,

Udbenik}
Relvar je u 1NF, 2NF, 3NF i BCNF
Relvar PNU poseduje redundantost

ako obe torke (p, n1 , u1 ) i (p, n2 , u2 )


postoje tada moraju da postoje i torke
(p, n1 , u2 ) i (p, n2 , u1 )

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Posledica je anomaliju pri auriranju:


da bi se uneo podatak da novi

Normalne forme
relacija - primeri
Primer 1
Primer 2

nastavnik predaje matematiku moraju


da se unesu dve torke, po jedna za
svaki udbenik
10.25


Vieznacne
zavisnosti (nastavak)

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma

Intuitivno moe da se izvri dekompozicija


{predmet, nastavnik} i
{predmet, udbenik}

Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija

Dekompozicija ne sledi iz FZ (kojih i nema)


vec iz postojanja vieznacnih zavisnosti

Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.26


Definicija vieznacnih
zavisnosti

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Definicija: Neka je R relvar i neka su A, B i


C podskupovi atributa od R. Kaze se da je

B vieznacno
zavisno (VZ) od A, u oznaci
AB, ako i samo ako u svakoj
mogucoj vaecoj vrednosti od R, skup
vrednosti B koji se uparuje sa parom
(vrednost A, vrednost C) zavisi jedino od
vrednosti A i nezavisan je od vrednosti C.

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.27


Cetvrta
normalna forma

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Relvar R je u 4NF ako i samo ako je u


BCNF i svaki put kada postoje podskupovi
A i B atributa od R takvi da je zadovoljena
netrivijalna vieznacna zavisnost
AB, tada su svi atributi od R takodje
funkcionalno zavisni od A vskip 2ex
Primedba: VZ AB je trivijalna ako je ili A
nadskup od B ili je A B sadri sve atribute od R

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.28

Zavisnost spajanja

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Neka je R relvar i neka su A, B, ..., Z


podskupovi atributa od R. Tada R
zadovoljava zavisnost spajanja (ZS)
{A, B, ..., Z } ako i samo ako je R u 4NF i
svaka moguca vaeca vrednost u R je
jednaka spajanju njenih projekcija na
A, B, ..., Z

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.29

Peta normalna forma

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Relvar R je u 5NF (projekcija-spajanje-NF)


ako i samo ako R je u 4NF i svaka
netrivijalna zavisnost spajanja koja vai u R
je posledica kandidata za kljuc u R, gde
Zavisnost spajanja {A, B, ..., Z } u R je
trivijalna akko je najmanje jedan od
A, B, ..., Z skup svi atributa R
Zavisnost spajanja {A, B, ..., Z } u R je
posledica kandidata za kljuc relvara R
akko je svaki od A, B, ..., Z nadkljuc za
R

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.30

Proces normalizacije

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma

1) Uzeti projekcije originalnog relvara u


1NF radi eliminisanja FZ koje nisu
nereducibilne. Dobijeni skup relvara je
u 2NF.
2) Uzeti projekcije relvara u 2NF radi
eliminisanja tranzitivnih zavisnosti.
Dobijeni skup relvara je u 3NF.
3) Uzeti projekcije relvara u 3NF radi
eliminisanja preostalih FZ u kojima na
levoj strani nije kandidat za kljuc.
Dobijeni skup relvara je u BCNF

Druga normalna forma


Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.31

Proces normalizacije

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

4) Uzeti projekcije relvara u BCNF radi


eliminisanja VZ koje nisu i FZ. Dobijeni
skup relvara je u 4NF.
5) Uzeti projekcije relvara koji su u 4NF i
eliminisati ZS koje ne slede iz
kandidata za kljuc(eve). Dobijeni skup
relvara je u 5NF.

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.32

Denormalizacija

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

U praksi se c esto ne sprovodi puna


normalizacija zbog dobrih performansi
puna normalizacija dovodi do velikog
broja logicki razdvojenih relvar-a
veliki broj razdvojenih relvar-a zna
ci
veliki broj razdvojenih datoteka u
kojima se c uvaju
veliki broj datoteka zna
ci veliki broj U/I
operacija
U praksi se normalizacija najcece sprovodi
do 3NF

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.33

Primer 1
Neka je dat relvar R = {A, B, C, D} i skup F
FZ:
1) AB C
2) C D
3) D A

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

A) Navesti neke netrivijalne FZ koje mogu da


budu izvedene iz F
B) Odrediti kandidate za kljuc relvara R

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1

V) Navesti sve FZ koje sprecavaju da relavar R


bude u BCNF

Primer 2

G) Dekomponovati R tako da dobijene relacije


budu u BCNF
10.34

Uvod

Primer 1 - nastavak A

Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

Neke netrivijalne FZ su:

Bojs-Kodova normalna
forma
Primer
Izbor redukcije

1)
2)
3)
4)
5)

C ACD
D AD
AB ABCD
AC ACD
BC ABCD

6)
7)
8)
9)
10)

BD ABCD
CD ACD
ABC ABCD
ABD ABCD
BCD ABCD

Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.35

Uvod

Primer 1 - nastavak B

Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Iz zatvorenja skupa atributa

Prva normalna forma


Druga normalna forma
Treca normalna forma

1) A =A

8) BC =ABCD

2) B+ =B

9) BD+ =ABCD

Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

3) C+ =ACD

10) CD+ =ACD

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

4) D+ =AD

11) ABC+ =ABCD

Proces
normalizacije
Normalizacija

5) AB =ABCD

12) ABD =ABCD

6) AC+ =ACD

13) ACD+ =ACD

7) AD+ =AD

14) BCD+ =ABCD

Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

dobija se da su kandidati za kljuc AB, BC i BD


10.36

Primer 1 - nastavak C

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci

FZ koje onemogucavaju da relacija R bude


u BCNF su
1) C D (FZ 2) iz pocetnog skupa
2) D A (FZ 3) iz pocetnog skupa
jer atributi koji se nalaze na njihovim levim
stranama nisu kandidati za kljuc.

Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.37

Primer 1 - nastavak D

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Neformalni pristup:

Normalne forme
Prva normalna forma
Druga normalna forma

1) Ako se relacija R = {A, B, C, D} razbija na


osnovu FZ 2) dobija se R1 = {C, D} i
Rx = {A, B, C} (iskljucuje se atribut koji je na
desnoj strani FZ) koja se zatim razbija na
osnovu FZ C A (tranzitivnost!), tako da je
krajnji rezultat R1 = {C, D} i R2 = {C, A} i
R3 = {B, C}

Treca normalna forma


Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

2) Ako se relacija R = {A, B, C, D} razbija na


osnovu FZ 3) dobija se R1 = {D, A} i
Rx = {B, C, D} (iskljucuje se atribut koji je na
desnoj strani FZ) koja se zatim razbija na
osnovu FZ 2), tako da je krajnji rezultat
R1 = {D, A} i R2 = {C, D} i R3 = {B, C}

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.38

Primer 2

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme

Neka je dat relvar R = {A, B, C, D, E, F } i


skup FZ:
1) AB D
2) B C
3) AE B
4) A D
5) D EF
Transformisati relaciju R tako da
novodobijena relacija bude u BCNF.
Uputstvo: odrediti kandidate za kljuc za
nereduciblnog skupa FZ.

Prva normalna forma


Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma
Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija
Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.39

Primer 2 - reenje

Uvod
Projektovanje baze
podataka
Normalizacija - uvod

Normalne forme
Prva normalna forma
Druga normalna forma
Treca normalna forma
Nedostaci
Bojs-Kodova normalna
forma

Vai {A}+ = {ABCDEF } pa ostale 3 FZ


naruavaju BCNF. Razbijanje
1) Iz B C dobija se R1(B,C), R1a{ABDEF}
2) Iz D E dobija se R2(D,E), R2a{ABDF}

Primer
Izbor redukcije
Vieznacne zavisnosti
Definicija

Cetvrta
normalna forma
Zavisnost spajanja
Peta normalna forma

Proces
normalizacije
Normalizacija

3) Iz D F dobija se R3(D,F), R4{ABD}

Denormalizacija

Normalne forme
relacija - primeri
Primer 1
Primer 2

10.40

You might also like