08.03.2015 Views

Ceo rad - PDF (1.3 MB)

Ceo rad - PDF (1.3 MB)

Ceo rad - PDF (1.3 MB)

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7. PROBLEM IZBORA INDEKSA<br />

Problem izbora indeksa (Index selection problem - ISP) je od suštinske<br />

važnosti pri dizajniranju baza podataka. Potrebno je izabrati neke od mogućih<br />

indeksa, tako da njihovim kreiranjem i kasnijim korišćenjem, minimiziramo<br />

vreme odziva sistema za upravljanje bazom podataka. Detaljan opis problema i<br />

analiza svih aspekata njegovog uticaja na <strong>rad</strong> samog sistema za upravljanje<br />

bazom podataka izlazi izvan okvira ovog <strong>rad</strong>a. Zbog toga ćemo u ovom<br />

poglavlju dati samo najosnovnije informacije o samom problemu i osnovnim<br />

aspektima njegovog rešavanja u okviru kombinatorne optimizacije, a detaljnije o<br />

njegovoj primeni na baze podataka se može naći u <strong>rad</strong>ovima [Fin88] i [Cap95a].<br />

Dokaz da ISP pripada klasi NP-kompletnih problema je detaljno opisan u<br />

[Com78].<br />

7.1 Formulacija problema<br />

Neka je N = {1, 2, ..., n} skup svih indeksa, P = {1, 2, ..., p} skup svih korisnih<br />

konfiguracija sastavljenih od datih indeksa, i M = {1, 2, ..., m} skup svih upita<br />

neke baze podataka. Za postavljanje nekog indeksa j ∈ N potrebno je utrošiti<br />

određeno vreme f j > 0. Ukoliko su postavljeni svi indeksi u nekoj konfiguraciji<br />

k ∈P, tada se za izvršavanje upita i ∈ M može uštedeti vreme g ik ≥ 0. U praksi<br />

je najčešće za veliki broj parova (i, k) ušteda g ik = 0, što se može objasniti time<br />

da određena konfiguracija ima uticaja samo na neke upite iz skupa M.<br />

Potrebno je postaviti neke od indeksa, tako da ukupno vreme izvršavanja<br />

svih upita sistema za upravljanje bazom podataka bude minimalno, odnosno da<br />

ukupna ušteda vremena bude maksimalna. Problem se matematički može<br />

iskazati pomoću formula (7.1) - (7.3) koje detaljnije opisuju sve uslove koje<br />

treba rešenje da ispunjava:<br />

⎛<br />

⎞<br />

max ⎜∑∑<br />

gik<br />

⋅xik<br />

−∑ f<br />

j<br />

⋅y<br />

⎟<br />

j<br />

(7.1)<br />

⎝ i∈M k∈P<br />

j∈N<br />

⎠<br />

uz uslove<br />

∑ x ik<br />

≤ 1 ∀i ∈ M (7.2)<br />

k∈P<br />

x ik , y j ∈ {0,1} ∀i ∈ M, ∀j ∈ N, ∀k ∈ P (7.3)<br />

Rešenje je zadato preko sledećih promenljivih, čiji detaljniji opis možemo videti<br />

u (7.4):<br />

• y jj označava da li je indeks j postavljen;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!