You are on page 1of 6

1.

RELACIJSKI MODEL PODATAKA pojam, veza RM i relacijske baze


POJAM: najkompletniji teorijski model podataka
graen sa namjenom da bude inherentan model podataka za DBMS
doivio najvie komercijalnih implementacija
Proizaao kao pokuaj da se postavi teorijska osnova za modele podataka buduih
DBMS-a
RMP nije konceptualni MP
Razvoj se sastoji od dvije bitno razliite faze:
Specifikacija implementacijski neoptereen proces modeliranja
Implementacija proces modeliranja koji je ogranien inherentnim svojstvima
DBMS-okoline u koju se implementira
Najprije specifikacija, a tek potom implementacija!
2. Faze podatkovnog modeliranja, znaaj, svrha, odnosi
FAZE MODELIRANJA
1. Konceptualna: odrediti podruje interesa i njegovu semantiku (E-R model)
2. Logika: logika organizacija i prezentacija korisnicima prenijeti to vie konceptualne
semantike u logiku shemu BP-a putem relacijskog modela:
struktura relacijskog modela podataka
integritetskog granienja relacijskog modela pod.
proceduralnih pravila i ogranienja
3. Fizika - fiziki smjetaj podataka na HD-u (kontejneri i pristupni putevi)
optimalno koritenje resursa
najbolje performanse
sigurnost podataka
3. Definicija RMP, porijeklo, zagovornici, kritiari, razlozi
RMP je model podataka u kome su:
Podaci su logiki organizirani u:
relacijske tabele, i samo relacije tabele,
Podrana su :
pravila relacijskog integriteta podataka i
Postoje definirani :
operatori za manipulaciju podacima u bazi
(organiziranje, ubacivanje, auriranje i dohvaanje podataka)
RMP je apstraktna teorija o podacima zasnovana na:
matematikoj teoriji skupova
predikatnoj logici
osniva: E.F.Codd (1970) apstraktna teorija zasnovana na matematikoj teoriji skupova i
predikatnoj logici
Vodei zagovornici izvornog RM:
C.H.Date
F. Pascal
H. Darwen
Protivnici, kritiari i ignoranti RM:
OO tabor: objektne baze nasuprot RDBMS
SQL Standard: RMP nije ispravno implementiran u SQL
Proizvoai DBMS
Neupueni praktiari -

oni koji zbog neznanja pogreno interpretiraju RM


Ocjenjuju RMP na temelju postojeih komercijalnih DBMS implementacija
4. Arhitektura sustava relacijske baze podataka- razine, aspekti, preslikavanja
Arhitektura RDBMS: Trorazinska shema (ANSI/SPARC arhitektura iz 1975.)
5. EKSTERNA RAZINA Eksterna razina
Pojedinani korisniki pogledi
Pogledi sa aspekta pojedinog korisnikog programa
Ne moraju, a esto i ne smiju svi korisnici vidjeti sve fakte u bazi podataka
Autorizacija pristupa
KONCEPTUALNAKonceptualna razina
Zajedniki korisniki pogled
To je prevedeni konceptualni model
INTERNA Interna razina
Pogled s aspekta memorijske organizacije baze podataka
Problem performansi i fizikog pristupa rjeava se na toj razini
arhiktetura se moe podijeliti na korisniku i serversku stranu
ASPEKTI
RStrukturalni aspekt pravila strukture modela
Kako je organizirana struktura objekata koji sadre
podatke ?
Integritetski aspekt dodatna pravila integriteta
Koja su pravila integriteta podrana odnosno neophodna ?
Manipulativni aspekt pravila manipulacije podacima
Na koji je nain mogue manipulirati podacima u bazi ?
Svaki MP koji ini osnovu nekog DBMS-a mora sadravati sva ta tri aspekta
6. Relacijska struktura
STRUKTURALNA KOMPONENTA RMP UKLJUUJE SLJEDEE KONCEPTE:
Relacije (relacijske tabele)
Atributi - stupci tabela
Domene - imena stupaca (tip podataka, homogeni skup restrikcije moguih vrijednosti
i operacija), zaglavlje relacije
Entorke - redovi, tijelo relacije
Primarni klju - glavni (jedinstveni) atribut po kojem se odreuje pojedina entorka
stupanj - broj atributa
kardinalnost - broj entorki
7. RELACIJE definicija, svojstva, znaenje
Neka je danaa Di (i=1,2,3,n), pri emu nije nuno da one budu razliite nad tim domenama
ako se ona sastoji od dva dijela
1. Zaglavlje
2. Tijelo
Svojstva relacije:
1. u istoj relaciji ne postoje dvije iste n-torke (semantiki nepotrebno ponavljati
informaciju- ali dozvoljeno u komercijalnim DBMS)
Primarni klju osigurava ispunjenje ovog pravila
2. n-torke su nesreene od vrha prema dnu (ne nuno po redu, onako kako e ih korisnik
vidjeti)

3. atributi su nesreeni od lijeva prema desno (odreeni samo imenom, ne pozicijom u


tabeli) atributi se referenciraju u RMP samo putem imena odnosnonaziva atributa a
nikako ne prema poziciji u ntorci
4. svaka n-torka sadri samo jednu vrijednost za jedan atribut (ureeni par) - PRVA
NORMALIZIRANA FAZA
svaka je relacija normalizirana tako da bude barem u prvoj normalnoj formi
8. Relacijske varijable, znaenje, vrste, pogledi
Svaka relacija ima odreenu vrijednost tj., skup n-torki sa odreenim vrijednostima atributa
Govorimo o relacijskoj varijabli kao varijabli koja sadri relacijske vrijednosti
Kaemo da:
relacijska varijabla predstavlja:
organizaciju/strukturu za relaciju
relvar je definirana kao skup ureenih parova (domena,ime_atributa)
relvar kao zaglavlje relacije
relacijska varijabla kao tabela-varijabla
relacija predstavlja:
vrijednosti koje relvar sadri (najee sloene vrijednosti)
relacija ili relacijska vrijednost kao tabela vrijednost
Skraeno moemo relacijsku varijablu nazvati : relvarijabla (relvar)
vrste: bazna podatci fiziki postoje u tabeli
izvedena (pogled) - generira se po pristupu od parcijalnih ili cijelih baznih relvarijabli
(ili drugih pogleda)
9. Integritet, integritetska ogranienja, vrste, znaenje
INTEGRITET RMP
meusobna sukladnost podataka, odrava se:
implicitnim ogranienjima - posredno ukljuena u model osobinama arhikteture odreenog
DBMS-a
eksplicitnim ogr. - specifino definirana
predstavljaju vanu komponentu DBMS-a
Vrste ogranienja dozvoljenih vrijednosti:
Ogranienja tipa/domene
Specifikacija dozvoljenih vrijednosti za odreeni tip
Ogranienja atributa
Specifikacija dozvoljenih vrijednosti za odreeni atribut
Ogranienja relvarijabli
Specifikacija dozvoljenih vrijednosti za odreenu relvarijablu
Ogranienja baze podataka
Specifikacija dozvoljenih vrijednosti za odreenu bazu podataka

10. Kljuevi, pojam, vrste, definicije, znaenje


Kljuevi u relacijskom modelu podataka su predstavljeni:
Skupom atributa relacije
Taj skup atributa mora imati odreena svojstva
Postoje etiri vrste kljueva:
Kandidatni- jedinstvenost, reducibilnost
Primarni- ako postoji vie kandidatnih kljueva, jedan od njih se moe proglasiti primarnim
ostali kandidatni kljuevi (ako postoje), e se nazivati alternativni kljuevi
Alternativni-neizabrani kandidatni kljuevi
Strani-atribut koji postoji i u nekoj drugoj tabeli, gdje je primarni klju
jednostavan ili- Sadri samo jedan atribut
kompozitni-Sastoji se od dva ili vie atributa
Strani klju u nekoj relaciji moe biti:Dio primarnog kljua te relacije, Primarni klju u istoj
relaciji
11. Dva temeljna integritetska ogranienja u RBP
entitetski integritet - Niti jedna komponenta primarnog kljua bilo koje bazne
relvarijable ne smije moi primiti null-vrijednost
Null-vrijednost je nepostojea "vrijednost" atributa bilo zbog toga to je nepoznata ili iz nekih
drugih razloga
referencijalni integritet - svaki strani klju mora imati neku vrijednost u svojoj
vlastitoj tabeli
Baza podataka ne smije sadravati niti jednu neuparenu vrijednost stranog kljua.
12. Operacije u RMP, pojam, modeli
Osnovna pravila:
Sve operacije se izvode nad relvarijablama.
Rezultat svake operacije je relvarijabla.
Budui da su relvarijable skupovi/tabele sve operacije se odvijaju nad skupovima odnosno
relacijskim tabelama.
Operacije su deklarativne, a ne proceduralne.
Teorijska podloga:
relacijska algebra
relacijski kalkulus
13. Relacijska algebra, operatori/operacije, vrste, definicija
RELACIJSKA ALGEBRA
algebra = dio matematike koji simbolima (slovima) predstavlja odnose i veliine skupa i
dijelova skupa
atomarni operandi - skupovi ili dijelovi skupa
operatori - radnje koje se na njima obavljaju
Relacijska algebra definira operacije nad relacijama:
Operandi su relacije
Rezultati su relacije
Operatori su:
Prilagoeni matematiki operatori nad skupovima
Dodatni specijalni relacijski operatori

Null vrijednosti
Nul vrijednost predstavlja nepostojeu vrijednost nekog atributa
Ona znai:
Da je vrijednost nepoznata ili nepostojea
Da vrijednost nije primjenjiva za odreeni atribut
RELACIJSKI OPERATORI (po Coddu)
restrikcija i projekcija = unarne operacije (samo jedan operand)
restrikcija (selekcija) - izdvajanje n-torki (redova) po nekom uvjetu
sadri samo jedan operand relaciju iz koje selektiramo
projekcija - izdvajanje atributa (stupaca) po nekom uvjetu
projekcija je unarna operacija, sadri samo jedan operand relaciju iz
koje izdvajamo stupce
unija - spoj dvije unijski kompaktibilnih (isti stupanj (broj) i domene (vrste) atributa)
tablica u novu (bez moguih duplikata n-torki)
Unijska kompatibilnost relacija: Za relacije kaemo da su meusobno unijski
kompatibilne ako su istog stupnja i ako su domene odgovarajuih atributa jednake
moemo rei da unijski kompatibilne relacije imaju semantiki jednake atribute
presjek - samo duplikati n-torki iz dvije unijski kompaktibilne tablice (sve tri, kao i
kod unije, imaju isti broj atributa)
zahtijeva unijsku kompatibilnost relacija operanada
razlika - samo one n-torke iz tablice1 kojih nema u tablici2 (isti broj atributa)
zahtijeva unijsku kompatibilnost relacija operanada
produkt (Kartezijev) - jedna n-torka iz tablice3 sadri n-torku iz tablice1 zasebno
spojenu sa svim n-torkama tablice2 (broj atributa u tablici rijeenja je znai: n3=
n1*n2
nekontrolirana upotreba produkta moe vrlo lako prijei kapacitet eksterne memorije
raunala!
dijeljenje - tablica1 dijeli se sa tablicom2, znai u tablici3 su sve n-torke ili dijelovi ntorki (atributi) kojih nema u tablici2 (neovisno o broju atributa, koji kod razlike mora
biti jednak da bi se operacija provela)
spoj - to je relacijska operacija kod koje se spajaju n-torke dviju relacija prema
razliitim kriterijima
Varijante spoja
Inner join - unutranji spoj
Outer join - vanjski spoj
Left outer join lijevi vanjski spoj
Right outer join desni vanjski spoj
14. Spoj, vrste spojeva, primjeri
inner (unutranji) spajanje n-torki dvije tablice po theta-operatoru (usporedbi
"zajednikog atributa") koji se u novoj tablici ponavlja samo jednom (T1=a1,b1
T2=b1,c1 -> T3=a1,b1,c1)
to je relacijska operacija kod koje se spajaju sve one n-torke dviju relacija T1 I T2 kod
kojih je vrijednost zajednikog atributa ista
Theta operator Odreuje uvjet spajanja (=,<>,<=)
outer (vanjski) - isto kao unutranji, ali kod spajanja svi atributi koji nemaju para u

jednoj ili drugoj tablici se ipak upisuju u tablicu3 s null-vrijednostima (T1=b1,c1


T2=b1,d1 -> T3=a1,b1,null
left outer (lijevi vanjski) - u tablici3 atributi iz tablice1 koji nemaju para uparuju se s
null-vrijednostima
to je relacijska operacija kod koje se spajaju sve one n-torke dviju relacija r1 i r2 kod
kojih je vrijednost zajednikog atributa ista, te sve one n-torke relacije r1 koje nemaju
para u r2 spojene sa null vrijednostima
right outer (desni vanjski) - u tablici3 atributi iz tablice 2 koji nemaju para uparuju
se s null-vrijednostima
to je relacijska operacija kod koje se spajaju sve one n-torke dviju relacija r1 i r2 kod
kojih je vrijednost zajednikog atributa ista, te sve one n-torke relacije r2 koje nemaju
para u r1 spojene sa null vrijednostima
IZVAN PITANJA
Operacije u BP je mogue izvoditi:
Na neposredan nain
Trigeri (okidai):
predstavljaju sposobnost/mogunost BP da u sluaju kad se dogodi neki predvieni dogaaj
povezan sa operacijama nad podacima, tada BP autonomno (samostalno bez utjecaja
korisnika) pokree odreene unaprijed definirane transakcije
Vanost okidaa je u tome to oni daju mehanizme za osiguranje sloenih pravila integriteta
proceduralnim putem
Okidai ne samo da mogu zabraniti odreene transakcije koje dovode do naruavanja
integriteta podataka - oni mogu i izvesti transakcije koje su nune zbog nastalih ili oekivanih
stanja/operacija
Relacijski jezik- Querrry---By---Exampllle
_ temelj se na prikazu kostura relacija
_ neproceduralno je orijentiran
_ korisnik unosi specifikaciju
_ rezultat je neposredan upit (query)
Access podrava QBE preko alata : Query

You might also like