130-143 Flashcards

1
Q

Šta je logički model baze podataka?

A

Logički model se spušta bliže izabranom implementacionom modelu. Uzima u obzir model
podataka koji će se upotrebljavati u implementaciji. Preduslov za započinjanje logičkog modeliranja
je odabiranje vrste baze podataka tj. modela podataka. Ulaz za postupak logičkog modeliranja je
konceptualni model, a izlaz je detaljan logički model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

U čemu je osnovna razlika između konceptualnog i logičkog
modela (i modeliranja)?

A

Konceptualan model je fokusiran na semantiku i odnose (uglavnom ne zavisi od vrste baza
podataka koja će biti upotrebljavana u implementaciji).
Logički model se spušta bliže izabranom implementacionom modelu (uzima u obzir model
podataka koji će se upotrebljavati u implementaciji).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Šta je očekivani rezultat logičkog modeliranja?

A

Izlaz je detaljan logički model – logička shema svih trajnih objekata (relacija), specifikacija svih
uslova i ograničenja, poznati su sci ključevi i odgovarajući surogat-atributi, kao i način
implementacije svih odnosa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Zašto nije dobro preskočiti logički model i praviti fizički model na
osnovu konceptualnog?

A

Takav pristup nosi rizik da se izgube neke od poželjnih karakteristika baze podataka – kompletnost,
integritet, fleksibilnost, efikasnost, upotrebljivost.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Kako teče postupak pravljenja logičkog modela?

A

Logički model se pravi iterativno. Prva iteracija se pravi na osnovu konceptualnog modela. Svaka
naredna se pravi menjanjem prethodne (flexing)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Na osnovu kojih kriterijuma se pristupa menjanju logičkog
modela?

A

Kriterijumi za menjanje su željene karakteristike:
* Da li model ispunjava funkcionalne zahteve?
* Da li model ispunjava nefunkcionalne zahteve?
* Da li je model kompletan?
* Da li model garantuje integritet podataka?
* Da li model pruža potrebnu fleksibilnost?
* Da li model omogućava efikasan rad?
* Da li je model upotrebljiv?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Kako se konceptualni model „prevodi“ u logički?

A

Prvi korak pri pravljenju logičkog modela je prevođenje konceptualnog modela u logički model.
Ako se oba modela izražavaju na ER-u ili UML-u, onda je prevođenje često transformisanje ili
dopunjavanje i nadograđivanje.
Logički model predstavljamo jezikom relacionog modela – entiteti se predstavljaju kao relacije;
složeni odnosi se predstavljaju kao relacije; jednostavni odnosi se predstavljaju stranim ključevima.
Postupak prevođenja počinje prevođenjem entiteta u relacije (usput mogu da se prevedu i neki
odnosi, 1-) - prepoznaje se primarni ključ i prevode se svi neključni atributi.
Zatim se nastavlja prevođenjem odnosa (najpre se prevode odnosi koji proizvode relacije, pa
preostali odnosi, i na kraju se doteruje prevod odnosa) – mora da se uzme u obzir priroda relacionog
modela. Različite vrste odnosa – binarni 1-
, binarni -, složeni odnosi, generalizacija

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Kako se u logičkom (relacionom) modelu modeliraju odnosi 0..1-
0..N, 1-0..N, 0..1-1, 0..1-0..1?

A

0..1 – 0..N. Uobičajeno za odnose: roditelj – potomak, celina – deo, ako celina može da bude bez
delova, ako deo može da bude bez celine. Čest slučaj kod agregacije. Relacija koja je deo – dodaje
se strani ključ u odnosu na celinu. Strani ključ može da bude nedefinisan.
1 – 0..N. Uobičajeno za odnose: roditelj – potomak, celina – deo, ako celina može da bude bez
delova, ako deo ne može da bude bez celine. Čest slučaj kod kompozicije. Relacija koja je deo -
dodaje se strani ključ u odnosu na celinu. Strani ključ ne sme da bude nedefinisan.
0..1 – 1. Uobičajeno za odnose: nadodređeni – podređeni, celina – opcioni deo. Relacija koja je
opcioni deo – dodaje se strani ključ u odnosu na celinu. Strani ključ ne sme da bude nedefinisan i
vrednost ključa mora da bude jedinstvena.
0..1 – 0..1. Uobičajeno za dvosmerne opcione odnose. Jednoj od relacija se dodaje strani ključ u
odnosu na drugu. Strani ključ može da bude nedefinisan i vrednost ključa mora da bude jedinstvena.
Alternativa, pravi se nova vezna relacija koja sadrži samo strane ključeve u odnosu na obe vezane
relacije; ključevi ne smeju da budu nedefinisani, svi atributi čine primarni ključ i vrednost svakog
od stranih ključeva mora da bude jedinstvena.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Kako se u logičkom (relacionom) modelu modeliraju odnosi 0..1-
1..N, 1-1..N, 1-1?

A

0..1 – 1..N. Uobičajeno za odnose agregacije sa obaveznim delovima. Relacija koja je deo – dodaje
se strani ključ u odnosu na celinu. Strani ključ može da bude nedefinisan. Dodaje se uslov baze
podataka – za svaki entitet A mora da postoji bar jedan odgovarajući entitet B. Alternativa, među
svim delovima jedne celine se prepoznaje jedan izabran; u relaciju A se dodaje strani ključ u odnosu
na B i time se celina povezuje sa izabranim delom; olakšano je proveravanje postojanja „bar
jednog“, ali je uvedena redundantnost.
1 – 1..N. Uobičajeno za odnose kompozicije sa obaveznim delovima. Relacija koja je deo – dodaje
se strani ključ u odnosu na celinu. Strani ključ ne sme da bude nedefinisan. Dodaje se uslov baze
podataka – za svaki entitet A mora da postoji bar jedan odgovarajući entitet B.
1-1. Uobičajeno za odnose obostranog ekskluzivnog pridruživanja. Jednoj od relacija se dodaje
strani ključ u odnosu na drugu. Strani ključ ne sme da bude nedefinisan. Vrednost ključa mora da
bude jedinstvena. Dodaje se uslov baze podataka – za svaki entitet B mora da postoji bar jedan
odgovarajući entitet A. Alternativa, u svakoj od relacija se dodaje strani ključ u odnosu na drugu;
atributi ključeva ne smeju da budu nedefinisani i dodaje se uslov kojim se proverava uzajamnost
veze.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Kako se u logičkom (relacionom) modelu modeliraju odnosi 0..N-
0..N, 0..N-1..N, 1..N-1..N?

A

0..N – 0..N. Uobičajeno za odnose asocijacije bez posebnih ograničenja. Pravi se nova vezna
relacija – sadrži samo strane ključeve u odnosu na obe vezane relacije; ključevi ne smeju da budu
nedefinisani; svi atributi čine primarni ključ.
0..N – 1..N. Uobičajeno za odnose: asocijacije slabih i jakih entiteta, agregacije kod kojih deo može
da čini više celina, ali ne može da postoji samostalno. Pravi se nova vezna relacija – sadrži samo
strane ključeve u odnosu na obe vezane relacije; ključevi ne smeju da budu nedefinisani; svi atributi
čine primarni ključ; dodaje se uslov baze podataka – za svaki entitet A mora da postoji bar jedan
odgovarajući entitet B. Alternativa, u A se dodaje strani ključ prema izabranom B.
1..N – 1..N. Uobičajeno za odnose agregacije kod kojih deo može da čini više celina, ali ne može da
postoji samostalno; celina ne može da postoji bez delova. Pravi se nova vezna relacija – sadrži samo
strane ključeve u odnosu na obe vezane relacije; ključevi ne smeju da budu nedefinisani; svi atributi
čine primarni ključ; dodaje se uslov baze podataka – za svaki entitet A mora da postoji bar jedan
odgovarajući entitet B, i obrnuto. Alternativa, i u A i u B se dodaju strani ključevi prema izabranim
delovima/celinama.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Kako se u logičkom (relacionom) modelu modeliraju binarni
ciklični odnosi?

A

1-1. Bilo da su opcioni ili ne, predstavljaju se dodatnim atributima stranog ključa. Ako je opcioni,
sme da bude NULL.
1-*. Kod ovog odnosa strani ključ se uvodi na strani N.
-. Predstavlja se novom relacijom, kao i obični binarni odnosi -

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Kako se u logičkom (relacionom) modelu modeliraju odnosi sa
više učesnika?

A

1-1-1. Nova relacija sa stranim ključevima. Zavisnosti se uređuju dopuštanjem NULL i
jedinstvenim ključevima.
1-1-. Nova relacija sa stranim ključevima. Zavisnosti se uređuju dopuštanjem NULL i
jedinstvenim ključevima.
1-
-. Nova relacija sa stranim ključevima. Zavisnosti se uređuju izborom primarnog ključa.
--
. Nova relacija sa stranim ključevima.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Na koje se sve načine u logičkom (relacionom) modelu može
predstaviti hijerarhijski odnos (generalizacija, specijalizacija…)?

A

Generalizacija – cela hijerarhija u jednu relaciju; svaki entitet u posebnu relaciju; svaki entitet-list u
posebnu relaciju, ali tako da uključi sve nasleđene atribute.
Agregacija – svodi se na obične odnose, obično 1-*.
Odnosi sa više od 3 učesnika – slično kao odnosi sa 3 učesnika; mora više da se vodi računa o
funkcionalnim zavisnostima.
Slabi entiteti – obično ne zahteva dodatno postupanje; prevođenje odnosa sa jakim entitetima rešava
problem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly