Hae it-yrityksiä
osaamisalueittain:

Asiakkuudenhallinta CRM BI ja raportointi HR Tuotekehitys ja suunnittelu Toiminnanohjaus ERP Taloushallinto Markkinointi Webkehitys Mobiilikehitys Käyttöliittymäsuunnittelu Tietoturva Verkkokaupparatkaisut Ohjelmistokehitys Integraatiot Pilvipalvelut / SaaS Tekoäly (AI) ja koneoppiminen Lisätty todellisuus ja VR Paikkatieto GIS IoT Microsoft SAP IBM Salesforce Amazon Web Services Javascript React PHP WordPress Drupal

Big datan hallinta ja analysointi Power BI:n avulla web-ympäristössä

BloggausNodeon on useiden vuosien ajan kehittänyt liikennetietojen hallintaan keskittyviä pilvipohjaisia järjestelmiä kaupunkien, liikennesuunnittelijoiden ja -tutkijoiden tarpeisiin. Liikennetietojen hallinnassa kyse on aina hyvin suurista tietomassoista. Tietoa ja erityisesti siitä tehtäviä analyysejä kohtaan asetetaan erittäin monipuolisia vaatimuksia. Nämä piirteet ovat varmasti tuttuja myös muidenkin toimialojen IoT-, tietovarastointi- ja analysointiratkaisuissa.

Nodeon aloitti liikennetietojen parissa tehtävän tuotekehitystoiminnan luultavasti hyvin samankaltaisin eväin, kuin monet muutkin. Web-pohjaista keskitettyä tietojen keruu- ja analysointiympäristöä lähdettiin kehittämään kyvykkään pilvialustan päälle (Microsoft Azure) ja tiedon visualisointiin valittiin monipuolisia ominaisuuksia sisältävä graafikomponenttikirjasto. Ensimmäiset kehitysaskeleet tapahtuvat sujuvasti ja työ päästään tekemään rauhassa. Tuoteomistaja ja ensimmäiset asiakkaatkin ovat tyytyväisiä. Yhtäkkiä ollaan kuitenkin tilanteessa, jossa datan määrä jatkaa kasvuaan ja vaatimukset jos jonkinlaisille uusille näkymille ja tunnusluvuille kasvavat. Uusien analyysien tekeminen on työlästä ja vaati runsaasti sekä tietokanta- että käyttöliittymätyötä. Työjonot kasvavat ja tyytymättömyys yrityksen toimintaa ja ratkaisun kehitystä kohtaan kasvaa.

Yhtäkkiä ollaan kuitenkin tilanteessa, että datan määrä jatkaa kasvuaan ja vaatimukset jos jonkinlaisille uusille näkymille ja tunnusluvuille kasvavat.

Kuinka käyttöliittymän kehitystyötä ja kehittyneiden data-analyysien luomista voidaan nopeuttaa? Tämä kysymys nousi meillä esille noin vuoden kehitystyön jälkeen. Vaatimuksiksi tälle kehitystyölle asetettiin, että uuden ratkaisun tulisi keventää erityisesti visuaalista käyttöliittymän kehitystyötä, tietokannoissa tapahtuvaa itse kehitettyä laskentaa olisi hyvä saada kevennettyä ja ratkaisu ei saisi lisätä kohtuuttomasti yrityksen ja/tai asiakkaiden kustannuksia. Kaiken tämän lisäksi tietysti entistä näyttävämmät ja monipuolisemmat analyysit olisivat iso plussa.

Kuinka käyttöliittymän kehitystyötä ja kehittyneiden data-analyysien luomista voidaan nopeuttaa?

Aika monta vaatimusta ja suunnittelunvaiheen jälkeen päätimme kääntää katseemme kohti Microsoftin Power BI -alustaa.  Web-ympäristö ja jatkuvasti kasvava ympäristöä käyttävä asiakasjoukko asettivat kuitenkin omia erityisvaatimuksia tekniselle toteutukselle. Tämä ohjasi meidät tutkimaan Power BI:n embedded-toiminnallisuuksia. Tarkoituksena oli upottaa Power BI:llä rakennetut raportit saumattomasti interaktiiviseksi osaksi olemassa olevaa web-sovellusta.

Meillä oli tässä vaiheessa jo käyttäjiä, joilla oli tietysti tunnukset järjestelmään. Emme halunneet heidän joutuvan huolehtimaan ylimääräisistä lisensseistä, joten valitsimme käyttöön Power BI:n App Owns Data -mallin (nykyisin myös "Embed for customers"). Tässä mallissa luodaan vain yksi master-tunnus, jonka oikeuksia Power BI -palvelu käyttää ladatessaan dataa. Tietysti meidän tuli myös varmistaa, että asiakkaat näkevät vain itselleen kuuluvan datan. Koska pellin alla toimiva master-tunnus on kaikille sama, oli lisäksi käytettävä käyttäjän identiteettiä osana Row Level Securitya (RLS). Käytännössä käyttäjän perusteella rajattiin käyttöliittymän kartalla näkyviä objekteja, sekä raportilla näkyvää dataa.

Ensimmäisissä versioissa käytimme suoraan raportin sisäisiä kontrolleja (esimerkiksi päivämäärävalintoja) datan suodattamiseen, mutta myöhemmin koimme ne visuaalisilta piirteiltään liian rajoittaviksi, ja integroimme mukaan myös itse tehtyjä, raportin ulkopuolisia kontrolleja. Itse tehdyt suodattimet keskustelevat raportin kanssa JavaScript-rajapinnan kautta. Tämä on osittain askel taaksepäin Power BI:n tuomasta helppoudesta, mutta tahdoimme löytää meille oikean toteutuksen helppokäyttöisyyden ja muokattavuuden suhteen, ja tähän olemme olleet tyytyväisiä. Kun tilanne sen sallii, voimme yhä käyttää nopeasti luotavia raportin sisäisiä suodattimia, ja visuaalisesti tai muutoin vaativammissa tapauksissa voimme luoda kontrollit ja niiden logiikan itse. Mikäli vaatimus omalle kontrollille on puhtaasti visuaalinen, niin toteutusta voidaan nopeuttaa ohjaamalla omalla kontrollilla suoraan raportilla olevaa valmista, näkymättömäksi asetettua suodatinta.

Tahdoimme löytää meille oikean toteutuksen helppokäyttöisyyden ja muokattavuuden suhteen.

Kuvassa valitun mittapisteen tiedot sisältävä osio sekä suodatusvalinnat on rakennettu itse. Varsinainen Power BI -upotus on sivun alaosassa. Jo pelkästään valitsemalla raporttiin ja sivun muihin osiin samat värt, näyttäytyy kokonaisuus käyttäjälle varsin yhtenäisenä. Visuaalisista syistä myös raportin eri sivujen välillä navigointi on toteutettu itse sen sijaan, että käytettäisiin raportin omia painikkeita. Tämän johdosta voimme myös paremmin kontrolloida, mitkä sivut näkyvät kellekin.

Myöhemmin, kun skaalasimme palvelua suuremmalle käyttäjä- ja datamäärälle, otimme käyttöön myös Azure Analysis Servicesin (AAS) tietovaraston ja raportoinnin väliin. Tällä saimme nopeutettua hitaimpia kyselyitä moninkertaisesti, ja varmistimme, että järjestelmällä on valmius käsitellä myös kaikkea tulevaa dataa, jota tässä vaiheessa on kertynyt kantaan jo pari miljardia riviä. Dataa pystyttiin tästä summaamaan meidän tapauksessamme jonkin verran, mutta vaatimuksena oli pystyä raportoimaan mille tahansa mittapisteelle ja valitulle aikavälille liikennemäärät ja keskinopeudet sekä voida porautua jopa 15 minuutin tarkkuuteen.

Myöhemmin, kun skaalasimme palvelua suuremmalle käyttäjä- ja datamäärälle, otimme käyttöön myös Azure Analysis Servicesin (AAS) tietovaraston ja raportoinnin väliin.

Power BI toi paljon nopeutta ja helppoutta raporttien kehitykseen. Ensin toki raportin ja tietomallin rakentaminen tyhjästä otti tovin, mutta sen jälkeen uusien graafien lisääminen ja vanhojen muokkaaminen on ollut todella nopeaa. Korjauksien ajaminen tuotantoon kestää parhaimmillaan vain muutamia minuutteja. Nopeuden lisäksi Power BI on mahdollistanut myös entistä useamman henkilön osallistumisen raporttien kehitykseen, kun graafien piirtämiseen ei enää tarvita koodaustaitoja.

Pinterest
Nodeon logo

Lisätietoja

Yritysprofiili Nodeon kotisivut

Tagit

Jos tarjontatagi on sininen, pääset klikkaamalla sen kuvaukseen

Liiketoimintaprosessi

BI ja raportointi

Erikoisosaaminen

Analytiikka
Big Data
IoT

Toimialakokemus

Kuljetus, liikenne ja logistiikka

Teknologia

Azure
Microsoft

Tarjonnan tyyppi

Konsultointi
Toteutustyö

Siirry yrityksen profiiliin Nodeon kotisivut Yrityshaku Referenssihaku Julkaisuhaku

Nodeon - Asiantuntijat ja yhteyshenkilöt

Nodeon - Muita referenssejä

Nodeon - Muita bloggauksia

Digitalisaatio & innovaatiot blogimedia

Blogimediamme käsittelee tulevaisuuden liiketoimintaa, digitaalisia innovaatioita ja internet-ajan ilmiöitä

Etusivu Yrityshaku Pikahaku Referenssihaku Julkaisuhaku Blogimedia