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

Dr Suzana Marković, dipl. ing. el. [email protected] Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Baze podatakaDr Suzana Marković, dipl. ing. el.

[email protected]

Page 2: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Sadržaj

Baze podataka – definicijaZadaci baze podatakaŽivotni vek BPModel objekti veze Relacioni model

Page 3: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Kolekcije Sakupljaju se knjige, računari, slike, novčići, pesme, adrese, automobili, recepti, kolekcije kolekcija ili bilo kakvi skupovi stvari koje se mogu povezati. Znači, ako su objekti na neki način povezani, čine kolekciju.Primer: Telefonski imenik: naći broj telefona na osnovu imena, a obrnuto?Kako pronaći neki dragocen primerak iz vaše kolekcije, za koji niste više sigurni da li ga imate ili nemate?

Page 4: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Različite forme

Elektronski podaci: tekst, video i audio zapisi, brojeviKnjige: kolekcija tekstova i slika, bibliotekeKolekcija filmova sa glumcima i žanrovimaDatoteke organizovane u direktorijumeSportisti i sportovi na OlimpijadiUzorci krvi za medicinske laboratorije

Page 5: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Pojam baze podataka

Baza podataka je skup međusobno povezanihpodataka koji se čuvaju zajedno i među kojima imasamo 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 održavanje ikorišćenje. Baza podataka je najsavršeniji vid informacionog

sistema.

Page 6: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer IS biblioteke

Page 7: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Struktura informacionog sistema

Podsistem sprege

Korisnik

Ulazne forme Izlazne forme, izveštaji

Podsistem postupakalogika održavanja i korišćenja sistema

Podsistem podatakačuvanje podataka i elementarni postupci pristupa

Page 8: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Baza podataka

Baza podataka je integrisani skup podataka o nekom sistemu organizovan prema potrebama korisnika i elementarni skup postupaka za njihovo održavanje i korišćenje.Skup podataka pripremljen tako da se može jednostavno koristiti, tj. pregledavati, pretraživati, sortirati, ređati, itd., ali i menjati (brisati).

Page 9: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Zadaci baze podatakaorganizacija prema objektima i odnosima koji

postoje u sistemu na koji se baza podataka odnosi; organizacija prema potrebama korisnika:

podrazumeva i mogućnost definisanja izvedenih zapisa sa podacima;

integrisanost i kontrolisana redundansa: krajnjicilj integrisanosti je minimalna redundansa (višestrukoponavljanje) podataka; međutim, ponekad svesnoželimo da ponavljamo određene podatke radi bržegrada sa bazom podataka;

sigurnost: podrazumeva efikasnu kontrolu pristupapodacima, u smislu ko može da pristupi bazipodataka, kojim podacima i šta može da radi sa timpodacima;

Page 10: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Zadaci baze podataka

konkurentnost: podrazumeva mogućnostsinhronizovanog rada više korisnika istovremeno;

integritet: podrazumeva automatski oporavak od nasilnih prekida u radu koji dovode do tzv. nekonzistentnih stanja usled delimično izvršenihažuriranja (unosa, izmene ili brisanja) podataka;

import podataka: baza podataka se često uvodi kaozamena za neki stariji informacioni sistem, i tada mora postojati mogućnost preuzimanja tih podataka;

eksport podataka: često se javlja potreba da se postojeća baza podataka zameni nekom jošsavremenijom bazom podataka, i tada mora postojatimogućnost predaje podataka bazi podataka na koju se prelazi;

Page 11: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Zadaci baze podataka

performanse: baza podataka mora da obezbeđujemaksimalni učinak u smislu najviše brzine rada uznajmanje zauzeće računarskih resursa;

ekonomičnost: odnos učinak-cena treba da je što niži(baze podataka su počele masovno da se uvode u upotrebu onda kada su postale ekonomičnije od tradicionalnih informacionih sistema);

standardizacija: standardni (dogovoreni) način opisaorganizacije baze podataka i operacija nad bazompodataka obezbeđuje maksimalnu nezavisnost i trajnostkorisničkih programa za rad sa bazom podataka u odnosu na promenu baze podataka.

Page 12: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Relacioni i objektni model

Relacioni model je teorijski zasnovao Edgar F. Codd krajem 60- tih godina. Većina 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 međusobno povezanih objekata koji sarađujući ostvaruju postavljene ciljeve.svaki realni entitet predstavljen je jednim objektom

u BP

Page 13: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Osnovni pojmoviBaza podataka je skup

međusobno povezanih podataka na disku. Ti podaci su na raspolaganju korisnicima za pregledanje, pretraživanje, brisanje, ispravljanje itd.

Sistem za upravljanje bazom podataka (Database Menagment system - DBMS) je softver koji upravlja radom korisnika (korisničkih programa, aplikacija) i zapisa baze podataka na disku.

Korisnički programi ne pristupaju podacima direktno, već komuniciraju s ovim softverom (programom).

Page 14: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Osnovni pojmoviBaza podataka sastoje se od:

Bita, organizovanih u bajtove, koji mogu da čine stringove itd.

Polja (fields) – niz bajtova koji reprezentuje informacijuRekorda (records) - niz polja koji zajedno opisuju jedan

“entitet”Datoteka (files) – niz rekorda koji opisuju različite

entiteteBaze podataka tipično sadrže više relevantnih datoteka

Metadata omogućavaju dizajnerima i korisnicima baza podataka da razumeju koji podaci postoje u bazi i šta oni znače.

Tabele - razbijanje informacija na manje jedinične podatke,

Kolone (atributi),Redovi (zapisi)

Page 15: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

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 može naći samo jedna vrednostNe mogu da postoje dupli zapisiSve operacije se obavljaju nad relacijama (tabelama) a rezultat operacija je opet relacija (tabela)

Page 16: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Koncept RBP Tabela 1 i Tabela 2 “dele”

atribut 3 Tabela 2 i Tabela 3 “dele”

atribut 7

Tabela1

Tabela 3

Tabela 2

Page 17: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Životni vek BP

Svaka baza podataka ima svoj životni vek, početak kada je projektovana, pa do njene implementacije i održavanja.

5 faza:Analiza potrebaProjektovanje - modeliranje podatakaImplementacijaTestiranjeOdržavanje

Page 18: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Osnovni koncepti MOV-a

Sistem se najopštije može definisati kao skup entiteta i njihovih međusobnih veza. Entitet (objekat) je objekat realnog sistema koji se u njemu lako identifikuje. Predstavlja ili neki fizički objekat, koncept ili

događaj realnog sistema.Entiteti su povezani odgovarajućim vezama. Veza je asocijacija između dva ili više entiteta.

Objekat može biti povezan sam sa sobom (unarna veza)

Objekti se opisuju atributima.

Page 19: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Osnovni koncepti MOV-a

Veze u modelu opisuju način povezivanjajednog, dva (binarna veza) ili više objekataSvaka binarna veza definiše dva preslikavanjaPreslikavanja definišu uloge objekata u vezi.Atributi (osobine) entiteta ili veza opisuju neke njihove karakteristike. Atribut uzima vrednost iz skupa mogućihvrednosti (domen)Npr. godina_studija može uzeti vrednost iz skupa 1,

2, 3, 4, 5; semestar vrednosti iz skupa 1-10; ocena iz skupa 5-10; matični broj iz skupa 13.-to cifarnihbrojeva,…itd.

Page 20: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

O1 O2

O1 (DG,GG) O2Veza 1

O2 (DG,GG) O1

Atribut 1 Atribut 2 Atribut 3 Atribut 4

Radnik ć(1,1) Radi

Zapošljavanje(0,N) Zapošljava

JMBG

Ime SifraPr NazivPr

Preduzeće

Prezime

N:1

Page 21: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primeri

(GG,GG):(1,N) Preduzeće

(1,1) Radi

Zapošljavanje

(0,N) Zapošljava

Narudžbenica Naručivanje

(0,1) Povlači (1,1) PoOsnovu

(GG,GG):(1,1) Otpremnica

Student PredmetPrijava(0,M) (0,N)

(GG,GG):(N,M)

Radnik

Page 22: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Entitet je objekat, pojam, stanje i sl. o kome se prikupljaju, memorišu, obrađuju i prezentuju informacije.Entitet po svojoj prirodi može biti različit

Deo okruženja (član kolektiva, nastavnik, radnik, student, aparat, zgrada, artikal, vozilo ...)

Apstraktni pojam (neka mera npr. visina, nečije zvanje npr. titula, boja, ...)

Događaj (ispit, postupak upisa studenata npr. Status_upisa,...)

Asocijacija (student_predmet, predmet_profesor, ..., fakultet_profesor, autor_knjiga)

Entiteti

Page 23: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz
Page 24: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Veze između entiteta

U realnom sistemu objekti nisu međusobno izolovani, nego se nalaze u međusobnoj interakcijiOdnosi između objekata posmatranja prikazuju se najčešće primenom logike skupova i preslikavanja njihovih elemenata.Funkcionalnost veze između članova entiteta može biti:1–prema–1 (ili 1:1),1–prema–više (ili 1:N)više–prema–više (ili N:M)

Page 25: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Entiteti GRAÐANIN i POSLANIK

Funkcionalnost veze je je 1:1:Jedan građanin ne može biti dvostruki poslanik, niti

poslanik može biti dva puta građanin.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 PREDMETFunkcionalnost veze sluša je N:M jer je jedan predmet

sluša više studenata, a takođe jedan student sluša više predmeta.

Veze

Page 26: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 1Preduzeće je podeljeno na sektore. Prate se podaci o radnicima (mat.broj, ime i prezime) i

sektorima (id, naziv). Važe sledeća pravila:

Svaki sektor mora da ima jednog rukovodioca. Neki od radnika su rukovodioci u sektorima. Nacrtati deo ER dijagrama koji opisuje vezu ‘rukovodjenje

sektorom’.

Page 27: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 2

Na univerzitetu u toku upisnog roka prate se podaci o prijavljenim kandidatima (mat.broj, ime i prezime) po fakultetima (id, naziv). Važe sledeća pravila: Svaki kandidat može da se prijavi na više različitih

fakulteta. Na svakom od fakulteta može biti više prijavljenih

kandidata, ali takođe je moguće da se niko nije prijavio.

Page 28: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 3

Na fakultetu se za potrebe izrade nastavnogplana vode podaci o predmetima (šifra, naziv, broj_bodova) po katedrama (id, naziv). Važe sledeća pravila:

Svaki predmet može pripadati jednoj i samo jednojkatedri.

U okviru svake katedre može biti više predmeta, alije moguće da još nema definisanih predmeta nakatedri.

Page 29: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 4

Prate se opštine (id, naziv, brojStanovnika) i njihova podela po okruzima (šifra, naziv). Važe sledeća pravila: Svaka opština pripada jednom i samo jednom

okrugu. U okviru svakog okruga može biti jedna ili više

opština.

Page 30: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 5

U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i njihovi udžbenici (id, autor, naslov). Važe sledeća pravila: predmet može i ne mora da ima izdat udžbenik; za jedan predmet može postojati i više predviđenih

udžbenika; udžbenik se koristi u nastavi za jedan ili više

predmeta.

Page 31: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 6

U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i nastavnici(id,ime, prezime) koji ih predaju. Važe sledeća pravila: svaki predmet može predavati jedan ili više

nastavnika, svaki nastavnik predaje jedan ili više predmeta.

Page 32: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Primer 7

U okviru školskog informacionog sistema prate se nastavni predmeti(šifra, naziv, brojBodova) i studenti(mat.broj, ime, prezime) koji ih polažu. Važe sledeća pravila: svaki predmet položi ni jedan ili više studenata, svaki student može položiti ni jedan ili više

predmeta.

Page 33: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Složene veze

Unarna veza povezuje jedan tip entiteta s tim istim tipom. Ovakva veza takođe može biti 1:1, 1:N ili N:M.

je u brakuOSOBA

1

1

Je šefza

RADNIK

n

1

sadržiDeo proizvoda

n

m

Jedan složeni deo možesadržati puno manjihdelova.

Page 34: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

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 mogućih vrednosti - domen.Vrednost atributa treba biti jednostruka i jednostavna – ne može se rastaviti na delove.Toleriše se ponekad da vrednost atributa nije definisana ili upisana (nedostaje).Broj atributa je stepen tabele.

Page 35: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Atribut

Svojstva objekta se opisuju preko atributaNpr. atributi entiteta STUDENT: BrInd, Ime, Prezime, Smer,

Adresa

Atribut je zajednička osobina koju poseduju svi objekti jedne klaseNpr. ne postoji student koji nema broj indeksa

Broj atributa nije fiksanRelevantne atribute definiše kompetentna osoba

Od toga zavisi upotrebljivost dobijenih informacija

Atributi svih entiteta poprimaju određene vrednosti

Page 36: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Atribut

Prosti i složeni atributiProsti atributi:

Visina (cm),Ocena,Smer itd.

Složeni atributi:Adresa (Ulica, Broj, Mesto, ...)DatumRođenja (Dan, Mesec, Godina)

Page 37: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

(1,1)MLB

MATB ADR JEZIK IMENA SIFREO

(1,1) (0,M)

(0,1) (1,1)

(1,1)STAROST     ISPLATE(1,M)

RADNIK ZAPOS

RUKOV

ODELJENJE

GODINE PLATE

(1,1)SIFROD(1,1)NAZIVOD(1,1)IMER(1,M)ZNA_JEZIK(1,1)ADRESA

Definicija atributa

Page 38: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Jednoznačni atributAko je kardinalnost atributa (DG = 1, GG = 1 ) onda se

takav atribut naziva jednoznačni atribut objekata. Ako i inverzno preslikavanje jednoznačnog atributa

(preslikavanje DOMEN ----> OBJEKAT) takođe ima kardinalnost (DG = 1, GG = 1) tada se takav atribut naziva identifikator objekta, jer jedno pojavljivanje takvog atributa jedinstveno određuje jedno pojavljivanje objekta u skupu pojavljivanja objekata datog tipa.

Na primer, atribut MLB je identifikator objekata RADNIK.

(1,1)MLB: RADNIK -------------> MATB

(1,1)IMER:RADNIK --------------> IMENA

Page 39: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Višeznačni atribut

Ako je gornja granica kardinalnost atributa GG = M, onda se takav atribut naziva višeznačni atribut objekta.

Na primer, (1,M)ZNA-JEZIK: RADNIK ------------> JEZIK

Zbog jednostavnije transformacije MOV u implementacioni model, jednostavnijeg definisanjanjegovih ograničenja i operacija u MOV se ne koristevišeznačni atributi.Ako domen višeznačnog atributa ima unapred zadat,

semantički značajan skup vrednosti, tad se on modelira kaoposeban objekat

Ako domen višeznačnog atributa nema unapred zadatsemantički značajan skup vrednosti, tada ga je pogodnopredstaviti preko novog koncepta identifikaciono zavisnogslabog objekta

Page 40: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

NAZIVJ

ZNA_JEZIK(1,M)

(0,M)

(1,M)

(1,1) (0,M)

(1,1)(0,1)

JEZIKIME ADRESA MLB* NAZIVOD SIFOD*

RADNIK RADI ODELJENJE

RUKOV

DATUMISPLATE

ZNA

STAROST

IZNOS Konvencija za predstavljanje atributa

(1,1)MLB

MATB ADR JEZIK IMENA SIFREO

(1,1) (0,M)

(0,1) (1,1)

(1,1)STAROST     ISPLATE(1,M)

RADNIK ZAPOS

RUKOV

ODELJENJE

GODINE PLATE

(1,1)SIFROD(1,1)NAZIVOD(1,1)IMER(1,M)ZNA_JEZIK(1,1)ADRESA

Page 41: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Definisanje ključeva u modelu

Postoje atributi (grupe atributa) čije vrednostijednoznačno 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 složen.

Prirodni (JMBG, reg. br. tablice, br. indexa…)Veštački (ID)

Page 42: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Šema tabele

Građu tabele kratko opisujemo tzv. šemom tabele, koja se sastoji od imena tabele i popisa imena atributa u zagradama.Primarni atributi označavaju se podvučenom crtom ili zvezdicom.Primer:AUTO ( registracija, proizvođač, model, godina )OSOBA ( JMBG, ime, ime oca, adresa, ...)

Page 43: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Pretvaranje ER šeme u relacionuSvaki tip entiteta prikazuje se jednom tabelom.Atributi entiteta postaju atributi (kolone) tabele.Primarni ključ entiteta postaje primarni ključ tabele.Postojanje veza s drugim entitetima može zahtevati dodavanje još nekih atributa.Npr. entitet STUDENT postaje tabela:STUDENT ( indeks, ime, adresa, pol, . . . )

Page 44: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Veze

Pravilo 1. Ako tip entiteta E2 ima obavezno članstvo u N:1–vezi sa entitetom E1, tada relacija za E2 treba uključiti 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, ...)

Page 45: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Pravilo 2. Ako je veza tipa N:M uvek se prikazuje posebnom tabelom koja uključuje primarne atribute oba entiteta i još možda 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 složen i sastoji se od atributa obe relacije koje povezuje.

Veze

Page 46: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz
Page 47: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Uloge u radu sa BP

Sistem analitičari (system analyst)Dizajner BP (database designer)Aplikacioni programer (applicationprogrammer)Nosilac projekta (project manager)Korisnik (user)Administrator BP (database administrator)Administrator sistema (system administrator)

Page 48: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Data WarehouseBaza podataka koja se koristi u procesu

odlučivanja 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 sadrži 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, obične datoteke, transakcione baze itd.

Podaci iz DW omogućavaju uočavanje trendova.

Page 49: Dr Suzana Marković, dipl. ing. el. suzana.markovic@bpa.edu Zadaci baze podataka performanse: baza podataka mora da obezbeđuje maksimalni učinak u smislu najviše brzine rada uz

Business Intelligence – BI

Velike količine podataka uspešne firme koriste i za praćenje i upravljanje sopstvenim poslovanjem.Sistemi poslovne inteligencije (Business Intelligence – BI) su alati za obradu velike količine podataka koji omogućavaju izveštaje na osnovu kojih menadžment donosi odluke.BI sistemi obrađuju velike količine podataka i daju izveštaje na osnovu kojih je moguće pratiti trendove, pronalaziti zakonitosti između nekih pojava, pa čak i vršiti predikciju budućih događaja.