BAZE PODATAKA - vggs.rsvggs.rs/geodetski_odsek/predmeti_ispiti/informati... · MODELI BAZE PODATAKA...

Preview:

Citation preview

BAZE PODATAKAMODELOVANJE

PROSTOR PROBLEMA(IZ REALNOG SVETA)

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

PROGRAMI

ZA

IZVEŠTAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

PROGRAMI

ZA

ODRŽAVANJE

PROGRAMI

ZA

IZVEŠTAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Ulaz

Informacioni sistem

PROGRAMI

ZA

ODRŽAVANJE

PROGRAMI

ZA

IZVEŠTAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Izlaz 1

Izlaz 2

Ulaz

Informacioni sistem

Cilj svakog modela je da učini da je: Izlaz1 ~ Izlaz2

PROGRAMI

ZA

ODRŽAVANJE

PROGRAMI

ZA

IZVEŠTAVANJE

BAZA

PODATAKA

PROSTOR PROBLEMA(IZ REALNOG SVETA)

Izlaz 1

Izlaz 2

Ulaz

Informacioni sistem

Konceptualno modelovanje

Modelovane je postupak kojim se prostor problemma iz realnog

sveta svodi na određeni broj podataka

Podaci su apstrakcija realnosti - sredstva za kodiranje osobina

objekata iz realnog sveta

Izbor (selekcija) – izdvajanje bitnih objekata

Dodeljivanje imena (za svaki ojekat, vezu, atribut)

Klasifikacija – nehomogenih objekata u homogene klase i tipove

entita

Konceptualni model sadrži:

– Strukturu podataka – statički opis stanja realnog sveta

(podaci i odnosi između podataka)

– Operacije – izražavaju dinamiku iz realnog sveta

– Ograničenja (constraints) – Ograničenja u modelu koja su

posledica ograničenja iz realnog sveta

Model ne propisuje fizički oblik u kome se podaci čuvaju

Šema je opis nekog skupa podataka, korišćenjem datog

modela podataka

Entiteti

Pod entitetom se podrazumeva sve što se može jednoznačno

odrediti, identifikovati i razlikovati

Svaki entitet ima svoje osobine – atribute

Domen atributa je skup svih mogućih vrednosti koje atribut

može poprimiti (slično tipu promenljive u programiranju)

Primarni ključ je jedan ili više atributa čija vrednost

jednoznačno određuje primerak entiteta

Instance

Primer entiteta:

STUDENT, FAKULTET, RADNIK, PROIZVOD, RAČUNAR, ISPIT, UPIS, itd.

Instance su pojedinačna pojavljivanja entiteta

– Instanca – Zapis u tabeli

– Npr. u entitetu STUDENT instanca je konkretan student

• Pešić Marina, Beograd, Jurija Gagarina 68, 11070 Novi Beograd

• Jeftić Darko, Mitra Rakića 19, 11050 Beograd

• ....

Atributi

Atribut je zajednička osobina koju poseduju svi entiteti jedne klase

Svojstva objekta se opisuju preko atributa

Primer:

– Mogući atributi entiteta STUDENT:

• BrInd, Ime, Prezime, Visoka škola, Smer, Adresa, Status, ...

Broj atributa nije fiksan

Relevantne atribute definiše kompetentna osoba

– U skladu sa željenim zahtevima (informacijama)

– Od toga zavisi upotrebljivost dobijenih informacija

Atributi svih entiteta poprimaju određene vrednosti

Primer: Vrednosti atributa entiteta STUDENT (jedan entitet iz klase

studenata):

– BrInd: 2/07

– Ime: Marina

– Prezime: Pešić

– Visoka škola: Građevinsko-geodetska

– Smer: geodezija-geomatika

– Adresa: Jurija Gagarina 68, 11070 Novi Beograd

Domen – skup dozvoljenih vrednosti koje može da poprimi jedan

atribut

Obeležavanje domena:

– Dom(Nastavnik)={saradnik, predavač, viši predavač, profesor}

Premalo atributa:

– verodostojnost mala,

– model jednostavan za predstavljanje i analizu,

– ograničen je broj upotrebljivih informacija

Previše atributa:

– verodostojnost odlična,

– kompleksnost velika,

– manipulacija podacima teško izvodljiva,

– dobijaju se konfuzne informacije.

Zadatak projektanta: prepoznavanje prave mere pri modelovanju (izbor

relevantnih atributa)

Prosti i složeni atributi

– Prosti atributi:

• Visina (cm),

• Ocena,

• Smer itd.

– Složeni atributi:

• Adresa (Ulica, Broj, Mesto, ...)

• DatumRođenja (Dan, Mesec, Godina)

Entiteti i atributi

Nekada je teško razlikovati entitete od atributa

Npr: Adresa može biti entitet i atribut

Ako je adresa entitet:

– Prednost – višestruka upotreba istog koda

– Mana – Različite su potrebe za adresama (kupci,

zaposleni, dobavljači itd.)

• Može se desiti da se neprikladne forme za unos

primenjuju na svim mestima – npr. nisu iste potrebe

kod kupaca i zaposlenih

Domen

Domen je uži pojam od tipa podataka

Ulica i Prezime su tipa Text,

– ali su im domeni potpuno različiti

Npr: Naučno zvanje Text,

– ali taj tekst može biti iz skupa {docent, vanredni profesor, redovni profesor}

Za definiciju domena nisu dovoljna ograničenja

– Npr: Poštanski broj je petocifren, ali nisu svi petocifreni brojevi poštanski

brojevi

Domeni mogu biti kompatibilni po tipu

– Moguće je porediti atribute definisane u tim domenima

• Npr: Relacije: Zaposleni i Prodavci

– Iz uslova: Id_Zaposleni=Id_Prodavci može se dobiti

nova informacija

Ne može se vršiti kombinovanja relacija po atributima koji

nemaju iste domene – dobija se besmislena informacija

– Većina DBMS-ova to omogućava

Veze između entiteta

Veze, odnosi - relationship

U realnom sistemu objekti nisu međusobno izolovani

– objekti se nalaze u međusobnoj interakciji

Npr. veza “studenti polažu predmet”

– Između entiteta Student i Predmet postoji veza

Student_Polaže_Predmet koja se može nazvati Ispit

Entiteti između kojih postoji veza zovu se učesnici veze

(participants)

Internet i Web:

– Entiteti: reči, dokumenta, datoteke, hostovi, serveri itd.

– Veze:

• reči se nalaze u dokumentima,

• dokument hyperveza dokument

• Reči u datoteci, datoteke raspoložive na hostovima, serverima

Učestvovanje nekog entiteta u vezi može biti

potpuno i delimično

– Potpuno – zapisi takvog entiteta mogu da postoje samo ako

postoje i u drugom (slab entitet)

– Delimično – zapisi takvog entiteta mogu da postoje bez obzira

na drugi entitet (jak entitet)

Npr. Za IS fakulteta:

– Zaposleni – jak (nezavisan) entitet

– Profesor – slab (zavisni) entitet

Npr. Za IS prodavnice:

– Dobavljač – jak entitet

– Artikal – slab entitet

Zbog toga što Artikal učestvuje potpuno u ovoj vezi:

– Nije moguće promeniti dobavljača jednog artikla, sve dok se

ne izbrišu i svi artikli koje on dostavlja

Npr. Za IS prodavnice:

– Kupac – jak entitet

– Porudžbina – slab entitet

Kupac učestvuje delimično, a porudžbina potpuno.

Posledica je:

– Podaci o kupcu se mogu uneti i pre nego što taj kupac pošalje

prvu porudžbinu

Veze između entiteta

Odnosi između objekata posmatranja prikazuju se najčešće

primenom logike skupova i preslikavanja njihovih elemenata.

Odnosi između entiteta:

• JEDAN – prema – JEDAN (1:1)

• JEDAN – prema – VIŠE (1:N)

• VIŠE – prema – VIŠE (N:M)

– Drugi način prikazivanja:

1:1;1:*; *:*

1:1, 1:∞, ∞:∞

Veza JEDAN – prema – JEDAN (1:1)

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

VISOKA ŠKOLA

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Veza JEDAN – prema – JEDAN (1:1)

VŠ1

VŠ2

VŠ3

...

VŠN

D1

D2

D3

...

DN

VISOKA ŠKOLA DIREKTOR

Odnos između entiteta VISOKA ŠKOLA i DIREKTOR

Veza JEDAN – prema – VIŠE (1:N)

Odnos između entiteta STUDENT i ADRESA

Veza JEDAN – prema – VIŠE (1:N)

STUDENT

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza JEDAN – prema – VIŠE (1:N)

A1

A2

A3

...

AN

STUDENT ADRESA

Odnos između entiteta STUDENT i ADRESA

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

Veza VIŠE – prema – VIŠE (N:M)

STUDENT

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

Veza VIŠE – prema – VIŠE (N:M)

P1

P2

P3

...

PM

STUDENT PROFESOR

Odnos između entiteta STUDENT i PROFESOR

S2

S3

S4

S5

...

SN-1

SN

S1

MODELI BAZE PODATAKA

Različiti modeli BP:

– Tabele (flat file, spreadsheet)

– Hijerarhijski model

– Mrežni model

– Relacioni model

– Objektni model

Zajednički cilj različitih modela:

– Olakšati smeštanje podataka i dobijanje informacija

Osnovne razlike kod modela:

– Načini uspostavljanja veza između relacija

– Ograničenja nad podacima i vezama

Tabele Tabele - svi podaci u jednoj tabeli

– Prednost:

• Jednostavno, za mali broj zapisa i atributa

– Mane:

• Redudansa

• Teškoće kod promena

• Anomalije ažuriranja

• Višak podataka u jednoj tabeli

Tabele Tabele - svi podaci u jednoj tabeli

– Prednost:

• Jednostavno, za mali broj zapisa i atributa

– Mane:

• Redudansa

• Teškoće kod promena

• Anomalije ažuriranja

• Višak podataka u jednoj tabeli

BrIndeksa Prezime Ime Status NazivUl KcBroj Grad Opstina PostKod Drzava

1/07 Ivanković Slavica student je na budžetu Karađorđeva 20 Obrenovac Obrenovac 11500 Srbija

2/07 Pešić Marina student je na budžetu Jurija Gagarina 68 Beograd Novi Beograd 11070 Srbija

3/07 Mašulović Marija student je na budžetu Radoja Krstića 12 Trsteniki Trstenik 37240 Srbija

Hijerarhijski model

Najstariji model

Kao nasleđe i danas se koristi

Podaci su smešteni u seriju slogova (zapisa)

Da bi se uspostavila veza između slogova, hijerarhijski model

uspostavlja relaciju: roditelj – naslednik (preslikavanje 1:N)

Roditelji i naslednici su povezani vezama koje se nazivaju

pokazivači

Roditelj ima listu pokazivača za svakog od svojih naslednika

Hijerarhijski model

Najstariji model

Kao nasleđe i danas se koristi

Podaci su smešteni u seriju slogova (zapisa)

Da bi se uspostavila veza između slogova, hijerarhijski model

uspostavlja relaciju: roditelj – naslednik (preslikavanje 1:N)

Roditelji i naslednici su povezani vezama koje se nazivaju

pokazivači

Roditelj ima listu pokazivača za svakog od svojih naslednika

DIREKTOR

ZAMENIK ZAMENIK ZAMENIK

Od Od Od Od Od Od Od Od

R

R R

R

R

R R

R

R R

R R

R

R

R

R

R

R

Hijerarhijski model:

– Nedovoljan za kompleksnije veze

– Lako se transformiše u linearnu listu

Direktor (ime=Petar,tel=011/234567, itd.)

Zamenik (ime=Marko,...)

Odeljenje (naziv=Plan, ...)

Radnik (ime=Milan,...)

Radnik (ime=Zoran,...)

Radnik (ime=Pavle,...)

Odeljenje (naziv=Analiza, ...)

Radnik (ime=Marija, ...)

Radnik (ime=Jovan, ...)

Odeljenje ...........

Zamenik ..........

............

Nedostaci:

– Ne može se dodati slog u tabelu naslednika dok se ne uključi

u roditeljsku tabelu

– Ne podržava veze tipa N:M

– Za kompleksnije veze moraju se pojaviti duplikati

(komplikovano održavanje)

Hijerarhijski modelPrimer

Mrežni model

Omogućava da se višestruki skupovi podataka koriste

zajedno putem pokazivača (ili pointera)

Neke kolone sadrže pokazivače na druge tabele umesto

samih podataka.

Tabele su povezane pokazivačima i mogu se posmatrati

kao mrežna struktura.

Omogućava veze tipa N:M

Mane: kompleksanost i težina upotrebe

Mrežni model

Omogućava da se višestruki skupovi podataka koriste

zajedno putem pokazivača (ili pointera)

Neke kolone sadrže pokazivače na druge tabele umesto

samih podataka.

Tabele su povezane pokazivačima i mogu se posmatrati

kao mrežna struktura.

Omogućava veze tipa N:M

Mane: kompleksanost i težina upotrebe

DIREKTOR

ZAMENIK ZAMENIK ZAMENIK

Od Od Od Od Od Od Od Od

R

R R

R

R

R R

R

R R

R R

R

R

R

R

R

R

Mrežni modelPrimer

Relacioni model

Osnovne karakteristike:

– Sve se predstavlja relacijama (tabelama)

– Zasniva se na strogoj matematičkoj teoriji

– Minimalna redudansa podataka

– Jednostavno ažuriranje podataka

– Izbegnute su anomalije ažuriranja

– Redosled kolona i redova ne utiče na informacioni sadržaj tabele

– Ne mogu da egzistiraju dva identična reda (rekorda) u jednoj tabeli

– Svaki red se može jednoznačno odrediti (postoji primarni ključ)

Relacioni modelPrimer

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

Tabela, sa svojim atributima, je osnovni objekat

relacione baze podataka

Veze između objekata realnog sveta – formira se klasa veza

Student

Predmet

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

Tabela, sa svojim atributima, je osnovni objekat

relacione baze podataka

Veze između objekata realnog sveta – formira se klasa veza

Student

Predmet

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

Tabela, sa svojim atributima, je osnovni objekat

relacione baze podataka

Veze između objekata realnog sveta – formira se klasa veza

Student

Predmet

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

Tabela, sa svojim atributima, je osnovni objekat

relacione baze podataka

Veze između objekata realnog sveta – formira se klasa veza

Student

Predmet

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

Tabela, sa svojim atributima, je osnovni objekat

relacione baze podataka

Veze između objekata realnog sveta – formira se klasa veza

Student

Predmet

Klasa veza može da ima svoje atribute

BrIndeksa Prezime Ime

1/07 Ivanković Slavica

2/07 Pešić Marina

3/07 Mašulović Marija

4/07 Rasković Marko

5/07 Ašćerić Mirijana

ID Predmet

1 Praktična geodezija 1

2 Matematika 1

3 Fizika

4 Geodetsko snimanje detalja

5 Matematika 2

6 Informatika za inženjere

7 Tehnički engleski

8 Praktična geodezija 2

9 Merna nesigurnost

10

6

8

7

10

10

9

86

67

10

Ocena

Student

Predmet

Student (BrIndeksa, Prezime, Ime)

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Primarni ključ

relacije Predmet

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Primarni ključ

relacije Predmet

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Student

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Primarni ključ

relacije Predmet

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Student

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Primarni ključ

relacije Predmet

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Student

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Predmet

Student (BrIndeksa, Prezime, Ime) Predmet (ID, Predmet)

Ocena (BrIndeksa, ID, Ocena)

Primarni ključ

relacije Student

Primarni ključ

relacije Predmet

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Student

Spoljni ključ

relacije Ocena

koji pokazuje na

primarni ključ

relacije Predmet

Relacioni model

Suština relacionog modela je da se i klase objekata i klase veza

između objekata predstavljaju na jedinstven način, tj. preko

tabela.

Nije od značaja gde i kako su smeštene tabele

RBP se sastoji iz više tabela. Tabele su povezane ključevima

Informacija iz RBP se dobija postavljanjem upita

Objektni model

Zahtevi nove generacije aplikacija

–česta upotreba kompleksnih podataka

•tradicionalno smeštenih izvan baze podataka

–datoteke operativnog sistema

–specijalizovane strukture podataka

–zahtev za proširenjem SUBP-ova konceptom

kompleksnog tipa

–novi domeni primene

•CAM/CAD sistemi

•geoinformacioni sistemi

•multimedijalni sistemi

Rešenje

–upotreba objektno-orijentisanih koncepata u bazama

podataka

Baze podataka sa OO konceptima podržavaju

–laku integraciju sa OO programskim jezicima

–kompleksne tipove

•za smeštanje velikih podataka

–slike, video, veliki tekstualni podaci itd.

–duge transakcije

–specifikaciju strukture i operacija nad podacima

Baze podataka sa OO konceptima

–Objektno-orijentisane baze podataka

•nastale pod uticajem objektno-orijentisanih programskih

jezika

–jezici prošireni funkcionalnostima SUBP-ova

•alternativa relacionim bazama

•kompleksni tipovi igraju glavnu ulogu

–Objektno-relacione baze podataka

•proširenje relacionih baza

•predstavljaju objedinjenje relacione i objektne paradigme

Osnovna OO pravila

–svaki entitet iz realnog sveta modeluje se objektom

•svaki objekat poseduje jedinstveni identifikator

–svaki objekat je instanca i okarakterisan je atributima i

metodama

•skup atributa je osnova strukture objekta

–vrednost atributa može predstavljati objekat ili skup

objekata

•skup metoda definiše ponašanje

–vrednosti atributa definišu stanje objekta

•promena ili pristup stanju vrši se slanjem poruka

–pozivanjem metoda nad objektom

Osnovna OO pravila

–objekti koji zadovoljavaju istu osobinu (predikat) grupišu

se u jednu klasu

•svaki objekat je instanca klase kojoj pripada

•svi objekti klase zadovoljavaju istu strukturu i

ponašanje, definisano klasom

–klasa se može definisati specijalizacijom jedne ili više

postojećih klasa

•potklasa nasleđuje atribute i metode natklase

Objektni modelPrimer

RDBMS db4o

Konceptualnao modelovanje

Hijerarhijska BP Mrežna BP

Relaciona BP

Konceptualno modelovanje ER model

ER modelovanje ER modelovanje je logičko modelovanje (logical data modeling)

– Razlikuje se od fizičke realizacije baze podataka (physical

database design)

U logičkom modelovanju ne moraju se poznavati atributi entiteta,

primarni niti spoljašnji ključevi

– Jednostavno se linijama spajaju entiteti

– Npr. STUDENTI su u vezi sa PREDMETOM, a još uvek ne znamo

atribute ova dva entiteta

ER modelovanje ima sledeći koncept:

– Od generalnog ka pojedinačnom

Pogodno je u ranim fazama modelovanja

– Mnogo toga se menja

Spisak studenata ER dijagram

Student

Spisak studenata ER dijagram

Student

Spisak studenata ER dijagram

Adresa

Student

Status

Spisak studenata ER dijagram

Adresa

Student

Predmet

Status

Spisak studenata ER dijagram

Adresa

Student zivi na

Predmet

Status

Spisak studenata ER dijagram

Adresa

Student zivi na

Predmet

Status

1

Spisak studenata ER dijagram

Adresa

Student zivi na

Predmet

Status

N 1

Spisak studenata ER dijagram

Adresa

Student zivi na

ima

Predmet

Status

N 1

Spisak studenata ER dijagram

Adresa

Student zivi na

ima

Predmet

Status

N 1

1

Spisak studenata ER dijagram

Adresa

Student zivi na

ima

Predmet

Status

N 1

N

1

Spisak studenata ER dijagram

Adresa

Student zivi na

slusa ima

Predmet

Status

N 1

N

1

Spisak studenata ER dijagram

Adresa

Student zivi na

slusa ima

Predmet

Status

N 1

N

M

1

Spisak studenata ER dijagram

Adresa

Student zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

Prezime

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Status

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Status

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

KcBroj

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

ID

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

ID

Status

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

ID

Status

StOpis

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

ID ID

Status

StOpis

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Student

ID

BrIndeksa

PrezimeSrIme

Ime

Pol

Adresa

zivi na

ID

NazivUl

Grad

slusa ima

Predmet

Status

ID

Predmet

ID

Status

StOpis

N 1

N N

M

1

Grupa

Status

Sufiks

KcBroj

Opstina

PostKod

Drzava

Spisak studenata ER dijagram

Adresa

Fizička realizacija relacionog modela u nekom

od CASE softvera

(Computer Aided Software Design)