Tietomalli ja PowerPivot

Päivitetty 21.1.2016

Yritän tässä artikkelissa selventää kahta asiaa:

  • mitä Excelissä tarkoittaa tietomalli (data model)
  • miten tietomalli liittyy PowerPivotiin?

Tietomalli (Data model)

Perinteisesti pivot-taulukointeja laaditaan yhdestä taulukosta kerrallaan.
Toisiinsa liittyviä tietoja kuitenkin usein säilytetään eri taulukoissa. Näin esimerkiksi tietokannoissa. Tyypillisesti tietokannat ovat relaatiotietokantoja, joissa taulukoiden väliset yhteydet (relaatiot) muodostetaan yhteisten tietojen avulla.

Esimerkki. Myyntitapahtumat voidaan tallentaa omaan taulukkoonsa. Taulukkoon voidaan tallentaa myydyn tuotteen tuotenumero, mutta ei välttämättä muita tietoja tuotteesta. Muut tuotteeseen liittyvät tiedot ovat tuotetietoja sisältävässä taulukossa. Yhteys (relaatio) taulujen välille muodostuu tuotenumeron avulla. Tuotenumero siis löytyy sekä myyntitapahtumien taulukosta että tuotetietojen taulukosta.

Excel 2013 lähtien voin yhdistää useamman taulukon tietomalliksi. Tietomallista voin laatia yhteenvetoja pivot-taulukoina.

Tietomallin muodostaminen

Käytän seuraavassa esimerkkitiedostoa datamodel.xlsx, jonka tiedot pohjautuvat julkisesti saatavilla olevaan AdventureWorks tietokantaan (http://msftdbprodsamples.codeplex.com/) tai tarkkaan ottaen sen Access-muotoiseen versioon (http://adventureworksaccess.codeplex.com/).

Esimerkkitiedostossa on Data-taulukko, johon on koottu tietoja yksittäisistä tilauksista ja SalesManagers-taulukko, jossa on tieto kunkin tuoteryhmän myyntipäälliköstä (SalesManager) ja myyntipäällikon toimiston (Office) sijainnista. Molemmista taulukoista löytyy yhdistävänä tietona tuoteryhmä (ProductCategory).

Otan tavoitteekseni pivot-taulukon, johon lasken myyntimäärät toimiston sijainnin mukaan jaoteltuna. Myyntimäärät löydän Data-taulukosta ja toimistot SalesManagers-taulukosta.

  • Valitsen yhden solun Data-taulukon aineistosta
  • Valitsen Insert – PivotTable (Lisää – Pivot-taulukko)
  • Create PivotTable -ikkunasta valitsen Add this data to the Data Model (Lisää tämä tieto tietomalliin) ja napsautan OK.

powerpivot12

  • Raahaan SalesAmount-kentän Values (Arvot) -ruutuun, koska haluan laskea myyntimääriä
  • Valitsen kenttäluettelosta näytettäväksi aktiivisen taulukon sijasta kaikki taulukot valitsemalla All (Kaikki)
  • Raahaan SalesManagers-taulukon Office-muuttujan Rows (Rivit) -ruutuun. Tämän jälkeen kenttäluetteloon ilmestyy huomautus: Relationship between tables may be needed (Taulukoiden välisiä suhteita voidaan tarvita). Napsautan CREATE (LUO)luodakseni taulukoiden välille yhteyden.

powerpivot13

Luon yhteyden alla näkyvän mallin mukaan. Ylemmässä taulukossa yhdistävä kentän arvot voivat esiintyä taulukossa moneenkin kertaan, mutta alemmassa taulukossa kukin yhdistävän kentän arvo saa esiintyä vain kerran (kukin tuotekategoria on SalesManagers-taulukossa vain kerran).

powerpivot14

Yhteyden luomisen jälkeen pivot-taulukko näyttää seuraavalta:

powerpivot15

Tietomalli ja PowerPivot

Tietomallin muodostamisen seurauksena tietomalli tallentuu PowerPivot-tietokannaksi vaikka käyttäjä ei sitä huomaakaan. PowerPivot-tietokanta tallentuu Excel-tiedoston mukana.

Jos PowerPivot-välilehti ei ole käytettävissä, niin ota se käyttöön:

  • Valitsen File – Options – Add-Ins (Tiedosto – Asetukset – Apuohjelmat)
  • Valitsen alareunan pudotusvalikosta COM Add-ins (COM-apuohjelmat) ja napsautan Go (Siirry) -painiketta

powerpivot10

  • Valitsen Microsoft Office PowerPivot for Excel
  • OK.

Tämän jälkeen käytössäni on POWERPIVOT-välilehti.

 

Mainokset