|
Ciljevi koji se nastoje postići korištenjem baza
podataka:
Fizička nezavisnost podataka. Razdvaja se logička definicija baze
od njene stvarne fizičke građe. Znači, ako se fizička građa promijeni to
neće zahtijevati promjene u postojećim aplikacijama.
Logička nezavisnost podataka. Razdvaja se globalna logička
definicija cijele baze podataka od lokalne logičke definicije za jednu
aplikaciju. Znači, ako se logička definicija promijeni to neće
zahtijevati promjene u postojećim aplikacijama. Lokalna logička
definicija obično se svodi na izdvajanje samo nekih elemenata iz
globalne definicije, uz neke jednostavne transformacije tih elemenata.
Fleksibilnost pristupa podacima. U starijim mrežnim i
hijerarhijskim bazama, staze pristupanja podacima bile su unaprijed
definisane a danas se zahtijeva da korisnik može slobodno upravljati
podacima. Ovom zahtjevu odgovaraju jedino relacione baze.
Istovremeni pristup podacima. Baza mora omogućiti da veći broj
korisnika istovremeno koristi iste podatke. Pritom ti korisnici ne smiju
ometati jedan drugoga, te svaki od njih treba imati utisak da sam radi s
bazom.
Čuvanje integriteta. Nastoji se automatski sačuvati korektnost podataka, i to u situaciji kad postoje greške u
aplikacijama, te konfliktne istovremene aktivnosti korisnika.
Mogućnost oporavka nakon kvara. Mora postojati pouzdana zaštita
baze u slučaju kvara hardvera ili grešaka u radu sistemskog softvera.
Zaštita od neovlaštenog korištenja. Mora postojati mogućnost da
se korisnicima ograniče prava korištenja baze, dakle da se svakom
korisniku regulišu ovlaštenja šta on smije a šta ne smije raditi s
podacima.
Zadovoljavajuća brzina pristupa. Operacije s podacima moraju se
odvijati dovoljno brzo, u skladu s potrebama određene aplikacije. Na
brzinu pristupa može se uticati izborom pogodnih fizičkih struktura
podataka, te izborom pogodnih algoritama za pretraživanje.
Mogućnost podešavanja i kontrole. Velika baza zahtijeva stalnu
brigu: praćenje performansi, mijenjanje parametara u fizičkoj građi,
rutinsko pohranjivanje rezervnih kopija podataka, regulisanje ovlaštenja
korisnika. Administrator baze podataka je osoba zadužena
za popravku i podešavanje baze podataka. |
|
|
Arhitektura baze podataka: |
Povratak na vrh |
|
Fizički nivo
odnosi se na fizički prikaz i raspored podataka na jedinicama vanjske
memorije. To je aspekt kojeg vide samo sistemski programeri . Sam
fizički nivo može se dalje podijeliti na više podnivoa apstrakcije, od
sasvim konkretnih staza i cilindara na disku, do već donekle apstraktnih
pojmova datoteke i zapisa kakve susrećemo u klasičnim programskim
jezicima. Raspored pohranjivanja opisuje kako se elementi logičke
definicije baze preslikavaju na fizičke uređaje.
Globalni logički nivo odnosi se na logičku strukturu cijele baze. To je
aspekt kojeg vidi projektant baze odnosno njen administrator. Zapis
logičke definicije naziva se shema. Shema je
tekst ili dijagram koji definiše logičku strukturu baze, i u skladu je
sa zadanim
modelom. Dakle imenuju se i definišu svi tipovi podataka i veze medu tim
tipovima, u skladu s pravilima korištenog modela. Također, shema uvodi i
ograničenja kojim se čuva integritet podataka.
Lokalni logički nivo odnosi se na logičku predstavu o dijelu baze kojeg
koristi pojedina aplikacija. To je aspekt kojeg vidi korisnik ili
aplikacioni programer. Zapis jedne lokalne logičke definicije zove se
pogled (engleski view) ili pod-shema. To je tekst ili dijagram kojim se
imenuju i definišu svi lokalni tipovi podataka i veze medu tim tipovima,
opet u skladu s pravilima korištenog modela. Također, pogled zadaje
preslikavanje kojim se iz globalnih podataka i veza izvode lokalni. |
|
|
|
|
|
Jezici za
rad sa bazama podataka: |
Povratak na vrh |
|
Komunikacija korisnika odnosno aplikacionog programa
i DBMS-a odvija se pomoću posebnih jezika. Ti jezici tradicionalno se
dijele na sljedeće kategorije.
Jezik za opis podataka (Data Description Language - DDL). Ovim
jezikom definišemo podatke i veze među podacima, i to na logičkom nivou.
Naredbe DDL obično podsjećaju na naredbe za definisanje složenih tipova
podataka u jezicima poput COBOL, PL/I, C, Pascal.
Jezik za manipulisanje podacima (Data Manipulation Language DML).
Služi programeru za uspostavljanje veze između aplikacionog programa i
baze.
Jezik za postavljanje upita (Query Language - QL). Služi
neposrednom korisniku za interaktivno pretraživanje baze. To je jezik
koji podsjeća na govorni (engleski) jezik.
Ovakva podjela na tri jezika danas je već prilično zastarjela. Naime,
kod relacionih baza postoji tendencija da se sva tri jezika objedine u
jedan. Primjer takvog integrisanog jezika za relacione baze
je SQL: on služi za definisanje podataka, manipulisanje i pretraživanje.
Integrisani jezik se može koristiti interaktivno ili se on može pojavljivati uklopljen u aplikacione
programe.U današnje vrijeme, aplikacije se najčešće razvijaju u
standardnim objektno orijentisanim programskim jezicima (Java, C++,
...). Za interakcije s bazom koriste se unaprijed pripremljene klase
objekata koja je dovoljno produktivna zbog korištenja gotovih
klasa, a rezultirajući program se lako dotjeruje, uklapa u veće sisteme
ili prenosi s jedne baze na drugu.
|
SQL |
|
Životni
ciklus baze podataka: |
|
|
Uvođenje baze
podataka u neku firmu se može podijeliti u pet faza: analiza potreba,
modeliranje podataka, implementacija, testiranje i održavanje.
Analiza potreba
Proučavaju se tokovi informacija u firmi. Uočavaju se podaci koje treba
pohranjivati i veze među njima. Analiza potreba također treba obuhvatiti
analizu transakcija (operacija) koje će se obavljati nad bazom podataka,
budući da to može isto imati uticaja na sadržaj i konačni oblik baze.
Važno je procijeniti frekvenciju i opseg pojedinih transakcija, te
zahtjeve na performanse.Rezultat analize je dokument koji se zove specifikacija potreba.
Modeliranje podataka
Različiti pogledi na podatke, otkriveni u fazi analize, sintetizuju se u
jednu cjelinu - globalnu shemu. Precizno se utvrđuju tipovi podataka.
Shema se dalje dotjeruje (“normalizuje”) tako da zadovolji neke zahtjeve
kvaliteta. Implementacija
Na osnovu sheme i pod-shema, te uz pomoć dostupnog DBMS-a, fizički se
realizuje baza podataka na računaru. U DBMS-u obično postoje parametri
kojima se može uticati na fizičku organizaciju baze. Parametri se
podešavaju tako da se osigura efikasan rad najvažnijih transakcija.
Razvija se skup programa koji realizuju pojedine transakcije te
pokrivaju potrebe raznih aplikacija. Baza se inicijalno puni podacima. |
Povratak na vrh |
|
Testiranje
Korisnici rade s bazom i provjeravaju da li ona zadovoljava sve zahtjeve.
Nastoje se otkriti greške.U novije vrijeme, prije prave implementacije,
razvijaju i približni prototipovi baze podataka, te se oni pokazuju
korisnicima. Jeftinu izradu prototipova omogućuju jezici 4. generacije i
objektno-orijentisani jezici.
Održavanje
Odvija se u vrijeme kad je baza već ušla u redovnu upotrebu. Sastoji se
od sljedećeg: popravak grešaka koje nisu bile otkrivene u fazi
testiranja; uvođenje promjena zbog novih zahtjeva korisnika; podešavanje
parametara u DBMS u svrhu poboljšavanja performansi. Održavanje
zahtijeva da se stalno prati rad s bazom, i to tako da to praćenje ne
ometa korisnike. Administratoru baze podataka trebaju stajati na
raspolaganju odgovarajući alati (utility programi). |
|
|
Povratak na vrh |
|
|