Relacioni model, koncepcija relacionih modela

 

Pri razvoju RM podataka postavljena su tri cilja:

 

·          Nezavisnost. Uvođenje jasne granice između logičkih i fizičkih aspekata baze podataka, kako u domenu projektovanja tako i u omenu korišćenja.

·          Strukturalna jednostavnost, odnosno, struktura modela treba da bude veoma jednostavna, prihvatljiva svakom korisniku, jer relaciona baza podataka predstavlja skup jednostavnih (ravnih) tabela. Operacije koje iz skupa tabela generišu izlaz (takođe neku tabelu) su jednostavne i lako prihvatljive. Jednostavna struktura i jednostavne operacije su osnova za definisanje jednostavnog jezika za komunikaciju.

·          Formaln-matematička interpretacija tabela. Određene vrste tabela se mogu tretirati kao matematičke relacije i iskoristiti bogata teorijska osnova odgovarajućeg matematičkog apaata za razvoj jezika baza podataka i metodologije projektovanja relacionih baza podataka.

 

Prema Codd-ovim rečima: “Najvažniji motiv istraživačkog rada, koji je rezultovao u relacionom modelu, bio je postizanje oštre i jasne granice između logičkih i fizičkih aspekatai upravljanja bazom podataka”. Ovo istraživanje Codd je nazvao nezavisnošću podataka. U dosadašnjim SUBP, opis podataka je bio preplavljen informacijama o karakteristikama fizičke strukture podataka. Odnosno, u svaki aplikativni program bila je igrađena informacija o fizičkoj strukturi.

 

Pojam fizičke strukture podataka odnosi se na sve aspekte tzv. “interne prezentacije podataka”, kao i na mehanizme pristupa podacima.

 

Ključ za razumevanje osnovne ideje relacionog modela leži u razumevanju pojma nezavisnost podatka, koja se postiže potpunim razdvajanjem oblika u kojem se podaci prezentiranju programu ili korisniku (logički aspekt), od oblika u kojem se ti podaci memorišu u bazi podataka (fizički aspekt).

 

 

Relacioni model, struktura RM, definicija relacije

 

 

Za formalnu definiciju strukture RM, koriste se sledeći matematički pojmovi:

Skup. Pojam skupa je osnovni pojam u matematici i on se formalno definiše. Neformalno se može reći da je kup “objedinjavanje nekog mnoštva elemenata u celinu”. Skup elemenata x,y,z,...,v se može označiti S={x,z,y,…,v}. Ovakav opis skupa, opis u kome se navode svi njegovi elementi, naziva se ekstenzija skupa i može se primeniti samo na skupove sa konačnim brojem elemenata. Skup se može opisati i navođenjem osobina koje svaki njegov element mora da zadovolji. Ovakav opis skupa se naziva intenzija skupa i piše se:  S=x I P(x)}, gde je P(x) uslov koji svi elementi treba da zadovolje.

 

Definicija: Skupom se naziva svaka kolekcija objekata koja ispunjava sledeća dva uslova:

 

·          Svi objekti koje ona sadrži su savršeno dobro definisani i

·          Pripadanje, a takođe i nepripadanje, nekog objekta ovoj kolekciji definisano je bez ikakve dvosmislenosti.

 

 

Dekartov (Kartezijanski) proizvod skupova. Neka je data kolekcija skupova D1,D2,...,Dn (ne moraju biti različiti). Dekartov proizvod ovih n skupova D1 x D2 x ... x Dn  je skup svih mogućih uređenih n-torki (d1,d2,...,dn), tako da je d1Î D1, d2 ÎD2, dn Î Dn.

 

Primer:     A={1,2,3,4}, B={4,6,8},

                A x B = {(1,4), (1,6), (1,8), (2,4), (2,6), (2,8), (3,4), (3,6), (3,8), (4,4), (4,6), (4,8)}.

 

Definicija:               

Proizvodom skupova A i B naziva se skup svih uređenih parova čije su prve komponente elementi skupa A, a druge komponente elementi skupa B.

 

 

 

Relacioni model, struktura RM, relacija

 

 

Relacija.      Relacija definisana na n skupova je podskup Dekartovog proizvoda tih n skupova.  RÍD1 x D2 x ... Dn . Podskup R sadrži one n-torke Dekartovog proizvoda koje zadovoljavaju zadatu relaciju.

 

Primer:       

    A={1,2,3,4}, B={4,6,8}, i neka je zadata relacija RÍAxB={(a,b) I a=b/2}

                    R={(2,4), (3,6), (4,8)}

 

Domen relacije. Skupovi D1,D2,...,Dn se nazivaju domenima relacije R.   

Stepen relacije. Broj domena na kojima je definisana neka relacija se naziva stepen relacije. Razlikujemo unarne (na jednom domenu), binarne (na dva domena) i n-arne relacije.Kardinalnost relacije. Je broj n-torki u relaciji.

 

Atribut relacije. Kako je Dekartov proizvod skup uređenih n-torki, redosled elemenata u jednoj n-torki je bitan. Na primer, ako nad domenima

BrInd={001, 007, 035}, Ime={Miloš, Ana}, Starost={19,22} definišemo relaciju R  

RÍBrInd x Ime x Starost = {(001, Milos,19), (007,Ana, 19), 035,Ana,22) u njoj je bitno da prvi element trojke uzima vrednost iz prvog, drugi iz drugog, a treći iz trećeg skupa. Ako vrednostima elemenata u n-torkama pridružimo imena domena, redosled elemenata u n-torkama više neće imati značaja.

Student ÍBrInd x Ime x Starost = {(Brind:001, Ime:Milos, tarost:19),(Ime:Ana, BrInd:007, Starost:19), (BrInd:035,Starost>22,Ime:Ana)}.

 

 

Relacioni model, struktura RM, atribut relacije

 

 

Atribut relacije se formalno može definisati kao par (naziv domena, vrednost domena).

 

Primer: (Ime,Ana).

Preko imena se definišu uloga domena u relaciji i često se to ime naziva atribut relacije. Kaže se da su atribute relacije     Student BrInd, Ime, i Starost.

 

Bitno je da naziv domena govori o ulozi koju domen ima u relaciji. Uslovi koje tabela treba da zadovolji da bi bila relacija:

1.        Ne postoji duplikat vrste tabele,

2.        Redosled vrsta nije značajan,

3.        Redosled kolona nije značajan.

 

Pored toga da bi se definisao jednostavan skup operacija nad relacijama definiše se sledeći dodatni uslov:

4.        Sve vrednosti atributa u relacijama su atomske.

 

Ako relacija zadovoljava ovaj uslov tada je ona u prvoj normalnoj formi (1NF).

 

Termin “normalizovana relacija” se koristi za relacije u prvoj normalnoj formi.

 

 

Relacioni model, struktura RM, primer

 

 

Primer: Relacija (tabela) Prijava, zapisana u ovom obliku nije normalizovana, jer atributi NazivPred i Ocena predstavljaju “grupu sa ponavljanjem”. Relacija Prijava se može dovesti u prvu normalnu formu, “ravnanjem” tabele uvodeći redundansu Podataka. Uobičajeno je da se relacije predstavljaju na sledeći način:

 

 

Student(BrInd,Ime,Starost)

Prijava(BrInd,Ime,NazivPred,Ocena)

 

 

Relacioni model, struktura RM, domeni relacije

 

 

Domeni se mogu definisati i kao skupovi iz kojih atributi relacije uzimaju svoje vrednosti. Domeni se dele na:

 

Predefinisane domene, domene koji postoje u jezicima baze podataka. Predefinisani domeni su ekvivalentni predefinisanim (ugrađenim) tipovima podataka u programskim jezicima. Primeri predefinisanih domena su skup celih brojeva (Integer), skup nizova karaktera (String).

 

Semantičke domene, koje korisnik definiše nad predefinisanim ili prethodno definisanim semantičkim domenima ugrađujući u definiciju neko ograničenje i dajući im na taj način određenoi značenje, zbog čega se i nazivaju “semantički”. Semantički domeni se još nazivaju i apstraktnim ili korisnički  definisanim domenima. Semantički domeni su apstraktni tipovi podataka, odnosno objekti koje definiše korisnik.

 

Atributi relacija bi trebalo uvek da budu definisani nad semantičkim domenoima, jer samo tako korisnik može imati punu kontrolu u izvršavanju operacija nad bazom podataka.

 

 

Relacioni model, struktura RM, ključevi relacije

 

 

Ključevi. Činjenica da su sve n-torke u relaciji različite, govori da postoji jedan atribut ili više atributa zajedno (u krajnjem slučaju svi zajedno) čije vrednosti jeinstveno identifikuju jednu n-torku u relaciji (jednu vrstu u tabeli). Taj atribut ili grupa atributa se naziva ključem relacije (jedan atribut prost ključ, grupa atributa složen ključ). Ključ relacije se formalno definiše na sledeći način:

Ključ relacije R je takva kolekcija K njenih atributa koja zadovoljava sledeća dva  uslova, poznata pod imenom osobina jedinstvenosti i osobina neredudantnosti:

 

·          Osobina jedinstvenosti. Ne postoje bilo koje dve n-torke sa istom vrednošću K.

·          Osobina neredundantnosti. Ako se bilo koji atribut izostavi iz K, gubi se osobina jedinstvenosti.

 

 

U jednoj relaciji postoje više različitih kolekcija K atributa koje zadovoljavaju definiciju ključa. Jedan od kandidata koji se izabere za identifikaciju n-torke naziva se primarni ključ, ostali (neizabani) kandidati se nazivaju alternativnim ključevima.

 

Primarni ključ se u relaciji (šemi relacije) podvlači. Student(BrInd, Ime, Starost)

 

Spoljni ključ. Je atribut ili grupa atributa u relaciji R1 koji u njoj nije primarni ključ, ali je primarni ključ u nekoj drugoj relaciji. Vrednost spoljneg ključa se koristi za povezivanje sa vrednošću primarnog ključa u odgovarajućoj relaciji R2.

 

Neka je R2 bazna relacija. Spoljni ključ SK u R2 je podskup njenih atributa takav da: (1) Postoji bazna relacija R1 sa kandidatom za ključ KK i (2) svaka vrednost SK u relaciji R2 jednaka je nekoj vrednosti KK u relaciji R1 ili je nula vrednost.

 

 

 

Relacioni model-struktura RM, šema relacione baze i relaciona baza

 

 

Relaciona baza podataka je kolekcija vremenski promenljivih relacija. Iskaz “vremenskih promenljivih” koristi se da ukaže na činjenicu da se vrednosti atributa u BP menjaju. Možemo razlikovati pojam šema relacione BP i samu relacinu BP. Šema relacine BP definiše strukturu baze, dok je sama BP predstavljena skupom tabela čije su strukture opisane u šemi baze.

 

 

Šema relacione BP:

Student(BrInd, Mlb, Ime, Starost, SifSmer)

Predmet(SifPred, NazivPred, BrojCasova)

Prijava(BrInd, Sifred, DatumPol, Ocena)

Smer(SidSmer, NazivSmera, SN)

Nastavnik(SN, ImeNast, Zvanje, SifPred)

 

 

 

Relacioni model, struktura RM, šema relacione baze i relaciona baza 1

 

 

Relacije u nekoj BP mogu se podeliti na “bazne” i “izvedene”.

Izvedena relacija (pogled) je relacija koja se može izvesti iz skupa datih baznih i izvedenih relacija, preko operacija koja se definišu nad relacijama. DobriStudenti (BrInd, Ime, NazivSmera, NazivPred, Ocena) u kojoj su navedeni svi studenti, koji su svoje ispite položili s ocenoma većim ili jednakim 8 i nazivima predmeta i ocenama koje su iz njih dobili.  Bazna relacija je relacija koja se ne može izvesti iz ostalih relacija u relacionoj BP i čuva se u BP.

Dodaj komentar Sviđa mi se - (1) Ne sviđa mi se - (0)    

  • Relacioni model, koncepcija relacionih modela 1
  • Relacioni model, koncepcija relacionih modela 2
  • Relacioni model, koncepcija relacionih modela 3