Baze za test

Page 1

Baze podataka

01.11.2010

Prethodi deo sa predikatskim racunom Koje vrste baza podataka postoje, zašto su nam potrebne i kako ih možemo formirati i koristiti. Pod bazama podataka se podrazumeva uskladišten skup strukturisanih podataka koji se ponavljaju u najmanjoj mogućoj meri, kako bi se mogle istovremeno zadovoljiti potrebe različitih korisnika, na selektivan način u nekom realnom vremenu. Selektivnost – nisu svi podaci svima od istog značaja. Da bismo imali bazu podataka moramo imati istorodne skupove podataka. U sistemu datoteka je sve fiksirano i ak o želimo nešto izvan tog a to nećemo d ob iti. Za svaku datoteku se vezuje jedan ili više programa. Upravljanje podacima je otežano, greške se pojavljuju češće. Podaci su razdeljeni i često se ponavljaju (problem konzistentnosti podataka i velika redunantnost?!). Sistemi za upravljanje bazama podataka Baze podataka predstavljaju koherentnu i strukturiranu kolekciju podataka. Prednosti: Prikupljanje podataka i obrada podataka se standardizuju i uniformišu (svi podaci se mogu dobiti u obliku tabele). Moguća je naporedna kontrola valjanosti podataka (da li nešto iz nečega sledi). Različite obrade koriste iste podatke (omogućava da se nepotrebno ne ponavljaju podaci). Upiti se postavljaju formalnim jezikom, ne prirodnim. Nema unapred smišljenih odgovora. Možemo postavljati razna pitanja i program će dati odgovor. Podaci se tako strukturiraju da se vezuju za određene karakteristike. Kontrola podataka u najvećoj mogućoj meri. Baza podataka je konkretna realizacija, sa konkretnim podacima, koji su zabeleženi i strukturisani. Sistem za upravljanje bazama podataka omogućava omogućava softverski proizvod koji će omogućiti da se realizuje baza podataka. Sistem za upravljanje bazama podataka (program Access) omogućava:  Opisivanje, organizovanje i rukovođenje podacima na pomoćnim medijima  Pretraživanje, selekciju, modifikovanje podataka od strane korisnika.  Manipulaciju apstraktne reprezentacije podataka tako da korisnik može da radi

1


Baze podataka

08.11.2010.

Sistem za upravljanje bazama podataka je softverski proizvod zadužen za proizvodnju baze podataka. Ciljevi SUBP: 1. Fizička nezavisnost - SUBP treba da obezbedi fizičku nezavisnost podataka od logičkog zapisa. Ako dođe do promene u načinu zapisivanja podataka neće morati da se menja sistem. 2. logička nezavisnost podataka - Ona podrazumeva da je logička organizacija podataka takva, da su oni tako opisani, da ako dođe do promene neće zahtevati promenu programa. Ako dodamo kolonu nećemo morati da menjamo program. 3. rukovanje podacima (dodavanje, izbacivanje, pretraživanje...) 4. administriranje podataka - Na primer ako se dodaje neki novi podatak (boja autobusa), mora da postoji način da se prati ko je te promene unosio, koji je razlog, kada je to bilo i sl. To radi administrator baze podataka. 5. Efikasnost pristup podacima Meri se protok – broj transakcija koje se mogu obaviti (promena u bazi). Primer transakcije je promena plata zaposlenih za 10 %. Baza je u stabilnom stanju osim kad se vrše promene na njoj. Tada baza nije u stabilnom stanju. Koliko se takvih transacija može obaviti u jedinici vremena. Meri se i odziv – koliko korisnik čeka na informaciju. 6. Kontrolisana redundantnost - Smanjenje nepotrebnog ponavljanje podataka. Ponavljanjem se troši prostor, vreme, a može se desiti da nešto i zaboravimo i da baza nije više konzistentna. Osim ovoga SUBP trba da obezbedi sledeće zadatke baze podataka:  Bezbednost – podatke treba zaštititi od neovlašćenog pristupa. Mogu da postoje različiti nivoi zaštite. Ko sme da menja neke, a ko sve podatke.  Sigurnost- štiti podatke od kvarova, nestanka električne energije. Potrebno je da se automatski pravi rezervna kopija. Važno je sačuvati prethodno stabilno stanje baze (to je samo kod promene baza, kada su u nisu u stabilnom stanju dok ih menjamo).  Kohernetnost – da su podaci u skladu sa onim što treba da bude u bazi. Postavljaju se ograničenja- to su uslovi integriteta (npr u autobusu ne može biti 250 mesta).  Obezbediti istovremeni pristup.

2


Kao rezultat svih ovih zadataka SUBP mora da obezbedi 4 osnovne funkcije: 1. Funkcija koja obezbeđuje opis podataka – tome služi formalni jezik za definisanje podataka. 2. Funkcija koja obezbeđuje manipulaciju podataka (pretraživanje, ažuriranje). Takođe preko formalnog jezika. 3. Kontrola integriteta – baza uvek u koherentnom stanju 4. Upravljanje transakcijama i bezbednošću Projektovanje baze podataka Baza podataka ima komplikovanu strukturu. Projektovanje prolazi kroz sledeće faze: 1. Specifikacija baze podataka treba da opiše potrebe. Koje podatke i koje procese hoćemo da naša baza podržava. Iz realnog sveta treba da apstrahujemo ono što nas interesuje koji podaci i koji procesi. 2. Projektovanje, sa ciljem da se dobije konceptualna šema baze podataka. U ovoj fazi se sve ono što je specifikovano se prevodi na neki opšti opis baze podataka. Kada se dobije konceptualna šema prelazi se na 3. Transformaciju u logički model – Logički model baze podataka. Tu se koristi jezik za definiciju i manipulisanje bazama podataka. Konceptualna šema se prevodi u logičku šemu koristeči jezik./ Formalni jezik za prevođenje; sada se podaci specifikuju. 4. Fizičko projektovanje – Interna šema baze podataka. Rezultati transformacije se sada pretvaraju u konkretne strukture koje će na memoriji omogućiti beleženje informacija, a opis procedura će se pretvoriti u konkretne programe. Prve dve faze su nezavisne od SUBP (pre logičkog modela). Druge dve faze zavise od SUBP. Entitet veze ne zavisi od SUBP. Relacioni model zavisi od SUBP. Klijent – server arhitektura SUBP se zasniva na klijent-server arhitekturi. Mnoge baze podataka se zasnivaju na tome. Tu imamo jedan informatički sistem, korisnike tj. klijente (one koji traže) i server (one koji nude). Postoji više servera, ali i klijenata. Serveri su povezani u jednu mrežu i oni nude usluge klijentima.

Mreža može da povezuje više servera.

3


sumeđa

sumeđa

aplikacije

aplikacije

SUBP

SUBP

BP

BP

Mreža Klijent

sumeđa

aplikacije

SUBP

BP – konkretni podaci SUBP – vodi računa kako su podaci fizički zapisani i kako će ih pronaći APLIKACIJE- npr može da izvadi vozače za tekući mesec SUMEĐA – omogućava da ono što je program našao može da se vidi u mreži KLIJENT-putnik koji može da vidi sve u mreži

BP

4


Klijent pristupa preko interfejsa i aplikacija. Postoje razlicite raspodele funkcija (poslova). Najednostavnija je Razdeljena prezentacija Najkomplikovanija je Distribuirana aplikacija i raspodeljeni podaci (distribuirana aplikacija nad distribuiranim podacima?) Raspodeljivanje funkcija moze da izgleda ovako:

Klijent Razdeljena Udaljena Obrada prezentacija prezentacija udaljenih podataka

Radeljena Distribuirana Distribuir. baza podataka aplikacija, aplikacija (distribuirana) udaljeni raspodelje. podaci podaci

Prezentacija Prezentacija Prezentacija

Prezentacija

Prezentacija Prezentacij.

Obrada

Obrada

Obrada

Upravljanje Podacima

Deo podataka kod Klijenta, a deo kod Servera

Obrada Upravljanj. podacima

Svi podaci na Deo pod.na strani severa, strani klije. obrada podeljena deo na strani servera, obrad podeljena.

Prezentacija Obrada

Obrada

Upravljanje podacima

Upravljanje Upravljanje podacima podacima

Obrada Upravljanje podacima

Obrada

Upravljanje Upravlj. podacima podaci.

Server

5


Modeliranje podataka u smislu izrade konceptualne šeme -notacije za opis podataka -skup operacija koje će nad tim podacima obaviti Entitet veze ili objekat veza Šta je entitet (objekat)? Neka stvar koja ima određena svojstva po kojima se razlikuje od neke druge stvari (student, autobus, vozač...) a može i nešto apstraktno (ispit). Šta razlikuje entitete? Atributi (svojstva). Atributi entiteta student mogu biti: ime, prezime, br. indeksa i sl. - entitet student ime

-atributi

prezime

Atributi mogu biti prosti i složeni. Prosti ne mogu dalje da se razlažu. Ali na primer atribut adresa ili datum - može, i to je složeni atribut. adresa

zemlja

datum

godina

ulica mesto

Pošt.br

dan

mesec

Takođe, atributi mogu da budi izvedeni iz nekog drugog atributa. Na primer atribut starost je izveden iz datuma rođenja. To je dobro jer se taj podatak o starosti studenta uvek ažurira. Takav atribut se okruži isprekidanom linijom. Atributi za konkretne entitete imaju konkretnu vrednost.

starost

6


NULL ------ vrednost atributa je ništa,nema vrednost (nije relevantan, upisan). Atributi se dele i na identifikujuće i deskriptivne. Identifikujući je onaj čija vrednost jednoznačno određuje taj entitet (matični broj). prezime ime

Datum rođenja starost

student ulica adresa

Matič.br

Pošt.br mesto

zemlja

Identifikujući atribut je matični broj i on se uvek podvuče.

7


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.