Power BI Dataflows – enemmän aikaa tiedon analysointiin
Power BI Dataflows – enemmän aikaa tiedon analysointiin
Power BI on mitä mainioin itsepalvelu-BI-työkalu. Se sisältää monipuoliset tietolähdeyhteydet, ETL-työkalun, tehokkaan muistinvaraisen kuution sekä raportointityökalut samassa paketissa. Itse asiassa niin tiiviissä paketissa, että kertaalleen tehdyn ratkaisun uudelleenkäyttö järkevästi on ollut lähes mahdotonta.
Power BI -raportin kuution pystyy toki siirtämään Azure Analysis Services -kuutioksi pienen kikkailun jälkeen, mutta ETL-työkalulla eli Power Queryllä toteutettuja datasettejä ei ole voinut uudelleenkäyttää muuten kuin kopioimalla M-koodi raportista toiseen. Power BI Dataflows poistaa tämän tuskan! Sillä toteutettu Power Query -datasetti on helposti liitettävissä toisiin Power BI -raportteihin sekä myös muihin Azure Data Platform -tuotteisiin. Väitän, että tällä ratkaisulla pystytään säästämään melkoinen määrä aikaa ja rahaa yrityksissä, joissa Power BI on laajasti käytössä. Aikaa jää enemmän tiedon analysointiin, kun data on valmiiksi pureskeltu ja jaettu Dataflow:n kautta.
Kuinka Power BI DataFlows otetaan käyttöön?
Teknisestä näkökulmasta Power BI Dataflows on irrallinen Power Query -prosessi, joka toimii Power BI -palvelussa. Yksi Dataflow voi koostua useammasta erillisestä tai linkitetystä tietojoukosta. Näitä tietojoukkoja voi ottaa helposti käyttöön Power BI -raportissa Power BI Dataflows -datalähteen kautta. Preview-vaiheessa ollut datalähde on nyt virallisesti saatavilla Power BI Desktopin April 2019 -julkaisussa (ks. kuva)
Oletusasetuksilla Dataflow tallentaa tiedot Power BI:n sisäiseen storageen ja siihen ei ole pääsyä muuten kuin Dataflow:n kautta. Tämä on kuitenkin mahdollista muuttaa niin että data tallennetaan organisaation Azure Data Lake Storage Gen2:een, mikä taas avaa ovet datan käyttämiseen myös muilla Azuren työkaluilla. Data Laken käyttö vaatii tietysti voimassaolevan Azure-tilauksen. Hyvät ohjeet ADLS Gen2:n liittämiseen löytyy täältä. Kun ADLS Gen2 on luotu, asetettu tarvittavat oikeudet Power BI Service, Power BI Premium ja Power Query -tunnuksille sekä Power BI admin -portaalin kautta liitetty Data Lake käyttäjän Power BI -tenanttiin, näyttää lopputulos tältä:
Power BI Dataflow ADLS Gen2:ssa
Miten data sitten tallentuu ADLS Gen2:een? Testasin tätä yksinkertaisella esimerkillä ja siirsin Power BI -raportista Calendar-taulun Dataflow-datasetiksi.
Power Query -editori on lähes samanlainen kuin Power BI Desktop -työkalussa. Helppo tapa siirtää koodi desktopista on käyttää Power Queryn advanced-editoria. Ohessa kuva Calendar-taulun editointinäkymästä siirron jälkeen.
Kun datasetti on valmis pitää se tietysti prosessoida ennen kuin data tallentuu Data Lakeen. Prosessointi on lähes identtinen verrattuna Power BI -datasetin vastaavaan. Prosessoinnin voi tehdä kertaluonteisesti tai sitten ajastaa.
Microsoftin dokumentaation mukaan data tallentuu ADSL Gen2:een CDM (Common Data Model) -rakenteeseen. Model.json sisältää datan metatiedot ja kukin datasetti on omassa kansiossa csv-tiedostoina (ks. kuva alla).
Calendar-demossa datarakenne ja hakemistot näkyvät alla. Huomattava on että model.json:lla on oma hakemisto josta löytyy tiedoston versiohistoria (model.json.snapshots).
Calendar-data on tallennettu hakemistoon Calendar.csv.snapshots. Datasta tallentuu useita eri versioista. Eli jokainen datan päivitys luo uuden version, ja model.json-tiedostossa on partitions-kohdassa viittaus viimeisimpään versioon. Nykyisestä Dataflow:n versiosta tähän ei löydy mitään konfigurointivaihtoehtoja eikä Microsoftin dokumentaatiossa ole näistä vielä mitään mainintaa. Ehkä “snapshottien” määrää ja muita vastaavia voi säätää Dataflow:n tulevissa päivityksissä.
Power BI Dataflow -lisensointi
Power BI Dataflow tuntuu olevan jo kohtalaisen valmis kokonaisuus, ja suosittelen ehdottomasti sen testaamista. Huomattava on kuitenkin, että kaikki samat datalähteet mitä löytyy Power BI Desktopista eivät vielä ole tuettuna Dataflow:ssa. Lista tällä hetkellä tuetuista lähteistä löytyy täältä. Lisäksi Dataflow toimii Power BI Pro -lisenssillä, mutta jos käytössä on Power BI Premium, pääsee nauttimaan sen kaikista ominaisuuksista.
Oheisessa taulukossa on tällä hetkellä tiedossa olevat erot ominaisuuksissa lisenssin mukaan:
Dataflow Capability | Pro | Premium |
Connectivity | All connectors to all sources | All connectors to all sources |
Storage | 10 GB per user | 100 TB for P1 or greater nodes |
Data ingestion | Serial ingestion of entities, making data refresh longer | Parallel ingestion of entities |
Incremental updates | Not available | Available |
References to entities in the same workspace | Not available | Available, allowing the creation of complex data prep processes using multiple dataflows |
References to entities across workspaces | Not available | Available, allowing full data consistency across the whole data estate |
Calculation engine | Not available, since entities cannot refer to other entities, computed entities cannot be created | Available, allowing computed entities for complex data prep projects with multiple cleansing and enrichment steps |
Refresh rates | Up to 8 times a day | Up to 48 times a day |
Automated Machine Learning (preview) | Not available | Available |
Cognitive Services (preview) | Not available | Available |
Milloin hyödyt Power BI Dataflow:n käytöstä?
Loppuun vielä ajatuksia siitä missä tilanteissa Dataflow:ta kannattaisi käyttää:
- Geneeristen
datasettien, kuten dimensioiden toteuttaminen. Esim. aikadimensiot,
organisaatiorakenteet, kustannuspaikat, tilihierarkiat, jne. - Excel-tiedostot,
jotka on tallennettu esim. Teamsiin tai Sharepoint-onlineen. Monesti näitä
tarvitsevat myös muut ja on paljon helpompaa ottaa datasetti käyttöön suoraan
Dataflow:sta. - Tilanteet,
joissa alkuperäiseen datasettiin ei ole mahdollista päästää useita käyttäjiä
tekemään raskaita kyselyitä samanaikaisesti. - Tilanteet,
joissa Power BI -raporttien toteuttajilla ei ole riittävää osaamista eivätkä he
tunne datalähteen liiketoimintalogiikkaa. - Silloin, kun
halutaan varmistaa, että mitään ylimääräistä ja tietoturvan kannalta
riskialtista dataa ei päädy raporteille ja analyyseihin. Näissä tilanteissa
tarjotaan valmiiksi käsitellyt datasetit Dataflow:n kautta raporteille.
Kaipaatko tukea Power BI:n käyttöönotossa tai hyödyntämisessä? Ota yhteyttä ja keskustellaan, kuinka voimme auttaa!
DB Pro Services
Lue myös:
Power BI raportoinnista
Master Data ja Master Datan hallinta osana Business Intelligence arkkitehtuuria
SQL-tietokanta – historia, nykytila ja tulevaisuus: historia
Power BI pro ja eri lisensiointimallit