Normalizacija i denormalizacija relacijske sheme baze podataka tjedan

Слични документи
Studijski primer - Dijagrami toka podataka Softverski inženjering 1

PowerPoint Presentation

Р273 Пројектовање база података Примери питања за колоквијум 1. Навести најважније моделе података кроз историју рачунарства до данас. 2. Објаснити ос

Model podataka

8 2 upiti_izvjesca.indd

Microsoft PowerPoint - DW_DS_ _4

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Ba

Principi softverskog inženjerstva O predmetu

No Slide Title

Baze podataka - Vježbe 2018/2019

Uvod u obične diferencijalne jednadžbe Metoda separacije varijabli Obične diferencijalne jednadžbe Franka Miriam Brückler

P9.1 Dodela resursa, Bojenje grafa

INTRODUCTION

DUBINSKA ANALIZA PODATAKA

ALIP1_udzb_2019.indb

Matrice. Algebarske operacije s matricama. - Predavanje I

Introduction to Programming

Poštovani,

kriteriji ocjenjivanja - informatika 8

Podružnica za građenje

Lorem ipsum dolor sit amet lorem ipsum dolor

eredar Sustav upravljanja prijavama odjelu komunalnog gospodarstva 1 UPUTE ZA KORIŠTENJE SUSTAVA 1. O eredar sustavu eredar je sustav upravljanja prij

QFD METODA – PRIMER

4. Веза између табела практичан рад 1. Повежите табеле Proizvodi и Proizvođači у бази података Prodavnica.accdb везом типа 1:N. 2. Креирајте табелу St

Tolerancije slobodnih mjera ISO Tolerancije dimenzija prešanih gumenih elemenata (iz kalupa) Tablica 1.1. Dopuštena odstupanja u odnosu na dime

Ministarstvo poljoprivrede Portal gospodarskog ribarstva Registracija prvih kupaca Uputa za korisnike

Microsoft Word - IP_Tables_programski_alat.doc

LAB PRAKTIKUM OR1 _ETR_

GTS obrt za savjetovanje, trgovinu i sport, vl. Tihomir Grbac HR Sveta Nedelja, Ferde Livadića 15 Tel/Fax: ,

Microsoft Word - Korisnički priručnik za liječnika.docx

Microsoft PowerPoint - 6. Query Builder.pptx

PowerPoint Presentation

SVEUČILIŠTE U ZAGREBU FAKULTET ORGANIZACIJE I INFORMATIKE V A R A Ž D I N Josip Cesar APLIKACIJE TEMELJENE NA NoSQL I RELACIJSKIM BAZAMA PODATAKA DIPL

Microsoft Word - WP_kolokvij_2_rjesenja.doc

User's Manual

Introduction to Programming

Microsoft Word - Tehnicka uputstva lica doc

Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje no

Uvod u statistiku

Toplinska i električna vodljivost metala

Slide 1

RITAM FORMS - PROIZVODNJA - NARUDŽBE I PLANIRANJE - PLAN PROIZVODNJE Stranica 1 od 10 Plan proizvodnje U pro esu proizvod je proizvodi astaju a os ovi

Sveučilište u Zagrebu

EUROPSKA KOMISIJA Bruxelles, C(2018) 3697 final ANNEXES 1 to 2 PRILOZI PROVEDBENOJ UREDBI KOMISIJE (EU) /... o izmjeni Uredbe (EU) br. 1301

Microsoft PowerPoint - PICHLER pptx

KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA

Kontrolna lista za obilazak radnog mjesta Doktor medicine u bolnici KONTROLNA LISTA ZA OBILAZAK RADNOG MJESTA Svrha obilaska radnog mjesta je utvrditi

DWA2

P11.3 Analiza zivotnog veka, Graf smetnji

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj

Упутство за пријављивање испита путем интернета Да би студент могао да пријави испит путем интернета мора прво да се пријави. Пријављивање се врши у п

Primjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, Literatura: I. Gusić, Lekcije iz Matematike 2

Pravilnik o poreskoj prijavi o obračunatim doprinosima za obavezno socijalno osiguranje za osnivače, odnosno članove privrednog društva (Sl.Glasnik 14

Logičke izjave i logičke funkcije

PowerPoint Presentation

Microsoft Word - V03-Prelijevanje.doc

PPT

Neodreeni integrali - Predavanje III

РЕПУБЛИКА СРПСКА

OD MONOKRISTALNIH ELEKTRODA DO MODELÂ POVRŠINSKIH REAKCIJA

ПРИЛОГ 5 СЛОЖЕН ПОСЛОВНИ ПЛАН ЗА МЕРУ 3 1

AM_Ple_LegConsolidated

Microsoft Word - CAD sistemi

4 dan - DWeb

Microsoft PowerPoint - GR_MbIS_12_IDEF

Kontrolna lista za obilazak radnog mjesta Stomatološki tehničar KONTROLNA LISTA ZA OBILAZAK RADNOG MJESTA Svrha obilaska radnog mjesta je utvrditi, uk

PuTTY CERT.hr-PUBDOC

Državna matura iz informatike

CARNet Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za administratore tel: fax: mail: url:

Algoritmi SŠ P1

E-RAČUN ZA POSLOVNE SUBJEKTE ZAPRIMANJE I SLANJE E-RAČUNA JE LAKO, PROVJERITE U FINI KAKO...

RAD SA PROGRAMOM

Državna matura 2010./2011. i prijave za upis na studijske programe

OBAVIJEST PZZ KORISNICIMA Poštovani korisnici programskog rješenja Last2000. Za Vas smo pripremili sljedeće novosti u programu: NOVOSTI

quality cert uputstvo za koriscenje znaka

OBAVIJEST O PRVOJ IZMJENI DOKUMENTACIJE Naziv Naručitelja: GENERA d.d., Kalinovica, Svetonedeljska cesta 2, Rakov Potok Naziv projekta: Izgradn

Postojanost boja

STRATEGIJE ULASKA NA INOZEMNO TRŽIŠTE Predavanje 6. doc.dr.sc. Helena Štimac UGOVORNA SURADNJA Ugovorna proizvodnja Ugovorno upravljanje Pr

Matematika 1 - izborna

Slide 1

NAUČNO-STRUČNA KONFERENCIJA LOGOPEDA SRBIJE INOVATIVNI PRISTUPI U LOGOPEDIJI Nacionalni skup sa međunarodnim učešćem Organizator: Udruženje logopeda S

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

Vjezbe

CVRSTOCA

SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.

CARNET Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za razrednike i stručno osoblje tel: fax: mail:

Grafovi 1. Posmatrajmo graf prikazan na slici sa desne strane. a) Odrediti skup čvorova V i skup grana E posmatranog grafa. Za svaku granu posebno odr

PROVEDBENA UREDBA KOMISIJE (EU) 2017/ оd prosinca o utvrđivanju administrativnih i znanstvenih zahtjeva koji se od

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime

CARNET Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za nadzor razrednih knjiga tel: fax: mail:

08 RSA1

Slide 1

Microsoft Word - predavanje8

CARNET: Upute za korisnike Sadržaj uputa 1. Što je CARNET? Tko ima pravo na CARNET uslugu? CARNET APN Uvjeti korištenja usluge

Priprema 1

Teorija skupova - blog.sake.ba

CARNet Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za nastavnike tel: fax: mail: url: carn

The Land of Heroes Vrsta igre: Video slot PVI (povratak vrijednosti igraču): 96,17 % Pronađite magičan mlin kako biste se spasili od strašne hladnoće

NAZIV PREDMETA UNUTARNJETRGOVINSKO POSLOVANJE I Kod Godina studija 2. Nositelj/i predmeta dr.sc. Ivana Plazibat, prof. Bodovna vrijednost 6 ECTS v.š.

УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: Након

Транскрипт:

Normalizacija i denormalizacija relacijske sheme baze podataka 11. tjedan T. Carić, T. Erdelić Zavod za inteligentne transportne sustave Fakultet prometnih znanosti Sveučilište u Zagrebu Baze podataka T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)1/44

Pregled 1. poglavlja T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)2/44

Uvod Normalizacija je proces raščlambe i izmjene strukture relacijske tablice s ciljem Smanjenja zalihosti podataka (sve preslike zalihosnih podataka moraju biti jednake) i Smanjenja nepravilnosti u podacima (kod unosa, obnavljanja i brisanja) Normalne forme Boyce Coddova normalna forma (BCNF) T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)3/44

Uvod Strukturalno tablica u 2NF je urednija od tablice u 1NF, a 3NF je urednija od 2NF Vrijedi: viša forma manja zalihost Normalizacija predstavlja primjenu matematičkih i formalnih pravila Osigurava ispravno postavljanje modela podataka i njihovu logičku povezanost T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)4/44

1NF PRVA NORMALNA FORMA Relacijska shema je u 1NF ako: domena atributa sadrži samo jednostavne (nedjeljive) vrijednosti atribut ne sadrži skup podataka relacija nema ponavljajuće grupe stupaca i ako su neključni atributi funkcijski ovisni o primarnom ključu Shema relacijske baze podataka R = {R 1, R 2,..., R n } je u 1NF ako je svaka relacija R 1, R 2,..., R n u 1NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)5/44

Funkcijska zavisnost atributa DEF: Funkcijska zavisnost atributa Za tablicu R koja sadrži atribute X i Y koji mogu biti složeni vrijedi funkcijska zavisnost atributa Y o atributu X, tj. X Y, ako je svaka pojedina vrijednost atributa X povezana sa samo jednom vrijednošću atributa Y Može se reći da Y funkcijski ovisi o X (X Y ) ako u tablici R ne postoje dva reda sa istom vrijednošću atributa X, a različitim vrijednostima atributa Y pravilo je jednostavno i proizlazi iz definicije primarnog ključa naglašava transformacijsko pravilo prikaza viševrijednosnih atributa T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)6/44

Funkcijska zavisnost atributa prikaz viševrijednosnog atributa sport za entitet STUDENT koji ima head(student)={student id, Ime, Prezime, Dat.rodenja, Mj.rodenja, JMBG, Sport} card(ime, STUDENT)=(1,1), card(prezime, STUDENT)=(1,1), card(dat.rodenja, STUDENT)=(1,1), card(mj.rodenja, STUDENT)=(1,1), card(jmbg, STUDENT)=(1,1), card(sport, STUDENT)=(0,n) T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)7/44

Funkcijska zavisnost atributa Tablica je u skladu sa pravilom da nije dozvoljen unos više vrijednosti pojedinog atributa u jednom retku. Tablica nije u prvoj normalnoj formi, jer svi neključni atributi nisu funkcijski zavisni o ključu Student id Sport T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)8/44

Anomalije Osim posljedice da ne možemo na jedinstveni način doći do zapisa tj. da je povrijedena je jedinstvenost primarnog ključa javljaju se razne anomalije Problemi koji se javljaju pri unosu i manipuliranju podacima su: Anomalija unosa: za svaki sport kojim se bavi pojedini student, potrebno je ponovno unijeti vrijednost svih atributa vezanih za tog studenta: Ime, Prezime, itd. Anomalija ažuriranja/promjene podataka: kod promjene vrijednosti nekog atributa potrebno je taj atribut promijeniti u svim redovima T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)9/44

Anomalije problem viševrijednosnog atributa sada je u skladu sa transformacijskim pravilom, atribut je prikazan novom tablicom PK(SPORT)=(Student id,sport) tablica sadrži i atribut Dat.rodenja datum rodenja je vezan za studenta, neovisno o tome da li se bavi sportom ili ne vrijedi (Student id Dat.rodenja) Student id je podskup primarnog ključa u tablici SPORT T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)10/44

Anomalije Anomalije koje se javljaju kada neključni atributi ovise samo o dijelu ključa Anomalija unosa Ne može se unijeti datum rodenja za studenta koji se ne bavi sportom Anomalija promjene Promjena datuma rodenja uzrokuje promjenu u svim redovima koji su vezani za tog studenta. Anomalija brisanja Brisanjem posljednjeg sporta kojim se student bavi, gubi se i podatak o njegovom datumu rodenja T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)11/44

2NF DRUGA NORMALNA FORMA Relacijska shema je u 2NF ako: se tablica već nalazi u 1NF i ako su svi neključni atributi potpuno funkcijski zavisni o ključu Pravilo druge normalne forme vrijedi za složeni primarni ključ koji se sastoji od više atributa Shema relacijske baze podataka R = {R 1, R 2,..., R n } je u 2NF ako je svaka relacija R 1, R 2,..., R n u 2NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)12/44

Potpuna funkcijska zavisnost atributa DEF: Potpuna funkcijska zavisnost atributa U tablici R koja sadrži atribute X i Y koji mogu biti i složeni, kada vrijedi X Y, tada ne smije postojati niti jedan podskup Z(Z X)), za koji bi vrijedilo Z Y. T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)13/44

Potpuna funkcijska zavisnost atributa Problem se rješava na način : Atribut koji je funkcijski zavisan o podskupu primarnog ključa (student id), prebacuje se u drugu tablicu u kojoj je taj atribut-podskup primarni ključ to je u ovom slučaju tablica STUDENT T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)14/44

Potpuna funkcijska zavisnost atributa Anomalija unosa: Nije moguće unijeti mjesto rodenja za pojedinog studenta, dok se ne unese njegov upisni list. Anomalija ažuriranja podataka: Kod promjene mjesta rodenja pojedinog studenta, taj podatak treba mijenjati u svim upisnim listovima, koji su vezani za tog studenta. Anomalija brisanja: Brisanjem upisnog lista briše se podatak o mjestu rodenja T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)15/44

Potpuna funkcijska zavisnost atributa ulist id student id svaki upisni list vezan je samo za jednog studenta student id ulist id jedan student ima više upisnih listova student id Mj.rodenja student je roden u jednom odredenom mjestu Mj.rodenja student id u jednom mjestu može biti rodeno više studenata Kako vrijedi ulist id student id Mj.rodenja atribut mjesto rodenja je tranzitivno (posredno) funkcijski zavisan o primarnom ključu tablice (ulist id). T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)16/44

3NF TREĆA NORMALNA FORMA Relacijska shema je u 3NF ako: se tablica već nalazi u 2NF i ako niti jedan neključni atribut nije tranzitivno funkcijski zavisan o primarnom ključu Shema relacijske baze podataka R = {R 1, R 2,..., R n } je u 3NF ako je svaka relacija R 1, R 2,..., R n u 3NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)17/44

Tranzitivna funkcijska zavisnost atributa DEF: Tranzitivna funkcijska zavisnost atributa U tablici R koja sadrži atribute X, Y i A, vrijedi da je A tranzitivno funkcijski ovisan o atributu X, ako je X Y, Y X, Y A i A Y Simbolički tranzitivna zavisnost se prikazuje X Y A T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)18/44

Svodenja tablice na 3NF Svodenja tablice na treću normalnu formu rješava se tako da: atribut koji je tranzitivno zavisan o ključu, preseli u se tablicu, u kojoj je atribut koji posreduje u tranzitivnoj vezi (u ovom slučaju student id) primarni ključ. T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)19/44

Svodenja tablice na 3NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)20/44

Primjer normalizacije Upravljanje projektima Projekt opisan atributima (oznaka (broj) projekta, naziv projekta, popis suradnika) Suradnik je opisan atributima (Oznaka suradnika, naziv suradnika, zanimanje suradnika) Tvrtka naplaćuje usluge prema satu rada na projektu Naplata po satu je povezana s zanimanjem suradnika Periodički se objavljuje izvješće o radu na projektu Ukupni trošak je izvedeni atribut izračunat umnoškom cijene sata i broja sati rada T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)21/44

Prikaz početnog izvješća / tablice T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)22/44

Postupak normalizacije Cilj je ustrojiti tablicu sljedećih značajki Tablica sadrži sve značajne podatke o entitetu Niti jedan podatak se nepotrebno ne pohranjuje u više od jedne tablice Razlog je obnavljanje na jednom mjestu Obilježja tablice zavise samo o primarnom ključu POSTUPAK: 1.) Prva normalna forma (1NF) - Format tablice; nema grupa podataka koji se ponavljaju i utvrden je PK 2.) Druga normalna forma (2NF) - 1NF bez parcijalne zavisnosti 3.) Treća normalna forma (3NF) - 2NF bez tranzitivne zavisnosti T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)23/44

Pretvorba u 1NF... Brisanje grupa podataka Uz jedinstveni ključ se vezuje više podataka istog tipa (grupa) tablica POČETNI FORMAT Izbrisati NULL vrijednosti i njihova mjesta popuniti odgovarajućim vrijednostima T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)24/44

Pretvorba u 1NF... T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)25/44

Pretvorba u 1NF... Odredivanje primarnog ključa (PK) koji jedinstveno označuje preostale atribute retka u primjeru je to složeni ključ sastavljen od atributa OZN PROJ i OZN SURAD Odredivanje zavisnosti atributa odredivši PK odredena je zavisnost OZN PROJ, OZN SURA NAZ PROJ, NAZ SURAD, ZANIM SURAD, CIJENA SATA, BROJ SATI ostale zavisnosti OZN PROJ NAZ PROJ OZN SURAD NAZ SURAD, ZANIM SURAD, CIJENA SATA ZANIM SURAD CIJENA SATA prikaz dijagramom zavisnosti T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)26/44

Pretvorba u 1NF... Dijagram zavisnosti 1NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)27/44

Značajke dijagrama zavisnosti Obilježja primarnog ključa označena masno, podvučena i narančaste boje Strelice iznad atributa (poželjne zavisnosti) zavisnosti obilježja koje se vezuju uz primarni ključ OZN PROJ, OZN SURAD Strelice ispod atributa (nepoželjne zavisnosti) Parcijalne zavisnosti - zavisnosti atributa o dijelu složenog primarnog ključa Tranzitivne zavisnosti - zavisnosti jednog atributa koji nije primarni ključ o drugom T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)28/44

Prva normalna forma 1NF Tablični format za koji vrijedi utvrdena su svi ključni atributi u tablici nema grupa podataka koje se ponavljaju - svako polje tablice sadrži samo jednu vrijednost podatka svi atributi su zavisni o primarnom ključu T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)29/44

Pretvorba u 2NF... Zapisati svaki ključni atribut u poseban redak, a originalni (složeni) ključ u zadnji redak OZN PROJ OZN SURAD OZN PROJ OZN SURAD Svako tako napisani atributi postaje ključ u novoj tablici - originalna tablica se dijeli u tri tablice (PROJEKT, SURADNIK, PRIDRUŽI) T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)30/44

Pretvorba u 2NF... Korištenjem tablice zavisnosti utvrditi atribute entiteta koja zavise o drugim atributima: originalna tablica se dijeli u tri nove tablice PROJEKT (OZN PROJ, NAZ PROJ) SURADNIK(OZN SURAD, NAZ SURAD, ZANIM SURAD, CIJENA SATA) PRIDRUŽI (OZN PROJ, OZN SURAD, PRIDRU SATI) Primarni ili ključni atribut je atribut koje je najmanje dio složenog ključa - OZN PROJ i NAZ PROJ su primarni (ključni) atributi T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)31/44

Rezultati pretvorbe u 2NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)32/44

Druga normalna forma 2NF Tablični format za koji vrijedi: tablica se nalazi u 1NF ne uključuje parcijalne zavisnosti, tj. ne postoji atribut koji zavisi samo o dijelu složenog ključa tablica čiji je primarni ključ sastavljen od samo jednog atributa kada se nalazi u 1NF, istovremeno se nalazi u 2NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)33/44

Pretvorba u 3NF... Utvrditi svaku novu determinantu Za svaku tranzitivnu zavisnost, zapisati njezinu determinantu kao primarni ključ nove tablice determinanta je bilo koji atribut entiteta čija vrijednost odreduje ostale vrijednosti u retku Utvrditi zavisne atribute U primjeru: ZANIM SURAD CIJENA SATA Uočiti zavisne atribute iz tranzitivne zavisnosti CIJENA SATA iz SURADNIK nova tablica SURADNIK (OZN SURAD NAZ SURAD, ZANIM SURAD) T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)34/44

Rezultati pretvorbe u 3NF T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)35/44

Prednosti i nedostaci normalizacije Prednosti normalizacije Potpuno uklanjanje redundantnih podataka Minimiziranje prostora za skladištenje podataka Riješeni su problemi s anomalijama unosa, ažuriranja i brisanja podataka Nedostaci normalizacije Prestroga normalizacija može dovesti do narušavanja performansi sustava Pojava prevelikog broja entiteta u bazi dovodi do mnogostrukih spajanja, a to ima svoju cijenu kod kasnijeg procesiranja podataka T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)36/44

Treća normalna forma 3NF Tablični format za koji vrijedi tablica se nalazi u 2NF ne sadrži tranzitivne zavisnosti T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)37/44

Denormalizacija dupliciranjem atributa Denormalizacija dupliciranjem ključeva Pregled 2. poglavlja Denormalizacija dupliciranjem atributa Denormalizacija dupliciranjem ključeva T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)38/44

Denormalizacija dupliciranjem atributa Denormalizacija dupliciranjem ključeva Uvod je kontrolirano narušavanje normalnih formi u cilju poboljšanja performansi baze podataka Kada denormalizirati, a kada bazu držati u normalnim formama? Pravilo je da se baza tokom dizajna dovede u najmanje 3 normalnu formu, pa se po potrebi denormalizira ako se shvati da je cijena normalizacije preskupa po performanse sustava T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)39/44

Denormalizacija dupliciranjem atributa Denormalizacija dupliciranjem ključeva Denormalizacija dupliciranjem atributa Dupliciranjem atributa Cijena narušena je 3NF Mana 3NF je ako ažuriramo Cijenu proizvoda nećemo moći saznati kolika je bila cijena proizvoda na datum narudžbe, pa je ovo dobro rješenje iako ne poštuje 3NF Ovo može biti zahtjevna JOIN operacija nakon nekog vremena kada se skupi veći broj narudžbi i proizvoda u bazi T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)40/44

Denormalizacija dupliciranjem atributa Denormalizacija dupliciranjem ključeva Denormalizacija dupliciranjem ključeva Da bi saznali iz koje države je koji kupac trebaju se spojiti 3 tablice, a to zahtjeva dosta logičkih/fizičkih čitanja Ako nam u nekim sličnim scenarijima ovakav upit postane prespor u tablicu Kupac se može dodati atribut DrzavaId (strani ključ) koji će biti direktno povezan sa tablicom Drzava i kod upita iz koje je države korisnik imati ćemo direktnu vezu s tablicom Drzava T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)41/44

Usporedba Pregled 3. poglavlja Usporedba T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)42/44

Usporedba Usporedba Ako treba birati izmedu performansi i integriteta baze podataka uvijek je bolje izabrati integritet, a to nam nosi stroža normalizacija Prevelika denormalizacija baze loše utječe na skalabilnost i fleksibilnost baze podataka Previše denormalizirana baza podiže troškove održavanja baze podataka T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)43/44

Usporedba Pitanja T. Carić, T. Erdelić ITS::Baze podataka (11. tjedan)44/44