ACCESS 2007

-RELACIONI MODEL-

     
 

Relacioni model bio je teoretski zasnovan još krajem 60-tih godina 20. vijeka, u radovima E.F. Codd-a. Model se dugo pojavljivao samo u akademskim raspravama i knjigama. Prve realizacije na računaru bile su suviše spore i neefikasne. Zahvaljujući intenzivnom istraživanju, te napretku samih računara, efikasnost relacionih baza postepeno se poboljšavala. Sredinom 80-tih godina 20. vijeka relacioni model je postao prevladavajući. I danas većina DBMS koristi taj model.
Relacija, atribut, n-torka, ključ
Relacioni model zahtijeva da se baza podataka sastoji od skupa pravougaonih tabela - tzv. relacija. Svaka relacija ima svoje ime po kojem je razlikujemo od ostalih u istoj bazi. Jedna kolona relacije obično sadrži vrijednost jednog atributa (za entitet ili vezu) - zato kolonu poistovjećujemo s atributom i obratno. Atribut ima svoje ime po kojem ga razlikujemo od ostalih u istoj relaciji. Vrijednosti jednog atributa su podaci istog tipa. Dakle, definisan je skup dozvoljenih vrijednosti za atribut, koji se zove domen atributa. Vrijednost atributa mora biti jednostruka i jednostavna. Pod nekim uslovima tolerišemo situaciju da vrijednost atributa nedostaje (nije upisana). Jedan red relacije obično predstavlja jedan primjerak entiteta, ili bilježi vezu između dva ili više primjeraka. Red nazivamo n-torka. U jednoj relaciji ne smiju postojati dvije jednake n-torke. Broj atributa je stepen relacije, a broj n-torki je kardinalnost relacije.

 
   
   
Normalizacija relacione sheme:
   

   
 
   
   
   
   
   
   
   
   
     
 

Ključ K relacije R je podskup atributa od R koji ima sljedeća “vremenski nezavisna” svojstva:
1. Vrijednosti atributa iz K jednoznačno određuju n-torku u R. Dakle ne mogu u R postojati dvije n-torke s istim vrijednostima atributa iz K.
2. Ako izbacimo iz K bilo koji atribut, tada se narušava svojstvo 1.
Budući da su sve n-torke u R medusobno različite, K uvijek postoji. Naime, skup svih atributa zadovoljava svojstvo 1. Izbacivanjem suvišnih atributa doći ćemo do podskupa koji zadovoljava i svojstvo 2.Dešava se da relacija ima više kandidata za ključ. Tada jedan on njih proglašavamo primarnim ključem. Atributi koji sastavljaju primarni ključ zovu se primarni atributi. Vrijednost primarnog atributa ne smije ni u jednoj n-torki ostati neupisana. Građu relacije kratko opisujemo tzv. shemom relacije, koja se sastoji od imena relacije i popisa imena atributa u zagradama. Primarni atributi su podvučeni.

 
     
  Pretvaranje ER sheme u relacionu:  
 

Pretvaranje tipova entiteta. Svaki tip entiteta prikazuje se jednom relacijom. Atributi tipa postaju atributi relacije. Jedan primjerak entiteta prikazan je jednom n-torkom. Primarni ključ entiteta postaje primarni ključ relacije. Doduše, učešće entiteta u vezama može zahtijevati da se u relaciju dodaju još neki atributi koji nisu postojali u odgovarajućem tipu entiteta.
Pretvaranje binarnih veza. Ako tip entiteta E2 ima obavezno članstvo u (N : 1) vezi s tipom E1, tada relacija za E2 treba uključiti primarne atribute od E1. Ključ jedne relacije koji je prepisan u drugu relaciju zove se strani ključ (u toj drugoj relaciji).Ako tip entiteta E2 ima neobavezno članstvo u (N : 1) vezi s tipom E1, tada vezu možemo prikazati na prethodni način, ili uvodenjem nove relacije čiji atributi su primarni atributi od E1 i E2.

 
 
 

Normalizacija relacione sheme:

Povratak na vrh

 

Relaciona shema, dobijena iz ER-sheme na osnovu prethodnih uputstava, može sadržavati nedorečenosti koje treba otkloniti prije implementacije. Proces daljnjeg dotjerivanja sheme zove se normalizacija.Teorija normalizacije zasnovana je na pojmu normalnih formi. Relacije dobijene u skladu s poglavljem  morale bi u najmanju ruku biti u prvoj normalnoj formi (1NF). Naime, relacija je u 1NF ako je vrijednost svakog atributa jednostruka i nedjeljiva - to svojstvo već je bilo uključeno u našu definiciju relacije. U svojim radovima (1970-1974. godina) E.F. Codd je najprije definisao drugu i treću normalnu formu (2NF, 3NF), a zatim i poboljšanu varijantu 3NF koja se zove Boyce-Codd-ova normalna forma (BCNF). R. Fagin je 1977. i 1979. uveo četvrtu i petu normalnu formu (4NF, 5NF). U praksi je lako naići na relacije koje odstupaju od 2NF, 3NF, BCNF, no vrlo rijetko se susreću relacije u BCNF koje nisu u 4NF i 5NF. Teorija normalizacije nije ništa drugo nego formalizacija nekih intuitivno prihvatljivih principa o “zdravom” oblikovanju sheme. Ukoliko već na početku dobro uočimo sve potrebne entitete, atribute i veze, tada nam nikakva daljnja normalizacija neće biti potrebna. No ako je polazna relaciona shema bila loše oblikovana, tada će postupak normalizacije ispraviti te greške.
Za zadanu relaciju R, atribut B od R je funkcionalno zavisan o atributu A od R (oznaka: A → B) ako vrijednost od A jednoznačno određuje vrijednost od B. Dakle ako u isto vrijeme postoje u R dvije n-torke s jednakom vrijednošću A, tada te n-torke moraju imati jednaku vrijednost B. Analogna definicija primjenjuje se i za slučaj kad su A i B složeni atributi.Za zadanu relaciju R, atribut B od R je potpuno funkcionalno zavisan o (složenom) atributu A od R ako vrijedi: B je funkcionalno zavisan o A, no B nije funkcionalno zavisan ni o jednom pravom podskupu od A.

 
 
  Druga normalna forma:  
 

Relacija je u drugoj normalnoj formi (2NF) ako je u 1NF i ako je svaki ne-primarni atribut potpuno funkcionalno zavisan o primarnom ključu.

Povratak na vrh

     
 

Treća normalna forma:
Relacija je u trećoj normalnoj formi (3NF) ako je u 2NF i ako ne sadrži tranzitivne zavisnosti. Preciznije, relacija R je u 3NF ako za svaku funkcionalnu zavisnost X → A u R, takvu da A nije u X, vrijedi: X sadrži ključ za R ili je A primarni atribut.

 
     
  Boyce-Codd-ova normalna forma:  
 

Determinanta je atribut (ili kombinacija atributa) o kojem je neki drugi atribut potpuno funkcionalno zavisan. Relacija je u Boyce-Codd-ovoj normalnoj formi (BCNF) ako je svaka njena determinanta i kandidat za ključ. Očito relacija koja je u BCNF takođe i u 2NF i 3NF. No postoje relacije koje su u 3NF, no nisu u BCNF.

 
     
  Četvrta normalnu formu:  
 

Višeznačna zavisnost A ->-> B vrijedi ako: skup B-vrijednosti koje se u R pojavljuju uz zadani par (A-vrijednost, C-vrijednost) zavisi samo o A-vrijednosti, a ne i o C-vrijednosti. Ista definicija primjenjuje se i kad su A, B i C složeni atributi (dakle skupovi atributa).
Relacija R je u četvrtoj normalnoj formi (4NF) ako vrijedi: kad god postoji višeznačna zavisnost u R, na primjer A ->-> B, tada su svi atributi od R funkcionalno zavisni o A. Ekvivalentno, R je u 4NF ako je u BCNF i sve višeznačne zavisnosti u R su zapravo funkcionalne zavisnosti.

Povratak na vrh 

     
  Razlozi zbog kojih se može odustati od normalizacije:  
 

Za većinu praktičnih primjera dovoljno je relacije normalizovati do 3NF. Ponekad je potrebno neku relaciju i dalje normalizovati do BCNF ili 4NF. Peta normalna forma, koja se također navodi u literaturi, nije od praktičnog značaja.
Postoje razlozi zbog kojih izuzetno možemo odustati od pune normalizacije.
Složeni atribut . Dešava se da nekoliko atributa u relaciji čine cjelinu koja se u aplikacijama nikad ne rastavlja na sastavne dijelove.

Efikasno čitanje podataka . Normalizacijom se velike relacije razbijaju na mnogo manjih. Kod čitanja je često potrebno podatke iz malih relacija ponovo sastaviti u veće n-torke. Uspostavljanje veza među podacima u manjim relacijama traje znatno duže nego čitanje podataka koji su već povezani i upisani u jednu veliku relaciju.

 
 
 
 
 
 
   

Povratak na vrh