You are on page 1of 14

Osnovi baze podataka 200

Pojam baza podataka


Baza podatka je nain organizovanja i pretraivanja uzajamno povezanih
podataka.
Baza podataka u uem smislu obuhvata podatke koji su u domenu
raunarskog sistema. (Podaci koji su registrovani na medijumima i po
potrebi se mogu unositi u centralni procesor i obraivati u raunaru).
Baza podataka nam pomae da organizujemo informacije u logikom
smislu da bi mogli brzo doi do eljenih podataka. Ona moe sadrati
podatke u raznim oblicima, od jednostavnog teksta (kao ime ili adresa) do
kompleksnih struktura koje ukljuuju sliku, zvuk i sl.
Podaci u bazi se mogu podeliti na:
1. ulazne podatke, opisuju transakcije1 realnog sistema
2. izlazni podaci, odnose se na poruke i izvetaje o stanju realnog
sistema
3. radni podaci, obuhvataju i ulazne i izlazne podatke

Podatak je registrovana injenica ili dogaaj (ut; beo; ceo; 1; F14; 354;
$10,50; Car Duan; itd.). To je, u stvari, injenica o nekom segmentu
realnog sveta koju treba uvati u elektronskom obliku na dui
vremenski period i koja ima znaenje za korisnike baze podataka.
Informacija je obraeni podatak. Za informaciju je bitno da bude jasna,
tana i pravovremena. Tako bi reenica: "Danas je naa firma
ostvarila promet u iznosu od $5000 sa zaradom od $320" bila
informacija, ako nas obavetava o neem to nismo znali.

Koncepcija baza podataka


Baza nije sluajan skup podataka, ve skup povezanih i struktuiranih
podataka i njihovih opisa.
Baza mora da obeazbedi razliite vrste informacija, razliitim korisnicima.
Na osnovu prethodno navedenog, osnovni koncept baza podataka je
koncept razliitih pogleda na podatke.
1

Pojam transakcije je objanjen u nastavku

Osnovi baze podataka 200


7
PRIMER 1. razliiti pogledi na podatke (Raspored asova)
Uenici jednog razreda u ukupnom rasporedu posmatraju samo termine u
kojima oni imaju asove kod svojih profesora. Profesor matematike npr. u
celokupnom rasporedu posmatra samo termine u kojima on ima asove
matematike u razliitim razredima.
Referenta za nastavu interesuje
ukupan raspored kako bi rasporedio razrede po uionicama i izbegao
eventualna preklapanja asova.
Koncept razliiti pogledi na iste podatke je bitan u situacijama kada
podatke
dele razliiti korisnici. Ovaj koncept je mogue realizovati
ostvarivanjem nezavisnosti izmeu logikog opisa (kako e se podaci
koristiti) i fizikog opisa (kako e podaci biti smeteni na magnetnim
medijumima). Nezavisnost izmeu logikog i fizikog opisa podataka
omoguavaju pogledi.

Model baze podataka

P1

P2

Eksterni model baze

Pn

Razliiti pogledi korisnika

Kako pojedinci koriste podatke


N1

Konceptualni model
(uopteni model)baze

Interni model baze

Kako svi koriste podatke

N2
Kako su podaci fiziki smeteni

medijumu
N1,N2 nivoi nezavisnosti, oznaavaju da promene na jednom nivou ne
utiu na promene drugog nivoa (logiki fiziki nivo). Logiki nivo je nivo
konceptulnog modela i eksternog modela baze, a fiziki nivo je interni
model baze.
Koncept korisnikih pogleda je bitan iz sledeih razloga:
1. Podaci se korisniku predstavljaju u obliku u kome su mu potrebni

Osnovi baze podataka 200


7
2. Svi podaci se uvaju od razliitih korisnika, ime se obezbeuje
integritet2 baze podataka i zatita podataka.
Osnovna svojstva baza podataka
Baza podataka je skup, odnosno velika koliina podataka. Nije pogreno
rei ni to da su baze integrisane datoteke.
Baze
1.
2.
3.
4.

podataka doprinose:
smanjenju redudanse podataka
nezavisnosti podataka
poveavaju pouzdanost podataka
poveavaju tanost podataka i obezbeuju integritet podataka

Osnovni pojmovi i definicije


Transakcija prilikom obrade podataka prevodi jedno valjano stanje u
drugo.
Primer Prenos novca sa jednog rauna na drugi raun
Ova transakcija podrazumeva skidanje novca sa jednog rauna i njegovo
prebacivanje na drugi raun. Transakcija nesme biti prekinuta jer e u
suprotnom novac nestati (commit i rollback transakcije).
Redudansa (ponavljanje podataka), u bazi ne postoje nepotrebni podaci.
U bazu se podaci unose samo jedanput i uvaju se na samo jednom
mestu.
Nezavisnost podataka, se mora obezbediti kako bi se realizovao
koncept
razliiti
pogledi
na
podatke.
Nezavisnost podataka
podrazumeva nezavisnost podataka od programa koji ih obrauje.
Pouzdanost podataka ostvaruje se kontrolom pristupa i ouvanjem
integriteta baze podataka.
Integritet baze podataka
Podrazumeva tanost i korektnost podataka, a u vezi sa izvravanjem
transakcija. Do naruavanja integriteta beze podataka dolazi u situacijama
istovremenog izvravanja vie transakcija.

Objanjenje integriteta baze podataka sledi u nastavku

Osnovi baze podataka 200


7

Sistem za upravljanje bazom


podataka
Sistem za upravljanje bazom podataka SUBP (Database
Menagment system - DBMS) je software uveden kao
veza izmeu korisnika (korisnikih programa, aplikacija) i
zapisa baze podataka na disku. Korisniki programi ne
pristupaju podacima direktno, ve komuniciraju s ovim
software-om (programom), preko grafikog interfejsa
bliskog korisniku. Obino kada se govori software za
bazu podataka, onda se misli upravo na DBMS. (Primeri
DBMS-ova, tj. razvojnih alata za BP su: Oracle, DB2,
MySQL, PostgreSQL, Ingres, MS-Sql, MS Access . . . )
SUBP je jedan od naina kako posmatramo bazu podataka.SUBP se obino
zasniva na nekom teorijskom modelu podataka. SUBP je softverski sistem
za uvanje i pretraivanje podataka.
Modeli podataka su specifine teorije pomou kojih se projektuje
konkretna baza podataka ili informacioni sistem.
Sistem je skup objekata(entiteta) koji su meusobno povezani. Objekti u
sistemu mogu biti fiziki objekti, koncepti ili dogaaji. Objekti se opisuju
preko svojstava (atributa). Slika 1.
Preko ulaza u sistem opisuje se dejstvo okoline na sistem, a odgovor
sistema na dejstvo (transformacija) se opisuje preko izlaza sistema.
Informacioni sistem treba da opisuje ponaanje realnog sistema.
Informacioni sistem je ustvari model realnog sistema. Informacioni sistem
u odnosu na realni sistem prikazan je na Slici 2.
Opte funkcije SUBP su:
1. Oporavak baze
2. Upravljanje pralelnim izvravanjem transakcija
3. Zatita podataka

Osnovi baze podataka 200


7

Obj
2

Obj
1

ulaz

izlaz
Obj
n

Obj
3

Slika1.SISTEM

Ulazi

Stanje
(transformacija)

Izlazi

REALNI SISTEM

Programi za
odravanje

Baza

Programi za
izvetavanje
INFORMACIONI SISTEM

Slika 2. ODNOS REALNOG SISTEMA I INFORMACIONOG SISTEMA

Osnovi baze podataka 200


7

Informacioni sistem (IS)


IS je model realnog sistema. On opisuje stanje i promene realnog sistema.
IS za opis realnog sistema koristi podatke. Ulaznim podacima se aurira
baza, koja prikazuje stanje sistema i na taj nain se menja njeno stanje, a
zatim se kao izlazi dobijaju eljeni izvetaji o realnom sistemu.
IS se predstavlja pomou skupa meusobno povezanih podataka
(modeli podataka) i toka podataka(model procesa), koji treba na najbolji
nain da predstave sistem.
Osnovni elemant IS je informacija. Informacija je mera za organizovanost
sistema. Informacija ukida ili smanjuje neodreenost sistema. Podatak je
registrovana injenica. Podaci slue za fiziko uobliavanje informacije.

Obrada

Podatak Informacija

Obrada podatka i stvaranje informacije


Cilj IS-a je: Dostaviti pravu informaciju u pravo vreme, na
pravo mesto, uz minimalne trokove.
Funkcije IS-a su: Prikupljanje, obrada, uvanje i dostava podataka i
informacija korisnicima.
IS se sastoji od: Hardware (komponente), Software (programi),
Lifeware (ljudi), Orgware (organiacija) i Netware (komunikacija).

Veza baza podataka i informacionog sistema


Baza podataka predstavlja osnovu svakog informacionog sistema. BP
predstavlja osnovne, stabilne, sporo izmenljive karakteristike sistema,
objekte u sistemu i njihove meusobne veze. Svi projekti IS se moraju
6

Osnovi baze podataka 200


7
bazirati na BP. Baza podataka prilikom projektovanja IS predstavlja model
stanja realnog sistema.

Osnovi baze podataka 200


7

Modeli baze podataka


Podaci su logiki organizirani po nekom modelu.
Model ini osnovu za osmiljavanje, definisanje i implementiranje
baze podataka.
Dananji DBMS podravaju tri osnovna modela:
Hijerarhijski model
Mreni model
Relacioni model
Hijerarhijski model zasnivaju se na hijerarhijskim strukturama
podataka koje imaju oblik stabla. Ova struktura ima nivoe, s tim da je
na prvom nivou osnovni ili koreni segment. Kada se iz ovakve strukture
brie nadreeni segment onda se sa njim briu i svi podreeni
segmenti. Osnovni nedostaci ove strukture su:
1. Nedostatak unoenja nije mogue uneti neki segment ukoliko nije
poznat njegov nadreeni segment;
2. Nedostatak brisanja brisanjem nadreenih segmenata se gube
podaci o podreenim segmentima;
3. Nedostatak auriranja u nekim sluajevima auriranje nekog
podatka zavisi od auriranja drugih podataka. Auriranje predstavlja
izmenu ili brisanje sadraja zapisa ili polja, ili upisivanje novog
zapisa.

Mreni model moe se predstaviti usmerenim grafom u kojem su


vorovi podaci, a lukovi meu vorovima definiu veze meu
podacima. Zasnivaju se na mrei podataka povezanih tako da ne
postoje ni osnovni ni podreeni segmenti. Mrena struktura sloenija
je od hijerarhijske i u praksi se baze podataka mogu prevesti iz
hijerarhijskog oblika u mreni i obrnuto. U takvoj strukturi ne postoje
nedostaci koje ima hijerarhijska struktura.

Osnovi baze podataka 200


7

Relacione baze podataka


Relacioni model je i danas popularan i osnova je velikog broja SUBP.
Relacioni model karakteriu:
1. jednostavna struktura predstavljanja
2. odreene tabele relacionog modela
matematike relacije

se

mogu

tretirati

kao

Relacioni model se zasniva na pojmu relacija iz teorije skupova. Za rad sa


podacima u relacionim bazama koriste se relaciona algebra i relacioni
raun. Poto su ovi jezici apstraktni i formalni u kontekstu baza podataka
koriste se jezici UPITA.
Pojam relacije i tabele
Uspostavljanje relacija izmeu podataka moe se pokazati na primeru
obavetavanja o prodaji avionskih karata. Podaci se mogu predstaviti
skupom PRODAJA_KARATA koji se sastoji iz ureenih trojki PUTNIK(p),
BR_LETA(n), DATUM(d), tako da je:
PRODAJA_KARATA=(p,n,d) relacija koja znai da je putniku(p) prodato
mesto na letu(n), za datum (d). Ova ureena trojka je skup. Odnosno
relacija PRODAJA_KARATA je skup (p,n,d).
Realacioni model ima dva koncepta RELACIJA I DOMEN.
RELACIJATABELA, ali u Relacionom modelu relacija je tabela.
Domen je skup vrednosti iz kojih podaci uzimaju vrednost, to su mogue
vrednosti podataka.

U tabelama postoji redosled, u relacijama nije bitan


U relacionom modelu, baza je skup tabela
Tabela ima naziv, to je
naziv relacije, odnosno
entiteta(objekta)
Podaci su atributi u relacionom modelu

klasa

Osnovi baze podataka 200


7

Kolone tabele su vrednosti atributa


Vrste tabele su n-torke relacije.

Da bi se izbegla redudantnost (ponavljanje podataka) u tabeli, svaki red


tabele mora imati identifikator, PRIMARNI KLJU, koji jedinstveno
identifikuje taj red.
Kada se primarni klju koristi za povezivanje sa drugom tabelom on
postaje SPOLJNI KLJU.
Relacioni model
Zasnovan na matematikom pojmu relacije. Podaci i veze meu podacima
se prikazuju preko dvodimenzionalnih tabela. Ukoliko red sadri n kolona,
onda je relacija n-tog stepena. Veina savremenih baza podataka slui se
ovim modelom.

TABELA - Kolekcija podataka organizovanih po vrstama i kolonama


POLJE - Jedna jedinica (ili kolona) informacije u tabeli . Primer: tabela
uenik moe da sadri polja pod nazivom lini_broj, ime,
prezime, odeljenje
ZAPIS (slog) - Skup svih polja za jednu vrstu tabele (jedan red u tabeli) .
Primer tabela uenik ima etiri ispunjena zapisa: jedan za uenika
sa imenom Ana Petrovi, drugi za Petar Arsi, i tako dalje.
UENIK (lini_broj, ime, prezime, odeljenje)
Podatak ispred zagrade je naziv relacije, podaci u zagradi su nazivi
atributa, podvueni podaci su kljuevi za identifikaciju redova.
Entitet predstavlja objekat posmatranja, koji se moe izdvojiti iz okoline i
opisati. (To je element o kome se memoriu informacije.)
Atribut predstavlja opis entiteta.
10

Osnovi baze podataka 200


7
Za opis konkretnog entiteta zapisuju se vrednosti obelja.
uenik (1020/96, Saa, Stamenkovi, III/1)
Uspostavljanje relacija izmeu podataka moe se pokazati na primeru
obavetavanja o prodaji avionskih karata. Podaci se mogu predstaviti
skupom PRODAJA_KARATA koji se sastoji iz ureenih trojki PUTNIK(p),
BR_LETA(n), DATUM(d), tako da je:
PRODAJA_KARATA=(p,n,d) relacija koja znai da je putniku(p) prodato
mesto na letu(n), za datum (d). Ova ureena trojka je skup. Odnosno
relacija PRODAJA_KARATA je skup (p,n,d).
Realacioni model ima dva koncepta RELACIJA I DOMEN.
Domen je skup vrednosti iz kojih podaci uzimaju vrednost, to su mogue
vrednosti podataka.
Relacija je veza izmeu dva ili vie entiteta.
Jedna baza se moe sastojati od jednog ili vie entiteta. Izmeu entiteta
mogu postojati odreene veze koje su ilustrovane u sledeim primerima i
mogu biti sledeih oblika:
Veza 1:1
1:1 je najprostiji oblik veze, a za primer se
moe uzeti veza RUKOVODI izmetu entiteta
RUKOVODILAC i SEKTOR, gde se vidi da
jedan rukovodilac moe rukovoditi samo
jednim sektorom, ali i obratno - jedan sektor
ima samo jednog rukovodioca.
Veza 1:n (n:1)
Ovo je najei tip veze, a da li je veza l:n ili n:l
zavisi od toga u kom smeru je posmatramo. Za
primer ovog tipa veze se moe uzeti veza
SEKTOR ZAPOLJAVA
RADNIKA, gde su
entiteti SEKTOR i
RADNIK u vezi l:n, jer u
jednom sektoru moe
biti zaposleno vie radnika.
Posmatrajui ovu istu vezu u suprotnom smeru
moemo uoiti vezu RADNIKRADI U SEKTORu,
gde vie radnika moe raditi u jednom sektoru.
11

Osnovi baze podataka 200


7
Veza n:n
Veza n:n je veza (vie prema vie) koja se u
modelima vrlo esto javlja, a ono to je za nju
specifcno je da takva kakva jeste - ne moe da se
direktno implementira u relacionom modelu baze
podataka, jer bi dovela do nemogunosti stroge
definicije.
Problem veze n:n izmeu dva entiteta se
prevazilazi "razbijanjem" ove veze na dve veze
tipa l:n, pa se tako, prikaana veza
RADNIK:PROJEKAT (n:n), deli na dve veze:
PROJEKAT:P_R (l:n) i P_R:RADNIK (n:l), gde je P_R
novi entitet (tabela u bazi) koji obezbeuje strogu kontrolu modela.

Pojam kljua relacije


Da bi se izbegla redudantnost (ponavljanje podataka) u tabeli, svaki red
tabele mora imati identifikator, PRIMARNI KLJU, koji jedinstveno
identifikuje taj red.
Kada se primarni klju koristi za povezivanje sa drugom tabelom on
postaje SPOLJNI KLJU.
Sutina relacionog modela je da sve n-torke u relaciji budu razliite. Da bi
ovaj uslov ostvarili potrebno je da postoji jedan atribut ili vie atributa
zajedno ije vrednosti jedinstveno identifikuju jednu n-torku relacije(to je
jedan red tabele). Atribut koji ispunjava ove uslove je kljuni atribut
relacije ili samo klju(primarni klju).
Primarni klju moe biti prost (1 atribut) ili sloen (grupa atributa).
Primer
UENIK(ifu, ime, adresa); (prost klju)
PREDMET(ifpr, naziv); (prost klju)
OCENA(ifu, ifpr, ocena); (sloen klju)
Da bi neki atribut bio kandidat za klju relacije, odnosno postao klju
relacije potrebno je da vae sledei uslovi:
Uslov jedinstvenosti, ne postoje bilo koje dve n-torke sa istom
vrednou k
Osobina neredudantnosti, ako se bilo koji atribut izostavi iz k, gubi
se osobina jedinstvenosti.
Spoljni klju
Spoljni klju je atribut ili grupa atributa u relaciji R1 koji u njoj nije
primarni klju, ali je primarni klju neke druge relacije baze podataka.
12

Osnovi baze podataka 200


7
Vrednost spoljnog kljua koristi se za povezivanje sa vrednou primarnog
kljua u odgovarajuoj realaciji R2.

ema relacione baze


Pojam eme relacione beze podataka i sama relaciona baza podataka se
razlikuju. ema relacione baze podataka definie strukturu baze. Za
ueniki informacioni sistem npr. Relacioni model baze podataka bi se
mogao predstaviti na sledei nain:
UENIK(ifu, ime, adresa, ifsm); (ifu-primarni klju-prost, ifsm-spoljni
klju)
PREDMET(ifpr,nazivpr,brasova);
OCENA(ifpr,ifu, ocena); (ifpr,ifu,-primarni-sloen klju)
SMER(ifsm, nazivsm, ifnast);
NASTAVNIK(ifnast,imenast,ifpr);
U ovom sistemu koji se odnosi na uenike, kao objekti pojavljuju se:

Uenik objekat, sa atributima-ifu,ime, adresa


Predmet-objekat, sa atributima ifpr, nazivpr, brasova
Ocena-objekat,sa atributom ocena
Smer-objekat, sa atributima ifsm,nazivsm
Nasatavnik-objekat, sa atributima - ifnast, imenast

Veze izmeu objekata se ostvaruju preko atributa, odnosno kljueva i


spoljnih kljueva
Spoljni klju

Vrednost atributa ifsm u relaciji uenik pokazuje koji smer je uenik


izabrao, pri emu se predpostavlja da uenik moe da izabere samo
jedan smer

Vrednost atributa ifnast u relaciji smer prikazuje nastavnika koji je


rukovodilac na tom smeru(nastavnik moe da bude rukovodilac na
samo jednom smeru).

Vrednost atributa ifpr u relaciji nastavnik pokazuje koji predmet


nastavnik predaje, pretpostavka je da nastavnik predaje samo jedan
predmet.

ema relacione baze podataka


Sama relaciona baza podataka predstavlja skup tabela ije su strukture
opisane u emi baze u kojoj se uvaju podaci o pomenutim objektima
13

Osnovi baze podataka 200


7
Primer
UENIK
ifu
01
02
03
04

Ime
Duan
Maja
Ana
Darko

Adresa
Beogradsk
a1
Nika 3
Savska 5
Sarajevska
7

ifSm
001
002
002
001

PREDMET
ifP
r
000
1
000
2
000
3

NazivPr
Informatik
a
Matemati
ka
Engleski

SMER
Brasov
a
3
6
3

ifS
m
001
002

NazivSme
ra
Prirodni
Drutveni

ifNast
00001
00002

OCENA
ifU
01
01
03
02

ifPr
0001
0002
0001
0003

Ocena
5
4
3
5

NASTAVNIK

Relacije u nekoj bazi se mogu podeliti na bazne i izvedene. Izvedena


relacija (pogled) je relacija koja se moe izvesti iz skupa datih baznih i
izvedenih relacija, preko operacija koje se definiu nad relacijama.
Npr moe se definisati izvedena relacija
DOBRI _UENICI(ifU, ImeU, NazivSm, NazivPr, Ocena)
u ovoj relaciji svi navedeni uenici su oni koji iz predmeta koje sluaju
imaju ocene vee ili jednake 4. Bazna relacija je relacija koja se ne moe
izvesti iz ostalih relacija baze podataka.

14

You might also like