Tampuuri BI ja avoin data – Case Helsingin kaupungin palvelut

Pidin lokakuussa Tampuuri -käyttäjäpäivillä esityksen Tampuuri BI:n hyödyntämisestä ja tietovarastojen mahdollisuuksista. Lupailin tuolloin tänne blogin puolelle step-by-step -tyyppisiä ohjeita käyttäjäpäivillä esittämiini toteutuksiin. Yksi näyttämistäni esimerkeistä oli Tampuurin datan yhdistäminen avoimeen dataan. Ensin kuitenkin muutama sana Tampuuri BI:stä ja avoimesta datasta:

Tampuuri BI

Tampuuri BI tarkoittaa visuaalisia ja vuorovaikutteisia raportteja Tampuurin tuottamasta datasta. Tampuurin data siirretään tietovarastoon (eng. data warehouse), josta käsin se koostetaan Microsoftin Power BI -ohjelmalla raportiksi. Tampuurin BI -raporttien avulla voit tarkastella vaikkapa ilmoitushallinnan ilmoitusten läpimenoaikoja tai seurata vuokrattavien asuntojen käyttöastetta kartalla. Voit jakaa Tampuuri BI -raportin kollegallesi tai ladata raporttien sisällön Exceliin.

Avoin data

Avoimella datalla tarkoitetaan tietoa, joka on avattu organisaation ulkopuolisille henkilöille vapaasti ja usein maksuttakin hyödynnettäväksi. Avoin julkinen data tarkoittaa sitä, että kuka hyvänsä voi käyttää tietoja omiin tarkoituksiinsa. Esimerkiksi Helsingin kaupunki tarjoaa avointa dataa osoitteessa www.hri.fi.

Mitä hyötyä avoimen datan ja Tampuurin datan yhdistämisestä sitten on? Usein erilaiset BI -ratkaisut tähtäävät kustannustehokkuuteen. Tähän päästään, kun keksitään nopeampia ja tehokkaampia tapoja tiedon esittämiseen ja hyödyntämiseen. Alla olevassa esimerkissä olen yhdistänyt Helsingin kaupungin palvelut samaan karttaan Tampuurin kohteiden kanssa. Kartan avulla yritys voi tarjota potentiaalisille tai miksei nykyisillekin asiakkailleen helpomman tai innovatiivisemman tavan asunnonhakuun näyttämällä vuokrattavat kohteensa kartalla ja lisäksi palvelut, joita kohteiden lähellä sijaitsee.

Mitkä asiat painavat, kun vuokra-asuntoa valitaan? Seniorikohteissa on tärkeää huomioida esteettömyys ja palveluiden läheisyys. Opiskelijakohteissa usein vuokran suuruus ratkaisee. Tällöin kohde ei ole palveluiden vieressä, jolloin esimerkiksi kulkuyhteydet palveluiden ääreen ja oppilaitoksiin korostuvat. Eri elämänvaiheissa erilaiset palvelut ovat tärkeitä: neuvolat, koulut, kirjastot, terveyskeskukset, urheilukentät, juna-asemat jne.

Seuravan DIY -ohjesetin lopputuloksena syntyy kartta, jossa näet samanaikaisesti Tampuurin kohteesi ja näiden lähellä sijaitsevat palvelut. Kartan voi halutessaan julkaista www-sivuilla ja linkittää vaikkapa suoraan asuntohakemukseen.

Käytännössä raportin koostamisen vaiheet ovat seuraavat:

  1. ladataan Tampuurista kohdetiedot Exceliin
  2. tuodaan Tampuurin kohdetiedot Power BI -ohjelmaan
  3. ladataan Helsingin kaupungin sivuilta palvelut REST -rajapinnan kautta
  4. ja yhdistetään em. lähteet Power BI -ohjelmassa, lisätään tarvittavat kentät
  5. ja tehdään tarvittavat visualisoinnit ja suodatukset
  6. ja lopuksi julkaistaan raportti Power BI -palvelussa

Ohjeet vaikuttavat pitkiltä, mutta vaiheet ovat nopeita. Microsoft Power BI:n voit ladata Microsoftin sivuilta.

Vaihe 1 – Tampuurin kohdetietojen vienti Exceliin

  1. Valitse Etusivu > Raportointi > Raportit > Kohderaportit
  2. Valitse Yleiset massaraportit otsakkeen alta Raportti -Kohdetiedot
  3. Valitse aukeavasta ikkunasta Kohdetietoraportti
  4. Kohdetietoraportissa valitaan ainakin Tunnus, Nimi, Osoite, Paikkakunta (Postitoimipaikka) kentät Kustannuspaikalta (Yhtiöltä). Nämä tiedot ovat raportoinnin runko.
  5. Raportin data otetaan ulos Excel -taulukoksi, eli valitaan tuo kohta vientiasetuksista.
  6. Tallenna Excel -tiedosto koneellesi

Vinkki. Tarkat ohjeet kohdetietojen lataamiseen kuvineen löydät myös aiemmasta blogipostauksesta dyi-microsoft-powerbi-ja-tampuuri.

Vaihe 2 – Tampuurin kohdetietojen tuonti Power BI:hin

  1. Ladataan Tampuurin kohdetiedot Power BI -ohjelmaan valitsemalla Home -valikosta Get Data ja sieltä From Excel.
  2. Valitse äsken lataamasi Excel -tiedosto.
  3. Jos huomaat, että postinumerot eivät sisällä ”etunollia”, paina tässä kohtaa Edit -painiketta ja tämän jälkeen valitse Postinumero -kentän kohdalla hiiren oikea painike ja valitse Change Type -kohdan alta Text.  Valitse vielä Replace current.

  1. Valitse Close and Apply sivun oikeasta yläkulmasta. Olet nyt tuonut kohdetiedot onnistuneesti Power BI -ohjelmaan ja tuodut kentät näkyvät Power BI:n Fields -välilehden takana oikealla.

Vaihe 3 – Lataa Helsingin kaupungin palvelut REST -rajapinnasta

  1. Mene osoitteeseen http://www.hri.fi/fi/dataset/paakaupunkiseudun-palvelukartan-rest-rajapinta
  2. Klikkaa REST -rajapinta kuvaketta sivun alareunasta
  3. Sivu http://www.hel.fi/palvelukarttaws/rest/ver4_en.html aukeaa
  4. Valitse kohdasta ”Address to retrieve units” URL http://www.hel.fi/palvelukarttaws/rest/v4/unit/. Seuraava sivu aukeaa. Älä hermostu vielä, vaikka sivulla on runsaasti tekstiä ja se näyttää hurjalta 😊.
  5. Kopioi URL -osoite talteen.
  6. Avaa Microsoft Power BI desktop
  7. Valitse Home -valikon alta löytyvä Get Data -valikko ja sieltä Web
  8. Aukeaa uusi ikkuna, johon syötät äsken kopioimasi URL:n.
  9. Paina Ok. Kestää jonkin aikaa ja uusi ikkuna aukeaa.

  1. Valitse vasemmasta yläreunasta To Table ja seuraavasta ikkunasta Ok

Power BI dataa REST -lähteestä

  1. Nyt sinulla pitäisi näkyä Column1, jonka alla on rivejä, joissa lukee Record. Column1 sanan vieressä on oikealla nuolipainike. Klikkaa sitä ja valitse Ok

  1. Huomaat, että taulun sarakkeisiin ja riveihin tuli selkokielistä sisältöä.

  1. Paina ikkunan vasemmasta yläreunasta painiketta Close & Apply.
  2. Jälleen kerran kestää hetken ja tämän jälkeen oikeaan reunaan, Fields -osioon on tullut kenttiä. Loistavaa!
  3. Selvyyden vuoksi, suosittelen tässä vaiheessa nimeämään taulun kilkkaamalla hiiren oikeaa nappia Query1 sanan päällä oikealla ja valitsemalla Rename. Voit nimetä taulun esimerkiksi nimellä units.

Vinkki. Tässä vaiheessa voit tutkia, mitä tietoja taulujen sisällä on esimerkiksi raahaamalla kentät Fields valikon alta valkoiselle sivulle vasemmalle. Voit myös tallentaa raportin tässä vaiheessa ja palata jatkamaan raportin koostamista myöhemmin.

Vaihe 4 – Tampuurin kohteiden ja Helsingin kaupungin kohteiden yhdistäminen

Nyt meillä on kaksi taulua Power BI -ohjelmassa. Toisessa meillä on palveluita ja toisessa Tampuurin kohteita. Haluamme näyttää kohteet kartalla eri värisellä pallolla kuin palvelut. Jotta tämä olisi mahdollista, meidän tulee yhdistää nämä kaksi taulua yhdeksi. Jotta Power BI ymmärtää, että Tampuurin kohdetietojen kenttä ”Katuosoite” on sama kuin Helsingin kaupungin rajapinnan kohta ”Column1.street_address_fi”, meidän tulee nimetä osa kentistä uudelleen. (Kahden taulukon datan yhdistämiseen on muitakin vaihtoehtoisia tapoja, mutta selvyyden vuoksi tässä on päädytty yhteen)

  1. Muuta units -taulun sarakkeet seuraavasti:
    1. Column1.name_fi –> Nimi
    2. Column1.street_address_fi –> Katuosoite
    3. Column1.address_city_fi –> Postitoimipaikka
    4. Column.1address_zip –> Postinumero

Seuraavaksi on edessä ehkä tämän ohjesetin haastavin osuus. Yhdistetään kaksi taulua yhdeksi. (Tässä vaiheessa voi käydä hakemassa täydennystä kahvikuppiin)

  1. Valitse vasemmasta reunasta Data -kuvake (toiseksi ylimmäinen)
  2. Tämän jälkeen valitse Home -valikon alta Edit Queries ja vielä kerran Edit Queries
  3. Uusi ikkuna Query Editor aukeaa. Valitaan oikeasta reunasta vaihtoehto Append Queries ja sieltä Append Queries as New.
  4. Valitse alla olevan kuvan mukaiset asetukset avautuvasta ikkunasta ja klikkaa Ok.

  1. Selvyyden vuoksi yhdistämme taulut units ja Kohdetiedot uudeksi tauluksi Append1 (jotta hahmotamme, että todella yhdistimme taulut)
  2. Lisätään tauluun sarake. Klikkaa hiiren oikeaa nappia taulun päällä. Valitse uusi sarake (column). Kirjoita yläreunan kaavan riville seuraava määre: KarttaOsoite = Append1[Katuosoite] & ”, ” & Append1[Postitoimipaikka] & ”, Finland”. Tässä yhdistämme katuosoitteen, kaupungin ja sanan “Finland” yhdeksi pötköksi, jotta Bingin kartta myöhemmin ymmärtää, missä kohteet sijaitsevat. Valitettavasti kartta ei tunnista kaikkia suomalaisia kaupunkeja tai kaupunginosia.

Power BI karttaosoitteen tekeminen

  1. Lisätään vielä uusi kenttä, jossa erotellaan Tampuurin kohde Helsingin kaupungin kohteista. Tämä saavutetaan seuraavasti: Lisää kenttä Tyyppi, kuten äskenkin ja anna arvoksi: Tyyppi = IF(ISBLANK(Append1[Tunnus]),”palvelu”,”vuokrakohde”). Edellä mainittu sarake käyttää DAX -kieltä ja tarkistaa, onko kentän Tunnus sisältö tyhjä, jolloin tiedämme, että kyseessä on kaupungin kohde ja muussa tapauksessa Tampuurin kohde. Tätä kenttää tarvitsemme myöhemmin, kun haluamme merkitä kartan pallot eri värillä.

Vaihe 5 – tehdään visualisoinnit ja suodatukset

Seuraavaksi alkaa mukavin osuus. Koostetaan kartta ja tehdään tarvittavat valikot.

  1. Valitse Visualizations valikon alta maapalloa muistuttava kuvake (kuvassa valittuna, keltaiset reunat ympärillä) ja vedä se valkoiselle alueelle ts. raportin sivulle.
  2. Vedä Fields -valikon alta kentät oikeille kohdille Visualizations -kohdan alle, ao. kuvan mukaisesti.

  1. Huomaat, että kartalle ilmestyy Tampuurin kohteesi sekä Helsingin kaupungin palveluiden kohteita.
  2. Seuraavaksi tehdään suodattimet, jonka avulla kartan kohteita voi suodattaa. Vedä raportin sivulle Postinumero ja Postitoimipaikka kentät, kummatkin omina visuaaleina ja vaihda tyypiksi slicer (kuvassa ensimmäinen vasemmalta alimmassa rivissä, jossa suppilon kuva)
  3. Lopputuloksena sinulla on nyt raportti, jossa voi valita joko kaupungin tai postinumeron ja kartta päivittyy sen mukaisesti näyttäen kohteesi ja kaupungin kohteet samalla kartalla. Kun viet hiiren pallon päälle, näyttää kartta, mistä on kyse.

Vaihe 6 – raportin julkaisu

  1. Valitse Publish -painike Home -valikon alta oikeasta reunasta
  2. Valitse tarvittaessa ”ryhmä”, johon julkaiset, esim. My Workspace.
  3. Avaa selain ja mene osoitteeseen app.powerbi.com. Avaa äsken luomasi raportti kohdasta Workspaces > My Workspace ja Reports.

  1. Jotta voit jakaa tai julkaista raportin, sinun tulee tehdä raportille koontinäyttö (dashboard). Yksinkertaisin tapa luoda koontinäyttö, on ”pinnata” visuaali eli karttagraafi koontinäytölle. Mene karttakuvakkeen oikeaan yläreunaan ja klikkaa nuppineulaa muistuttavaa ikonia.
  2. Tämän jälkeen klikkaa raportti auki ja valitse Tiedosto -> Publish to web ja sieltä vielä Create embed code ja Create.
  3. Valmista! Saat linkin, jonka voit jakaa sähköpostissa tai syöttää verkkosivustollesi (iframe)

Mitä seuraavaksi?

Kerrataan vielä, mitä edellä tapahtui. Toit Tampuurin kohdetiedot Excelin kautta Power BI -sovellukseen, jossa yhdistit Tampuurin kohteet Helsingin kaupungin avoimen datan palveluihin. Loit Power BI -raportin, johon visualisoit kohteita kartalle eri värein riippuen siitä, millaisesta kohteesta oli kyse. Lopuksi julkaisit Power BI -raportin nettiin ja loit raportille osoitteen, jonka voit sijoittaa verkkosivusi lähdekoodiin. Ohje oli pitkähkö, sillä raportin koostaminen sisälsi paljon yksityiskohtia, mutta lopputuloksena syntyi kuitenkin hieno visuaalinen toteutus, jota voit hyödyntää ja jatkokehittää.

Raporttia voisi kehittää tuomalla HRI:n sivuilta palveluiden kategoriat. Näin raportin käyttäjä voisi valita yhdeltä näkymältä näkyviin vaikkapa kaikki päiväkodit tai pelkät kirjastot. Palveluiden etäisyyksiä voisi myös laskea ”linnuntienä”. Kaupungin kohteet on ilmoitettu paikkatietoina (latitude ja longitude -koordinaatein). Tampuuriin on mahdollista myös merkitä nämä, jolloin voitaisiin laskea, kuinka lähellä jokin palvelu on, esimerkiksi Mannerheimintie 113 kohteen lähellä ovat seuraavat palvelut: päiväkoti 750m, Pikkuhuopalahden ala-aste 700m jne.

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out / Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out / Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out / Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out / Muuta )

Muodostetaan yhteyttä palveluun %s