Tietovaraston raportoitavat suureet faktatauluun

Mikä on fakta?

Faktat ja dimensiot ovat ensimmäisiä käsitteitä, joihin Business Intelligence -työkaluja käyttävä joutuu tutustumaan. Käyttäjä törmää niihin viimeistään siinä vaiheessa, kun avaa raportointityökalun ja tutkii valittavissa olevia kenttiä. Sen sijaan, että kaikki tietokentät kuten asiakasnimi tai tuoteryhmä olisi listattu allekkain, tieto on ryhmitelty aihepiireihin eli dimensioihin. Dim Asiakas -dimension alta löytyy asiakastieto, Dim Tuote -dimensiosta tuotetieto jne, mutta mitä löytyy faktataulusta?

Kuvakaappaus Power BI -työkalusta
Power BI -työkalun Kentät-osiossa tieto on ryhmitelty dimensioihin ja faktoihin

Faktataulun kenttinä on euroja, dollareita, kiloja, litroja, kappaleita tai mitä vaan laskettavia arvoja, joita halutaan laskea yhteen. Faktataulun kenttiä kutsutaan mittareiksi, joiden niminä voi olla vaikka Myyntisumma (eur), Toimitusmäärä (kpl) tai Keskihinta (€/kpl). Ne ovat laskelmia, jotka ynnäävät yhteen tuhansia laskurivejä, pakkalistoja, reklamaatioita tai muita numeroja sisältäviä rivejä.

Mikä on vuoden 2018 myynti euroina?

Kun vastaamme kysymykseen, mikä on vuoden 2018 myynti euroina, tarvitsemme faktataulusta Myyntisumma (eur) -mittarin ja kalenteridimensiosta Vuosi-attribuutin. Kalenteridimension tehtävänä on rajata laskelmat vuoteen 2018 ja faktataulun tehtävänä on laskea yhteen eurot. Yleisesti ottaen dimensioiden tarkoituksena on suodattaa sekä ryhmitellä tietoa ja faktojen tarkoituksena on laskenta.

FaktaDimensio
Tehtävälaskeerajaa, ryhmittelee
Tietotyyppinumeroitatekstiä
Kokomiljoonia rivejäsatoja rivejä

Faktataulun rakenne

Faktojen ja dimensioiden suhde

Vaikka käyttäjälle näkyy faktataulusta vain numerot, se ei sisällä pelkästään yhteenlaskettavia arvoja. Jotta BI-työkalu osaisi valita faktataulun riveistä vain ne, jotka liittyvät vuoteen 2018, pitää faktarivillä olla jokin maininta oikeasta vuodesta. Teknisesti asia toteutetaan niin, että faktataulun rivillä on kenttä Päiväysavain, jonka perusteella kalenteridimensio voidaan yhdistää faktoihin. Päiväyksen lisäksi faktarivillä olisi oma kenttänsä jokaiselle dimensiotaululle, joita raportoinnissa tarvitaan.

PäiväysavainAsiakasavainTuoteavainMyynti eur
1.4.2018234835
2.8.20199235210

Avainsarakkeet piilotetaan käyttäjältä, mutta ne ovat taustalla välttämättömiä dimensioiden ja faktojen yhteen sitomiseksi. Tietokantatermein faktataulu yhdistyy dimensioon yksi moneen -kardinaliteetilla (1-*) eli yksi faktarivi liittyy vain yhteen dimensioriviin, mutta yksi dimensiorivi voi liittyä moneen faktariviin. Käytännössä 1-* suhde tarkoittaa, että yksittäinen laskurivi liittyy yhteen tuotteeseen, mutta tietty tuote saattaa liittyy satoihin laskuriveihin.

Kuvakaappaus Power BI -työkalun datamallista
Kun dimensiot linkittyvät faktatauluun, syntyy tähteä muistuttava malli

Erilaiset mittarit

Vaikka aiemmin mainitsin, että faktojen mittarit ovat yhteenlaskettavia kenttiä, tämä ei ole täysin totta, sillä mittareilla on eri muotoja, jotka ovat:

  • Lisäävä (esim. myyntieurot, toimitukset)
  • Puoliksi lisäävä (esim. varastosaldo)
  • Ei lisättävä (esim. suhdeluvut, prosentit)

Lisääviä mittareita voimme käsitellä huoletta eri dimensioiden kanssa, sillä yhteenlasku ei mene sekaisin vääristä rajauksista. Esimerkiksi laskurivien eurot ovat täysin lisääviä mittareita, sillä voimme laskea kahden vuoden myynnit yhteen tai rajata laskelman yksittäiseen myyjään.

Puoliksi lisäävä mittari käyttäytyy eri tavalla dimensiosta riippuen. Voimme laskea kahden varaston tai tuoteryhmän rahamääräisen varastoarvon yhteen, mutta emme voi laskea tammikuun ja helmikuun varastosaldoa yhteen. On tyypillistä, että rajoittavana dimensiona on aika ja silloin taustasyynä on faktataulun tilannevedostyyppi.

Ei lisättävä mittari menee summauksista sekaisin. Jos meillä olisi faktataulussa alennusprosentti, emme pystyisi laskemaan yhteen tietyn tuoteryhmän tai ajanjakson alennusprosentteja. Tässä kyseisessä tapauksessa ongelman voi kiertää, kun alennuksen säilyttää faktarivillä euroina ja prosenttilaskun jättää raportointityökalun vastuulle.

Faktataulutyypit

Faktataulun tyyppi liittyy siihen, mitä faktataulun yksittäinen rivi edustaa. Yllä olevissa esimerkeissä faktataulun rivi on ollut sama kuin laskurivi, eli jokainen myyntitapahtuma synnyttää yrityksen myyntijärjestelmään laskurivejä, jotka siirretään tietovarastoon faktariveiksi. Myynti-, osto-, toimitus- tai muihin tapahtumiin liittyviä faktatauluja kutsutaan transaktionaalisiksi.

Jos raporttimme koskisi lämpötiloja, faktataulutyyppi olisi erilainen. Ei ole mitään lämmönmuutostapahtumaa, jonka voisi kirjata transaktiona, vaan kirjaamme ainoastaan lämmönmittauksen, joka on kuvaus tietyn hetken lämpötilasta. Säännölliseen aikaväliin sidottua mittausta kutsutaan jaksoittaiseksi tilannevedokseksi. Käytämme usein tilannevedosta myös sellaisissa tilanteissa, joissa transaktioseuranta olisi mahdollinen, mutta tilannevedos on raportoinnin kannalta luontevampi. Yhtenä tällaisena tapauksena on varastoseuranta, jossa varastotilanne merkitään faktatauluun tietyin aikavälein. Vaikka polkupyörien määrä ei varastossa muutu, lisäämme faktatauluun joka päivä uuden rivin polkupyörän varastosaldosta.

Projektiluontoisessa työssä tieto tulee tipoittain hankkeen edetessä. Hankkeella on ensin pelkkä aloituspäivä, viikkoa myöhemmin tarkistuspäivä, kuukautta myöhemmin valmistumispäivä ja lopuksi loppuarviointipäivä. Samalle faktataulun riville täydennetään tietoa sitä mukaan kuin uutta tietoa tulee eli kyseessä on kerääntyvä tilannevedos.

TransaktionaalinenJaksoittainen tilannevedosKerääntyvä tilannevedos
Faktariviyksi rivi jokaiselle transaktiolleyksi rivi jokaiselle mittauspisteelleyksi rivi jokaiselle projektille tai työvirralle
Aikajaksotransaktion tapahtumahetkisäännöllinen ajanjaksovaihteleva ajanjakso
Rivimuutoseieikyllä
Mikko Harhanen
Mikko Harhanen
Business Intelligence -konsultti

Kauppatieteiden maisteri, liiketoiminnan analyytikko.