Tietokannan normalisointi Relaatiokaavion parantamista Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Taustaa Käsitteellisen mallinnuksen avulla muodostettiin kuva kohdealueen tietosisällöstä ER-kaavio kuvaa yksilö- ja yhteystyypit ominaisuuksineen ja lukumäärärajoitteineen. ER-kaavio muunnettiin relaatiokaavioksi mekaanisen prosessin avulla. Tuloksena esitys tietokannan tauluista, kentistä sekä perus- ja viiteavaimista. Relaatiokaavio ei välttämättä ole paras mahdollinen. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Normalisointi Normalisointivaiheessa relaatiokaaviota tarkastellaan kriittisesti kaavion parantamiseksi laadun varmistamiseksi Relaatiokaavion taulut muunnetaan yhä korkeampiin ns. normaalimuotoihin. Kukin normaalimuoto asettaa edellistä normaalimuotoa tiukemmat kriteerit relaatiokaavion laadulle. Kriteerien on oltava voimassa kaikilla kuviteltavissa olevilla (rakenteen mukaisilla) tietueilla. Perustuu ns. funktionaalisten riippuvuuksien analysointiin. Tavoitteena redundanssin (tarpeettoman toiston) sekä erilaisten rajoitteiden ja anomalioiden (poikkeuksien) poistaminen. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Funktionaalinen riippuvuus Funktionaalisella riippuvuudella tarkoitetaan tilannetta, jossa kentän A arvo yksikäsitteisesti määrää kentän B arvon. Oheisessa tilanteessa pätevät seuraavat funktionaaliset riippuvuudet: ID→Etunimi, Sukunimi Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Funktionaalinen riippuvuus Oheisessa taulussa vallitsevat funktionaaliset riippuvuudet: Tilno, Rivino → Tuotekoodi, Kpl Vasemman puolen kentät yhdessä määräävät tuotekoodin ja kappalemäärän. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Normaalimuodot Ensimmäinen normaalimuoto (1NF) Toinen normaalimuoto (2NF) Kolmas normaalimuoto (3NF) Boyce-Coddin normaalimuoto (BCNF) Neljäs normaalimuoto (4NF) Viides normaalimuoto (5NF) ”Välttämätön” normalisointi Kaikkien anomalioiden poisto 3NF riittää useimpiin tietokantasovelluksiin. Tarkastellaan muunnosta 3NF-tasolle asti. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Ensimmäinen normaalimuoto Tietokannassa ei saa olla moniarvoisia kenttiä. Kenttien yksiarvoisuus (atomisuus) kuuluu jo relaation määritelmään. Alla oleva taulu ei ole ensimmäisessä normaalimuodossa. Kurssit on moniarvoinen kenttä. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Muunnos ensimmäiseen normaalimuotoon Moniarvoiset kentät pilkotaan toistamalla tietue riittävän monta kertaa. Menettely luo redundanssia, joka poistetaan myöhemmin. Huomaa muuttunut perusavain. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Toinen normaalimuoto Taulun on oltava ensimmäisessä normaalimuodossa. Jokaisen perusavaimeen kuulumattoman kentän on lisäksi oltava funktionaalisesti riippuvainen koko perusavaimesta. Alla oleva taulu ei ole toisessa normaalimuodossa. Sukunimi ja Etunimi ovat funktionaalisesti riippuvia HenkilönID-kentästä, joka on perusavaimen aito osajoukko. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Muunnos toiseen normaalimuotoon Jaetaan toista normaalimuotoa rikkova taulu useampaan tauluun: Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Kolmas normaalimuoto Taulun on oltava toisessa normaalimuodossa. Taulussa ei saa olla transitiivisia riippuvuuksia. Transitiivinen riippuvuus on funktionaalinen riippuvuus kahden perusavaimeen kuulumattoman kentän välillä. Alla oleva taulu ei ole kolmannessa normaalimuodossa. Transitiivinen riippuvuus Postinro → Postitoimip. Transitiiviset riippuvuudet aiheuttavat redundanssia sekä anomalioita dataa lisättäessä, poistettaessa ja päivitettäessä. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Muunnos kolmanteen normaalimuotoon Muodostetaan transitiivisesta riippuvuudesta oma taulunsa. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Mitä korjaat ja miten? Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Mitä korjaat ja miten? Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Mitä korjaat ja miten? Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Normalisointitehtävä Muodostakaa työpareja. Normalisoikaa (ja korjatkaa tarvittaessa) seuraavalla kalvolla oleva tietokanta niin laadukkaaksi kuin mahdollista. Valmistautukaa esittämään ja perustelemaan ratkaisunne. Analysoikaa mahdollisia jäljelle jääviä anomalioita ja rajoitteita. Tietokanta käsittelee leiri-ilmoittautumisia. Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen
Tiedonhallinnan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen