dr suzana marković, dipl. ing. el. [email protected]

49
Baze podataka Dr Suzana Marković, dipl. ing. el. [email protected]

Upload: others

Post on 03-Oct-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Microsoft PowerPoint - 05_Baze podataka.ppt - Compatibility [email protected]
Sadraj
Baze podataka – definicija Zadaci baze podataka ivotni vek BP Model objekti veze Relacioni model
Kolekcije Sakupljaju se knjige, raunari, slike, novii, pesme, adrese, automobili, recepti, kolekcije kolekcija ili bilo kakvi skupovi stvari koje se mogu povezati. Znai, ako su objekti na neki nain povezani, ine kolekciju. Primer: Telefonski imenik: nai broj telefona na osnovu imena, a obrnuto? Kako pronai neki dragocen primerak iz vaše kolekcije, za koji niste više sigurni da li ga imate ili nemate?
Razliite forme
Elektronski podaci: tekst, video i audio zapisi, brojevi Knjige: kolekcija tekstova i slika, biblioteke Kolekcija filmova sa glumcima i anrovima Datoteke organizovane u direktorijume Sportisti i sportovi na Olimpijadi Uzorci krvi za medicinske laboratorije
Pojam baze podataka
Baza podataka je skup meusobno povezanih podataka koji se uvaju zajedno i meu kojima ima samo onoliko ponavljanja koliko je neophodno. Bazu podataka ine povezani podaci i skup
programa za pristup tim podacima. Baza podataka je skup povezanih podataka i svega
onog što je neophodno za njihovo odravanje i korišenje. Baza podataka je najsavršeniji vid informacionog
sistema.
Podsistem postupaka logika odravanja i korišenja sistema
Podsistem podataka uvanje podataka i elementarni postupci pristupa
Baza podataka
Baza podataka je integrisani skup podataka o nekom sistemu organizovan prema potrebama korisnika i elementarni skup postupaka za njihovo odravanje i korišenje. Skup podataka pripremljen tako da se moe jednostavno koristiti, tj. pregledavati, pretraivati, sortirati, reati, itd., ali i menjati (brisati).
Zadaci baze podataka organizacija prema objektima i odnosima koji
postoje u sistemu na koji se baza podataka odnosi; organizacija prema potrebama korisnika:
podrazumeva i mogunost definisanja izvedenih zapisa sa podacima;
integrisanost i kontrolisana redundansa: krajnji cilj integrisanosti je minimalna redundansa (višestruko ponavljanje) podataka; meutim, ponekad svesno elimo da ponavljamo odreene podatke radi breg rada sa bazom podataka;
sigurnost: podrazumeva efikasnu kontrolu pristupa podacima, u smislu ko moe da pristupi bazi podataka, kojim podacima i šta moe da radi sa tim podacima;
Zadaci baze podataka
integritet: podrazumeva automatski oporavak od nasilnih prekida u radu koji dovode do tzv. nekonzistentnih stanja usled delimino izvršenih auriranja (unosa, izmene ili brisanja) podataka;
import podataka: baza podataka se esto uvodi kao zamena za neki stariji informacioni sistem, i tada mora postojati mogunost preuzimanja tih podataka;
eksport podataka: esto se javlja potreba da se postojea baza podataka zameni nekom još savremenijom bazom podataka, i tada mora postojati mogunost predaje podataka bazi podataka na koju se prelazi;
Zadaci baze podataka
performanse: baza podataka mora da obezbeuje maksimalni uinak u smislu najviše brzine rada uz najmanje zauzee raunarskih resursa;
ekonominost: odnos uinak-cena treba da je što nii (baze podataka su poele masovno da se uvode u upotrebu onda kada su postale ekonominije od tradicionalnih informacionih sistema);
standardizacija: standardni (dogovoreni) nain opisa organizacije baze podataka i operacija nad bazom podataka obezbeuje maksimalnu nezavisnost i trajnost korisnikih programa za rad sa bazom podataka u odnosu na promenu baze podataka.
Relacioni i objektni model
Relacioni model je teorijski zasnovao Edgar F. Codd krajem 60- tih godina. Veina današnjih DBMS koristi relacioni model. U relacionom modelu baza podataka se sastoji od
skupa pravougaonih tablica ili relacija. Svaka tabela ima ime po kojem se razlikuje od
ostalih tabela u BP. Objektna orijentacija je pristup u kome se neki sistem organizuje kao kolekcija meusobno povezanih objekata koji saraujui ostvaruju postavljene ciljeve. svaki realni entitet predstavljen je jednim objektom
u BP
Osnovni pojmovi Baza podataka je skup
meusobno povezanih podataka na disku. Ti podaci su na raspolaganju korisnicima za pregledanje, pretraivanje, brisanje, ispravljanje itd.
Sistem za upravljanje bazom podataka (Database Menagment system - DBMS) je softver koji upravlja radom korisnika (korisnikih programa, aplikacija) i zapisa baze podataka na disku.
Korisniki programi ne pristupaju podacima direktno, ve komuniciraju s ovim softverom (programom).
Osnovni pojmovi Baza podataka sastoje se od:
Bita, organizovanih u bajtove, koji mogu da ine stringove itd.
Polja (fields) – niz bajtova koji reprezentuje informaciju Rekorda (records) - niz polja koji zajedno opisuju jedan
“entitet” Datoteka (files) – niz rekorda koji opisuju razliite
entitete Baze podataka tipino sadre više relevantnih datoteka
Metadata omoguavaju dizajnerima i korisnicima baza podataka da razumeju koji podaci postoje u bazi i šta oni znae.
Tabele - razbijanje informacija na manje jedinine podatke,
Kolone (atributi), Redovi (zapisi)
Karakteristike relacionih BP
Podaci su organizovani u redove i kolone, a skup takvih podataka je relacija (tabela) Sve vrednosti su skalarne – u jednom polju se moe nai samo jedna vrednost Ne mogu da postoje dupli zapisi Sve operacije se obavljaju nad relacijama (tabelama) a rezultat operacija je opet relacija (tabela)
Koncept RBP Tabela 1 i Tabela 2 “dele”
atribut 3 Tabela 2 i Tabela 3 “dele”
atribut 7
ivotni vek BP
Svaka baza podataka ima svoj ivotni vek, poetak kada je projektovana, pa do njene implementacije i odravanja.
5 faza: Analiza potreba Projektovanje - modeliranje podataka Implementacija Testiranje Odravanje
Osnovni koncepti MOV-a
Sistem se najopštije moe definisati kao skup entiteta i njihovih meusobnih veza. Entitet (objekat) je objekat realnog sistema koji se u njemu lako identifikuje. Predstavlja ili neki fiziki objekat, koncept ili
dogaaj realnog sistema. Entiteti su povezani odgovarajuim vezama. Veza je asocijacija izmeu dva ili više entiteta.
Objekat moe biti povezan sam sa sobom (unarna veza)
Objekti se opisuju atributima.
Osnovni koncepti MOV-a
Veze u modelu opisuju nain povezivanja jednog, dva (binarna veza) ili više objekata Svaka binarna veza definiše dva preslikavanja Preslikavanja definišu uloge objekata u vezi. Atributi (osobine) entiteta ili veza opisuju neke njihove karakteristike. Atribut uzima vrednost iz skupa moguih vrednosti (domen) Npr. godina_studija moe uzeti vrednost iz skupa 1,
2, 3, 4, 5; semestar vrednosti iz skupa 1-10; ocena iz skupa 5-10; matini broj iz skupa 13.-to cifarnih brojeva,…itd.
O1 O2
O2 (DG,GG) O1
Radnik (1,1) Radi
(GG,GG):(N,M)
Radnik
Entitet je objekat, pojam, stanje i sl. o kome se prikupljaju, memorišu, obrauju i prezentuju informacije. Entitet po svojoj prirodi moe biti razliit
Deo okruenja (lan kolektiva, nastavnik, radnik, student, aparat, zgrada, artikal, vozilo ...)
Apstraktni pojam (neka mera npr. visina, neije zvanje npr. titula, boja, ...)
Dogaaj (ispit, postupak upisa studenata npr. Status_upisa,...)
Asocijacija (student_predmet, predmet_profesor, ..., fakultet_profesor, autor_knjiga)
Entiteti
Veze izmeu entiteta
U realnom sistemu objekti nisu meusobno izolovani, nego se nalaze u meusobnoj interakciji Odnosi izmeu objekata posmatranja prikazuju se naješe primenom logike skupova i preslikavanja njihovih elemenata. Funkcionalnost veze izmeu lanova entiteta moe biti: 1–prema–1 (ili 1:1), 1–prema–više (ili 1:N) više–prema–više (ili N:M)
Entiteti GRAÐANIN i POSLANIK
Funkcionalnost veze je je 1:1: Jedan graanin ne moe biti dvostruki poslanik, niti
poslanik moe biti dva puta graanin. Funkcionalnost veze je glasao za je N:1
više lanova entiteta GRAÐANIN dalo svoj glas za jednog lana entiteta POSLANIK.
Entiteti STUDENT i PREDMET Funkcionalnost veze sluša je N:M jer je jedan predmet
sluša više studenata, a takoe jedan student sluša više predmeta.
Veze
Primer 1 Preduzee je podeljeno na sektore. Prate se podaci o radnicima (mat.broj, ime i prezime) i
sektorima (id, naziv). Vae sledea pravila:
Svaki sektor mora da ima jednog rukovodioca. Neki od radnika su rukovodioci u sektorima. Nacrtati deo ER dijagrama koji opisuje vezu ‘rukovodjenje
sektorom’.
Primer 2
Na univerzitetu u toku upisnog roka prate se podaci o prijavljenim kandidatima (mat.broj, ime i prezime) po fakultetima (id, naziv). Vae sledea pravila: Svaki kandidat moe da se prijavi na više razliitih
fakulteta. Na svakom od fakulteta moe biti više prijavljenih
kandidata, ali takoe je mogue da se niko nije prijavio.
Primer 3
Na fakultetu se za potrebe izrade nastavnog plana vode podaci o predmetima (šifra, naziv, broj_bodova) po katedrama (id, naziv). Vae sledea pravila:
Svaki predmet moe pripadati jednoj i samo jednoj katedri.
U okviru svake katedre moe biti više predmeta, ali je mogue da još nema definisanih predmeta na katedri.
Primer 4
Prate se opštine (id, naziv, brojStanovnika) i njihova podela po okruzima (šifra, naziv). Vae sledea pravila: Svaka opština pripada jednom i samo jednom
okrugu. U okviru svakog okruga moe biti jedna ili više
opština.
Primer 5
U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i njihovi udbenici (id, autor, naslov). Vae sledea pravila: predmet moe i ne mora da ima izdat udbenik; za jedan predmet moe postojati i više predvienih
udbenika; udbenik se koristi u nastavi za jedan ili više
predmeta.
U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i nastavnici(id,ime, prezime) koji ih predaju. Vae sledea pravila: svaki predmet moe predavati jedan ili više
nastavnika, svaki nastavnik predaje jedan ili više predmeta.
Primer 7
U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i studenti(mat.broj, ime, prezime) koji ih polau. Vae sledea pravila: svaki predmet poloi ni jedan ili više studenata, svaki student moe poloiti ni jedan ili više
predmeta.
Sloene veze
Unarna veza povezuje jedan tip entiteta s tim istim tipom. Ovakva veza takoe moe biti 1:1, 1:N ili N:M.
je u brakuOSOBA
Atribut i domen
Objekti se u sistemu opisuju preko svojih svojstava ili atributa. Svaki atribut u u jednom trenutku ima neku vrednost. Atributi uzimaju vrednost iz skupa moguih vrednosti - domen. Vrednost atributa treba biti jednostruka i jednostavna – ne moe se rastaviti na delove. Toleriše se ponekad da vrednost atributa nije definisana ili upisana (nedostaje). Broj atributa je stepen tabele.
Atribut
Svojstva objekta se opisuju preko atributa Npr. atributi entiteta STUDENT: BrInd, Ime, Prezime, Smer,
Adresa
Atribut je zajednika osobina koju poseduju svi objekti jedne klase Npr. ne postoji student koji nema broj indeksa
Broj atributa nije fiksan Relevantne atribute definiše kompetentna osoba
Od toga zavisi upotrebljivost dobijenih informacija
Atributi svih entiteta poprimaju odreene vrednosti
Atribut
Visina (cm), Ocena, Smer itd.
Sloeni atributi: Adresa (Ulica, Broj, Mesto, ...) DatumRoenja (Dan, Mesec, Godina)
(1,1)MLB
(1,1) (0,M)
(0,1) (1,1)
(1,1)STAROST     ISPLATE(1,M)
RADNIK ZAPOS
Definicija atributa
Jednoznani atribut Ako je kardinalnost atributa (DG = 1, GG = 1 ) onda se
takav atribut naziva jednoznani atribut objekata. Ako i inverzno preslikavanje jednoznanog atributa
(preslikavanje DOMEN ----> OBJEKAT) takoe ima kardinalnost (DG = 1, GG = 1) tada se takav atribut naziva identifikator objekta, jer jedno pojavljivanje takvog atributa jedinstveno odreuje jedno pojavljivanje objekta u skupu pojavljivanja objekata datog tipa.
Na primer, atribut MLB je identifikator objekata RADNIK.
(1,1) MLB: RADNIK -------------> MATB
Višeznani atribut
Ako je gornja granica kardinalnost atributa GG = M, onda se takav atribut naziva višeznani atribut objekta.
Na primer, (1,M) ZNA-JEZIK: RADNIK ------------> JEZIK
Zbog jednostavnije transformacije MOV u implementacioni model, jednostavnijeg definisanja njegovih ogranienja i operacija u MOV se ne koriste višeznani atributi. Ako domen višeznanog atributa ima unapred zadat,
semantiki znaajan skup vrednosti, tad se on modelira kao poseban objekat
Ako domen višeznanog atributa nema unapred zadat semantiki znaajan skup vrednosti, tada ga je pogodno predstaviti preko novog koncepta identifikaciono zavisnog slabog objekta
NAZIVJ
ZNA_JEZIK(1,M)
(0,M)
(1,M)
RADNIK RADI ODELJENJE
(1,1)MLB
(1,1) (0,M)
(0,1) (1,1)
(1,1)STAROST     ISPLATE(1,M)
RADNIK ZAPOS
Postoje atributi (grupe atributa) ije vrednosti jednoznano identifikuju primerke entiteta. Taj atribut (grupa atributa) naziva se primarni klju. Ako klju ini samo jedan atribut onda je on prost
klju, u suprotnom je sloen.
Prirodni (JMBG, reg. br. tablice, br. indexa…) Veštaki (ID)
Šema tabele
Grau tabele kratko opisujemo tzv. šemom tabele, koja se sastoji od imena tabele i popisa imena atributa u zagradama. Primarni atributi oznaavaju se podvuenom crtom ili zvezdicom. Primer: AUTO ( registracija, proizvoa, model, godina ) OSOBA ( JMBG, ime, ime oca, adresa, ...)
Pretvaranje ER šeme u relacionu Svaki tip entiteta prikazuje se jednom tabelom. Atributi entiteta postaju atributi (kolone) tabele. Primarni klju entiteta postaje primarni klju tabele. Postojanje veza s drugim entitetima moe zahtevati dodavanje još nekih atributa. Npr. entitet STUDENT postaje tabela: STUDENT ( indeks, ime, adresa, pol, . . . )
Veze
Pravilo 1. Ako tip entiteta E2 ima obavezno lanstvo u N:1–vezi sa entitetom E1, tada relacija za E2 treba ukljuiti primarne atribute (primarni klju) od E1.
Klju jedne relacije koji je prepisan u drugu relaciju zove se strani klju.
Primer. tabela LEKAR je vezana za tabelu PACIJENT. LEKAR( lid, ime, prezime, staz,...) PACIJENT(pid, ime, prezime, datum rodjenja, ...) da bi uspostavili vezu:
PACIJENT(pid, lid , ime, prezime, datum rodjenja, ...)
Pravilo 2. Ako je veza tipa N:M uvek se prikazuje posebnom tabelom koja ukljuuje primarne atribute oba entiteta i još moda dodatne koje sama veza ima. STUDENT (indeks, ime, adresa, pol,...) ODSEK (oid, ime odseka,...) UPISAO (indeks, oid, datum upisa,...) Veza UPISAO prikazana je preko posebne relacije, a njen klju je sloen i sastoji se od atributa obe relacije koje povezuje.
Veze
Sistem analitiari (system analyst) Dizajner BP (database designer) Aplikacioni programer (application programmer) Nosilac projekta (project manager) Korisnik (user) Administrator BP (database administrator) Administrator sistema (system administrator)
Data Warehouse Baza podataka koja se koristi u procesu
odluivanja i koja je odvojena od operativnih podataka. Osnovni cilj je podrška u procesu donošenja
odluka (engl. decision support), tj. modelovanje i analiza podataka. DW sadri sumarne podatke vezane za centralni
subjekat (npr. 5 do 10 godina unazad), ne podatke vezane za dnevno poslovanje. Kreira se integracijom podataka iz više
heterogenih izvora kao što su relacione baze, obine datoteke, transakcione baze itd.
Podaci iz DW omoguavaju uoavanje trendova.
Business Intelligence – BI