Esittelyssä 3 tietomallinnusmenetelmää

Tietomalli määrittää ja dokumentoi ohjelmiston perussuunnittelun data-näkökulmasta. Mallinnus voidaan aloittaa korkean tason konseptuaalisesta mallinnuksesta, josta seuraava askel on looginen malli ja lopuksi päädytään fyysiseen tietomalliin. Tässä artikkelissa esittelen 3 tietomallinnusmenetelmää fyysisen tietomallin tekemiseen. Tarkoituksena on näyttää miten erilaisia taulurakenteet ovat riippuen siitä mikä menetelmä on valittu. Tämä on tarkoitettu enemmän introduction-tyyppiseksi kirjoitukseksi, eikä se sisällä kaikkia mahdollisia nyansseja joita eri ratkaisuihin liittyy.  Esimerkkinä mallinnusratkaisuissa käytetään myyntilasku, tuote ja asiakas -tietoja.

Ensimmäinen malli alla on Dimensionaalisen menetelmän mukainen. Dimensioonalisen mallinnuksen
tekniikan esitteli ensimmäisen kerran Ralph Kimball 90-luvulla ja se on yksi käytetyimpiä menetelmiä tietovarastoinnissa. Dimensionaaliset mallit ovat helposti ymmärrettäviä, joustavia ja niistä saa helposti kyseltyä erilaisia aggregaatteja (summia) ulos. Kääntöpuolena dimensionaalisessa mallissa on että ne tallentavat ylimääräistä dataa. Esimerkiksi alla olevassa mallissa maa-tieto toistuu, kuin myös SalesInvoice-taulun Asiakas ja Due_Date. Dimensionaalista mallia ei ole optimoitu operatiivisten järjestelmien pohjaksi. Alla oleva malli ei myöskään tallenna kaikkia muutoksia lähdejärjestelmissä, vaikkakin dimensionaalisen mallinnustekniikan SCD2 dimensiolla se olisi mahdollista.

Dimensioonaalinen malli

Seuraava malli on 3. normaalimuodon mukainen (yleisesti puhutaan myös normalisaatiosta), jonka esitteli E.F.Codd jo 70-luvulla. Normaalimuotoja on tunnistettu yhteensä 6 kappaletta (1-6), mutta kolmatta normaalimuotoa pidetään yleensä riittävänä tarjoamaan riittävän yksinkertaisen tietomallin kuitenkin poistaen Update, Insert ja Delete -operaatioihin liittyviä anomalioita. Normalisointi poistaa datan turhaa/päällekkäistä tallentamista ja sitä käytetään operaatiivisissa järjestelmissä joissa on runsaasti Insert ja Update -operaatioita (Transaction processing).

3 normaalimuodon malli. ”[Every] non-key [attribute] must provide a fact about the key, the whole key, and nothing but the key so help me Codd.”

Viimeisenä esittelyssä Dan Lindstedin vuonna 2000 julkaiseman Data Vault (DV) -mallinnustekniikka. Data Vaulttia käytetään dimensionaalisen mallinnustekniikan tavoin pääasiassa tietovarastointi projekteissa. Alla olevasta kuvasta voi todeta että Data Vault menetelmä on selvästi monimutkaisempi kuin edellä mainitut menetelmät, ainakin taulujen määrällä mitattuna. DV ei ole kaikkein käytetyin menetelmä, joskin sillä on intohimoinen kannattajajoukko. Menetelmä tallentaa kaikki lähes kaikki muutokset lähdejärjestelmästä, joka on voi olla tietyissä tilanteissa toimiva ratkaisu. Esimerkkimallista voi nähdä kyselyjen tekeminen tähän malliin on selvästi monimutkaisempaa kuin esimerkiksi dimensionaalisesta mallista.

Data Vault malli