Upload
others
View
21
Download
0
Embed Size (px)
Citation preview
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.2
Neformalni pogled na relacioni model
• Teorijska osnova relacioni model podataka.[Codd 1970g.]
• Intuitivno, relacioni model
• predstavlja jedan nacin gledanja napodatke
• sadrži pravila za predstavljanje podataka(preko tabela) i pravila za rad sa timpodacima (izdvajanje, spajanje, ....)
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.3
Aspekti relacionog modela
• Aspekt strukture: svi podaci u bazi se korisnikuprikazuju iskljucivo u obliku tabela
• Aspekt integriteta: tabele zadovoljavajuizvesna ogranicenja (primarni i spoljašnjikljucevi, ...)
• Aspekt obrade: operatori koji su naraspolaganju korisnicima za obradu tabela sutakvi da izvode tabele iz tabela.
1 relacioni racun2 relaciona algebra
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.4
Primer relacione baze
Baza studenata, predmeta i ispita - sadržajtabele dosijea
Indeks Ime Prezime Datum_upisa Datum_rodenja Mesto_rodenja20140021 Milos Peric 06.07.2014 20.01.1995 Beograd20140022 Marijana Savkovic 05.07.2014 11.03.1995 Kraljevo20130023 Sanja Terzic 04.07.2013 09.11.1994 Beograd20130024 Nikola Vukovic 04.07.2013 17.09.199420140025 Marijana Savkovic 06.07.2014 04.02.1995 Kraljevo20140026 Zorica Miladinovic 06.07.2014 08.10.1995 Vranje20130027 Milena Stankovic
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.5
Primer relacione baze
Baza studenata, predmeta i ispita - sadržaj(dela) tabele ispita
Indeks Id_predmeta Godina_roka Oznaka_roka Ocena Datum_ispita Bodovi20140021 1001 2015 jan 9 20.01.2015 8120140022 1001 2015 jan 8 20.01.2015 7520130023 1001 2015 jan 8 20.01.2015 7620130024 1001 2015 jan 10 20.01.2015 10020140025 1001 2015 jan 6 20.01.2015 5520140026 1001 2015 jan 5 20.01.2015 2520130027 1001 2015 jan 8 20.01.2015 7620140021 2001 2015 jan 10 25.01.2015 9820140022 2001 2015 jan 9 25.01.2015 8620140025 2001 2015 jan 5 25.01.2015 020140021 3001 2015 jan 7 27.01.2015 6720130023 3001 2015 jan 5 27.01.2015 3020140026 1001 2015 feb 7 10.02.2015 6820140025 2001 2015 feb 6 10.02.2015 5520140026 2001 2015 feb 7 10.02.2015 6520140021 1021 2015 apr 7 03.04.2015 6320130023 1021 2015 apr 10 03.04.2015 9520140022 1021 2015 apr 5 03.04.201520130024 1021 2015 apr 620140026 1021 2015 jan 7
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.6
Primer relacionih operatora - restrikcija
Restrikcija (selekcija) izdvaja pojedinacne redoveiz tabele DOSIJE WHEREDatum_rodenja>’28.02.1995’
Indeks Ime Prezime Datum_rodenja Mesto_rodenja Datum_upisa20140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.201420140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.7
Primer relacionih operatora - projekcija
Projekcija izdvaja pojedinacne slogove iz tabeleDOSIJE over Indeks, Ime, Prezime
Indeks Ime Prezime20140021 Milos Peric20140022 Marijana Savkovic20130023 Sanja Terzic20130024 Nikola Vukovic20140025 Marijana Savkovic20140026 Zorica Miladinovic20130027 Milena Stankovic
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.8
Primer relacionih operatora - spajanje
Spajanje kombinuje dve tabele na osnovu zajednickih vrednosti u zajednickoj
koloni (u primeru je prikazano prirodno spajanje, deo rezultujuce tabele)
DOSIJE AND ISPIT OVER Indeks
Inde
ks
Ime
Pre
zim
e
Dat
um_r
oden
ja
Mes
to_r
oden
ja
Dat
um_u
pisa
Id_p
redm
eta
God
ina_
roka
Ozn
aka_
roka
Oce
na
Dat
um_i
spita
Bod
ovi
20140021 Milos Peric 20.01.1995 Beograd 06.07.2014 1001 2015 jan 9 20.01.2015 8120140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.2014 1001 2015 jan 8 20.01.2015 7520130023 Sanja Terzic 09.11.1994 Beograd 04.07.2013 1001 2015 jan 8 20.01.2015 7620130024 Nikola Vukovic 17.09.1994 04.07.2013 1001 2015 jan 10 20.01.2015 10020140025 Marijana Savkovic 04.02.1995 Kraljevo 06.07.2014 1001 2015 jan 6 20.01.2015 5520140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 1001 2015 jan 5 20.01.2015 2520130027 Milena Stankovic 1001 2015 jan 8 20.01.2015 7620140021 Milos Peric 20.01.1995 Beograd 06.07.2014 2001 2015 jan 10 25.01.2015 9820140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.2014 2001 2015 jan 9 25.01.2015 8620130023 Sanja Terzic 09.11.1994 Beograd 04.07.2013 2001 2015 jan 8 25.01.2015 7220130024 Nikola Vukovic 17.09.1994 04.07.2013 2001 2015 jan 7 25.01.2015 6320140025 Marijana Savkovic 04.02.1995 Kraljevo 06.07.2014 2001 2015 jan 5 25.01.2015 020140021 Milos Peric 20.01.1995 Beograd 06.07.2014 3001 2015 jan 7 27.01.2015 6720130023 Sanja Terzic 09.11.1994 Beograd 04.07.2013 3001 2015 jan 5 27.01.2015 3020130024 Nikola Vukovic 17.09.1994 04.07.2013 3001 2015 jan 6 28.01.2015 5920140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 3001 2015 jan 6 28.01.2015 5220140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 1001 2015 feb 7 10.02.2015 6820140025 Marijana Savkovic 04.02.1995 Kraljevo 06.07.2014 2001 2015 feb 6 10.02.2015 5520140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 2001 2015 feb 7 10.02.2015 6520140021 Milos Peric 20.01.1995 Beograd 06.07.2014 1021 2015 apr 7 03.04.2015 6320130023 Sanja Terzic 09.11.1994 Beograd 04.07.2013 1021 2015 apr 10 03.04.2015 9520140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.2014 1021 2015 apr 5 03.04.201520130024 Nikola Vukovic 17.09.1994 04.07.2013 1021 2015 apr 620140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 1021 2015 jan 720140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014 1021 2015 feb 7
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.9
Primer relacionih operatora - spajanje
Kod spajanja se u rezultujucoj tabeli• zajednicke vrednosti javljaju samo
jednom u redu• javljaju sve kombinacije uparenih
vrednosti (npr. 20140021 vrednost zaIndeks)
• ne javljaju se redovi sa vrednostimakoje se ne nalaze u obe tabele kojeucestvuju u spajanju
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.10
Karakteristike relacione baze
• Relacioni sistemi zahtevaju samo dase baza prikaže korisniku u oblikutabele (nacin smeštanja i cuvanja namedijumima nije specificiran)
• Informacioni princip: Celokupaninformacioni kontekst baze se prikazujena tacno jedan nacin kao eksplicitnevrednosti u pozicijama vrsta i kolonatabele
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.11
Karakteristike relacione baze - nastavak
Posledica Informacionog principa: nemapokazivaca koji medjusobno povezujutabele• pokazivaci mogu da postoje na
fizickom nivou• razlika u odnosu na nerelacione
modele gde su pokazivaci deostruktura koje se prikazuju korisnicima ikoje korisnik koristi u obradi
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.12
Efekat relacionih operatora
• Rezultat primene svakog od operatoraje tabela - osobina zatvorenjarelacionih sistema
• Rezultat primene operatora je istog tipakao i njegov argument =⇒ mogu da sepišu ugneždeni relacioni izrazi
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.13
Efekat relacionih operatora
• Sve operacije ce primenjuju na ceoskup istovremeno a ne samo napojedinacni red
• Rezultat operacije nije nikadapojedinacni red vec je uvek kompletnatabela koja sadrži skup redova
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.14
Formalni pogled na relacioni model
Relacioni model se sastoji od:• Otvorenog skupa skalarnih tipova (koji ukljucuje i tip
logickih vrednosti boolean)
• Generatora relacionih tipova i njihove odgovarajuceinterpretacije
• Mogucnosti definisanja relacionih promenljivih zagenerisane relacione tipove
• Operacije relacione dodele kojom se dodeljujurelacione vrednosti definisanim relacionim promenljivim
• Otvorenog skupa opštih relacionih operatora("relaciona algebra") za izvodjenje relacionih vrednosti izdrugih relacionih vrednosti
1 −→Relaciona algebra i relacioni racun2 −→Dodatni operatori relacione algebre
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.15
Terminologija
Codd je pri formulisanju principa relacionih bazauveo novu terminologiju koja se razlikovala odneodredjene terminologije tog vremena
Termin ZnacenjeRelacija matematicki termin za tabeluTorka red u tabeliAtribut kolona u tabeliKardinalnost broj torkiStepen broj atributaPrimarni kljuc atribut ili kombinacija atributa koja jedin-
stveno identifikuje tabeluDomen skup važecih vrednosti (tipova)
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.16
Terminologija
Indeks Ime Prezime Datum_rodenja Mesto_rodenja Datum_upisa20140021 Milos Peric 20.01.1995 Beograd 06.07.201420140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.201420130023 Sanja Terzic 09.11.1994 Beograd 04.07.201320130024 Nikola Vukovic 17.09.1994 04.07.201320140025 Marijana Savkovic 04.02.1995 Kraljevo 06.07.201420140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.201420130027 Milena Stankovic
Relacija je kompletna tabela (ime relacije DOSIJE)Torka je svaki red u tabeliAtributi tabele su Indeks,Ime,Prezime,Datum_rodenja,Mesto_rodenja,Datum_upisa
Kardinalnost tabele je 7 (tabela poseduje 7 torki)Stepen tabele je 6 (tabela ima 6 atributa)Primarni kljuc tabele je IndeksDomeni u tabeli su skup mogucih brojeva indeksa (INDEKS),
skup mogucih imena (IME), ...
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.17
Relacije i relacione promenljive
1 U definiciji baze studenata, predmeta iispita, DOSIJE i ISPIT su relacionepromenljive, odnosno promenljive cijesu vrednosti relacione vrednosti
2 Npr. neka DOSIJE ima tekucu vrednostiz koje treba da se izbriše red zastudenta sa brojem indeksa 20100027:
DELETE DOSIJE WHERE Indeks =Indeks(20100027);
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.18
Relacije i relacione promenljive
Stara vrednost relacione promenljive DOSIJE jezamenjena novom relacionom vrednošcu
Indeks Ime Prezime Datum_rodenja Mesto_rodenja Datum_upisa20140021 Milos Peric 20.01.1995 Beograd 06.07.201420140022 Marijana Savkovic 11.03.1995 Kraljevo 05.07.201420130023 Sanja Terzic 09.11.1994 Beograd 04.07.201320130024 Nikola Vukovic 17.09.1994 04.07.201320140025 Marijana Savkovic 04.02.1995 Kraljevo 06.07.201420140026 Zorica Miladinovic 08.10.1995 Vranje 06.07.2014
Operator brisanja je skracenica za relacioni operatordodeleDOSIJE := DOSIJE WHERE NOT (Indeks = Indeks(20130027));
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.19
Relacije i relacione promenljive
1 Terminologija• relvar = relaciona promenljiva• relacija = specificna relaciona vrednost
2 Skup otvorenih ... tipova znaci dakorisnik može da definiše svojesopstvene tipove
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.20
Optimizacija
1 Relacioni jezici su neproceduralni2 Za relacioni sistem cesto se kaze da
vrši automatsku ’navigaciju’ (nadsacuvanim podacima)
3 U nerelacionim sistemima korisnik jeodgovoran za ’navigaciju’
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.21
Automatska u odnosu na rucnu navigaciju
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.22
Optimizacija (nastavak)
Npr. za upit
(DOSIJE WHERE Indeks = Indeks(20100027) {Ime}
Rezultat se dobija
1 restrikcijom tekuce vrednost relvar-a DOSIJEna redove sa u kojima je broj indeksa jednak20100027
2 projekcijom dobijenih vrednosti na kolonu Ime
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.23
Optimizacija (nastavak)
Postoje bar dva nacina pristupa obrade ovog upita:
1 vršenjem fizickog skeniranja (sacuvanevrednosti) relvar-a DOSIJE dok se ne nadetraženi podatak
2 ako postoji indeks nad (sacuvanom verzijom)kolone Indeks (a obicno postoji jer je Indeksprimarni kljuc) tada se on koristi za direktanpristup traženim podacima
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.24
Optimizacija (nastavak)
Odluka kako vršiti automatsku navigaciju spada udomen komponente SUBP nazvane optimizator. Uopštem slucaju optimizator odredjuje strategiju naosnovu razmatranja:
• koji relvari-i su referencirani u zahtevu i kolikosu oni veliki
• koji indeksi postoje
• kako su podaci fizicki smešteni na disku
• ....
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.25
Katalog
• Katalog (’recnik’) se i sam sastoji od relvar-a=⇒ katalogu se pristupa na isti nacin kao idrugim relacionim promenljivim
• Informacije o samom katalogu se nalaze urelvar-ima iz kataloga
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.26
Osnovni relvar-i i pogledi
• Originalni relvar-i = osnovni relvar-i
• Njihove vrednosti = osnovne relacije
• Izvedene relacije = relacije koje nisu osnovneali mogu da se dobiju iz osnovnih putemrelacionih izraza
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.27
Osnovni relvar-i i pogledi (nastavak)
• Osnovni relvar-i moraju da imaju ime
• Relacione baze imaju mehanizam zaformiranje osnovnih relvar-a
• U SQL-u su osnovni relvar-i tabele. Njihovoformiranje se vrši naredbom
CREATE TABLE <ime_osnovnog_relvara> ...
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.28
Osnovni relvar-i i pogledi (nastavak)
• Relacioni sistemi podržavaju i imenovanerelvar-e koji su izvedene relacije - poglede
• Vrednost pogleda je (trenutni) rezultatizvršavanja odredjenog relacionog izraza kojise navodi pri formiranju pogleda
CREATE VIEW Studenti_iz_Kraljeva AS(DOSIJE WHERE Mesto_rodjenja=’Kraljevo’) {Indeks, Ime, Prezime}
Studenti_iz_KraljevaIndeks Ime Prezime20140022 Marijana Savkovic20140025 Marijana Savkovic
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.29
Osnovni relvar-i i pogledi (nastavak)
Nad pogledima mogu da se vrše operacije kao nadosnovnim tabelama(Studenti_iz_Kraljeva WHERE Indeks > 20140023){Ime, Prezime}
Ime Prezime
Marijana Savkovic
Pri izvršavanju sistem modifikuje upit u((DOSIJE WHERE Mesto_rodjenja=’Kraljevo’) {Indeks, Ime, Prezime})WHERE Indeks > 20100023){Ime, Prezime}
Odnosno uprošcava u (DOSIJE WHERE Mesto_rodjenja=’Kraljevo’
AND Indeks > 20100023){Ime, Prezime}
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.30
Osnovni relvar-i i pogledi (nastavak)
• Osnovni relvar-i predstavljaju podatke koji sufizicki smešteni u bazi podataka (’zaistapostoje’)
• Pogledi predstavljaju razlicit nacin gledanja na’realne podatke’ (ne postoje, virtualni relvar-i)
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.31
Transakcije
Transakcija je ’logicka jedinica posla’ kojaobicno ukljucuje više operacija nad bazom
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.32
Svojstva transakcije
1. Atomicnost: garantuje se da ce se izvršiti ilisve što se nalazi u transakciji ili ništa od toga
2. Trajnost: garantuje se da ce po uspešnomizvršavanju (COMMIT-a) sve promene ostatitrajno zapamcene u bazi, bez obzira na kasnijeeventualne padove sistema
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.33
Svojstva transakcije (nastavak)
3. Izolovanost: transakcije su medjusobnoizolovane u smislu da su efekti izvršavanjajedne transakcije nevidljivi za drugu transakcijusve do (uspešnog) izvršavanja COMMITnaredbe
4. Izvršavanje isprepletanog (u smislu pocetka ikraja) skupa transakcija ce obicno bitiserijalizovano u smislu da se dobija istirezultat kao da se te iste transakcije izvršavajujedna po jedna u unapred neodredjenomredosledu izvršavanja
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.34
Domeni
Domen = tip podataka• ugradjen (sistemski predefinisan)
• INTEGER• CHAR• ...
• korisnicki definisan• INDEKS• IME• GOD_RODJENJA• .....
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.35
Domeni (nastavak)
• Provera tipova. Stroga tipiziranost• Dosije.Indeks + Ispit.ocena −→ pogrešno!• Ispit.Godina_roka * Ispit.Ocena −→
ispravno!
• Definisanje novog tipaTYPE <ime tipa> <moguce reprezentacije>
• TYPE INDEKS REPREZENT(INTEGER);
• TYPE IME REPREZENT (CHAR);
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.36
Domeni - SQL podrška
• Naredbe
• CREATE DOMAIN• ALTER DOMAIN• DROP DOMAIN (RESTRICT, CASCADE)
• U DB2 ove naredbe ne postoje. Postoje
1 CREATE TYPE2 ALTER TYPE3 DROP TYPE
• Istovremeno se definišu i odgovarajucefunkcije i operatori poredjenja
• Nema stroge tipiziranosti ali postoji osnovnioblik provere tipova
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.37
Domeni - SQL podrška (nastavak)
SQL podržava osam relacionih domena
1 Brojevi (numbers)
2 Niske karaktera (character strings)
3 Niske bitova (bit strings)
4 Datumi (dates)
5 Vremena (times)
6 Kombinacija datuma i vremena (timestamps)
7 Intervali godina/mesec (year/month intervals)
8 Intervali dan/vreme (day/time intervals)
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.38
Relacije
Neka je dat skup od n tipova ili domena Ti(i=1,2,...,n), pri cemu ne moraju svi tipovi da budumedjusobno razliciti. R je relacija nad tim tipovimaako se sastoji od dva dela, zaglavlja i tela gde važi:
1 Zaglavlje je skup od n atributa oblika Ai : Tigde su Ai (koji svi moraju da budu razliciti)imena atributa relacije R, a Ti odgovarajucaimena tipova (i=1,2,...,n)
2 Telo je skup od m torki t gde je t skupkomponenti oblika Ai : vi u kojima je vi vrednosttipa Ti
m se naziva kardinalnost, a n stepen (arnost)relacije R
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.39
Osobine relacije
• Nema ponovljenih (duplih) torki
• Torke su neuredjene, od vrha ka dnu
• Atributi su neuredjeni, sa leva u desno
• Svaka torka sadrži tacno jednu vrednost zasvaki atribut. Za relaciju koja zadovoljava ovuosobinu se kaže da je normalizovana,odnosno da je u prvoj normalnoj formi.
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.40
Relacija = tabela?
Nisu jednake, jer
• Tabela moze da sadrži duplirane redove dokrelacija ne može da sadrži duplirane torke
• Redovi u tabeli su uredjeni u redosledu od vrhaka dnu, dok za relaciju to ne važi
• Kolone u tabeli su uredjene u redosledu sa levau desno, dok za relaciju to ne važi
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.41
Relacije i prazan skup
• Relacija koja ima prazan skup torki• neprazno zaglavlje• telo je prazno
• Relacija koja ima praznu torku• prazno zaglavlje• telo sa jednom torkom bez komponenti
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.42
Tipovi relacije
Definicija tipa relacije ima sledeci oblikRELATION {<lista atributa razdvojenih zarezima>}
atribut je uredjen par oblika<ime atributa> <ime tipa>
Primer:RELATION {Indeks INDEKS, Ime IME, Prezime PREZIME,
God_rodjenja GOD_RODJENJA, Mesto_rodjenja
MESTO_RODJENJA}
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.43
Atributi i tipovi podataka
• Svaki atribut ima neki tip• Svaki tip može da bude ugradjen ili
korisnicki definisan• Svaki tip može da bude atomski
(skalarni) ili ucauren (nije skalaran)• Atributi relacije mogu da budu
proizvoljnog tipa
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.44
Zašto nedostajuce vrednosti
U svakodnevnoj praksi se cesto javljaproblem nedostatka podataka:
• ’...datum rodjenja nepoznat...’
• ’...iz izborne jedinice XX nedostaju podaci...’
• ...
Potreba da se
• indikator o nedostatku vrednosti cuva u bazi
• na odgovarajuci nacin vrši obrada takvihpodataka
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.45
Zašto nedostajuce vrednosti (nastavak)
• Najcešci pristup prihvacen i u praksi jekorišcenje ’nedostajuce vrednosti’(NULL) odnosno trovalentne (3VL)logike
• Codd jer predlozio korišcenje4-valentne logike jer postoje dve vrstenedostajucih vrednosti:• vrednost je nepoznata• vrednost nije primenljiva, vrednost ne
postoji, ...
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.46
3VL logika
Tri vrednosti• Tacno• Netacno• Nepoznato (kod DATE-a UNK od
unknown)
Operatori: I, ILI, NE, MOŽDA (AND, OR,NOT, MAYBE)
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.47
3VL logika (nastavak)
AND t u f OR t u f NOTt t u f t t t t t fu u u f u t u u u uf f f f f t u f f t
Uvod u relacionebaze podatakaNeformalni pogled narelacioni model
Aspekti relacionog modela
Primer relacione baze
Primeri relacionihoperatora
Karakteristike relacionebaze
Efekat relacionih operatora
Formalni pogled narelacioni model
Terminologija
Relacije i relacionepromenljive
Optimizacija
Katalog
Osnovni relvar-i i pogledi
Transakcije
Domeni i relacijeDomeni
Relacije
Osobine relacije
Nedostajucevrednosti3VL logika
4.48
Operator MOŽDA
MAYBEt fu tf f
Operator je potreban npr.zbog ovakvih upita:Prikazati sve zaposlenekoji su možda bili, ali zakoje nije sasvimpouzdano da su bili,programeri rodjeni pre25. januara 1991. godinesa platom manjom od50.000 na dan30.09.2011.