Jaa


Semanttiset mallitilat Power BI -palvelu

Tässä artikkelissa on Power BI:n semanttisen mallin tilojen tekninen selitys. Se koskee semanttisia malleja, jotka edustavat reaaliaikaista yhteyttä ulkoisesti isännöitävään Analysis Services -malliin, sekä Power BI Desktopissa kehitettyjä malleja. Artikkelissa painotetaan kunkin tilan käyttöperusteita ja mahdollisia vaikutuksia Power BI -kapasiteetin resursseihin.

Kolme semanttista mallitilaa ovat seuraavat:

Tuontitila

Tuontitila on yleisin semanttisten mallien kehittämiseen käytetty tila. Tämä tila tarjoaa nopean suorituskyvyn muistissa olevien kyselyiden ansiosta. Sen avulla mallintajat voivat myös suunnitella joustavasti ja tukea tiettyjä Power BI -palvelu ominaisuuksia (Q&A, Nopeat merkitykselliset tiedot jne.). Näiden vahvuuksien vuoksi se on oletustila uutta Power BI Desktop -ratkaisua luotaessa.

On tärkeää ymmärtää, että tuodut tiedot tallennetaan aina levylle. Kun tietoihin tehdään kysely tai päivitys, ne on ladattava täysin Power BI -kapasiteetin muistiin. Kun tuontimallit ovat muistissa, kyselyiden tulokset voidaan saada hyvin nopeasti. On myös tärkeää ymmärtää, että tuontimallia ei voi ladata osittain muistiin.

Kun tiedot päivitetään, ne pakataan ja optimoidään, ja VertiPaq-säilömoduuli tallentaa ne levylle. Kun se ladataan levyltä muistiin, on mahdollista nähdä 10-kertainen pakkaus. On siis kohtuullista odottaa, että 10 Gt lähdetietoja voi pakata kooltaan noin 1 Gt. Tallennus levyn koko voi pienenee 20 % pakatusta koosta. Kokoero voidaan määrittää vertaamalla Power BI Desktop -tiedostokokoa Tehtävienhallinnassa käytettävään tiedoston muistinkäyttöön.

Rakenteen joustavuus voidaan saavuttaa kolmella tavalla:

  • Integroida tietoja tallentamalla välimuistiin tietovoiden ja ulkoisten tietolähteiden tietoja, olipa tietolähteen tyyppi tai muoto mikä tahansa.
  • Käytä koko Power Query M -kaavakieltä, jota kutsutaan M-kieleksi, kun luot tietojen valmistelukyselyitä.
  • Käytä kaikkia Data Analysis Expressions (DAX) -funktioita, kun mallia parannetaan liiketoimintalogiikalla. Laskettuja sarakkeita, laskettuja taulukoita ja mittareita tuetaan.

Kuten seuraavasta kuvasta näkyy, tuontimalli voi integroida tietoja kuinka monista tuetuista tietolähdetyypeistä tahansa.

Diagram shows an Import model can integrate data from any number of external data source types.

Tuontimalleihin liittyy houkuttelevia etuja, mutta haittapuoliakin on:

  • Koko malli on ladattava muistiin, ennen kuin Power BI voi suorittaa mallissa kyselyn, mikä voi aiheuttaa painetta käytettävissä oleviin kapasiteettiresursseihin, varsinkin kun tuontimallien määrä ja koko kasvavat.
  • Mallitiedot ovat vain yhtä ajankohtaisia kuin viimeisin päivitys, joten tuontimallit on päivitettävä, mikä tehdään yleensä ajoitteltuna.
  • Täysi päivitys poistaa kaikki tiedot kaikista taulukoista ja lataa ne uudelleen tietolähteestä. Tämä operaatio voi olla kallista ajan ja resurssien suhteen Power BI -palvelu ja tietolähteille.

Muistiinpano

Power BI voi toteuttaa lisäävän päivityksen, jolloin kokonaisia taulukoita ei tarvitse katkaista ja ladata uudelleen. Lisätietoja, mukaan lukien tuetut palvelupaketit ja käyttöoikeudet, on artikkelissa Semanttisten mallien lisäävä päivitys ja reaaliaikaiset tiedot.

Tuontimallit vaativat Power BI -palvelu resurssien näkökulmasta:

  • Riittävästi muistia mallin lataamiseen, kun siihen kohdistaa kysely tai se päivitetään.
  • Käsittelet resursseja ja lisää muistiresursseja tietojen päivittämiseksi.

DirectQuery-tila

DirectQuery-tila on tuontitilan vaihtoehto. DirectQuery-tilassa kehitetyt mallit eivät tuo tietoja. Sen sijaan ne koostuvat vain metatiedoista, jotka määrittävät mallin rakenteen. Kun malliin tehdään kysely, alkuperäisiä kyselyitä käytetään tietojen noutamiseen pohjana olevasta tietolähteestä.

Diagram shows how DirectQuery model issues native queries to the underlying data source.

DirectQuery-mallin kehittämistä kannattaa harkita kahdesta syystä:

  • Jos tietomäärät ovat liian suuria, vaikka tietojen vähentämismenetelmiä otetaan käyttöön, niitä voidaan ladata malliin tai käytännöllisesti päivittää.
  • Kun raporttien ja koontinäyttöjen on tuotettava lähes reaaliaikaisia tietoja, mikä ylittää ajoitetun päivityksen rajoitukset. Ajoitetun päivityksen rajoitukset ovat kahdeksan kertaa päivässä jaetun kapasiteetin osalta ja 48 kertaa päivässä Premium-kapasiteetin osalta.

DirectQuery-malleihin liittyy useita etuja:

  • Tuontimallin kokorajoitukset eivät päde.
  • Mallit eivät edellytä ajoitettua tietojen päivittämistä.
  • Raportin käyttäjät näkevät uusimmat tiedot käyttäessään raportin suodattimia ja osittajia. Lisäksi raportin käyttäjät voivat päivittää koko raportin nykyisten tietojen noutamiseksi.
  • Reaaliaikaisia raportteja voidaan kehittää käyttämällä Automaattinen sivun päivitys -toimintoa.
  • DirectQuery-malleihin perustuvat koontinäytön ruudut voivat päivittyä automaattisesti 15 minuutin välein.

DirectQuery-malleihin liittyy kuitenkin joitakin rajoituksia:

  • Power Query-/Mashup-lausekkeet voivat olla vain funktioita, jotka voidaan transponoita alkuperäisiin kyselyihin, jotka tietolähde ymmärtää.
  • DAX-kaavat on rajoitettu käyttämään vain funktioita, jotka voidaan transponoita alkuperäisiin kyselyihin, jotka tietolähde ymmärtää. Laskettuja taulukoita ei tueta.
  • Nopeat merkitykselliset tiedot ominaisuuksia ei tueta.

DirectQuery-mallit vaativat Power BI -palvelu näkökulmasta

  • Vain vähän muistia mallin lataamiseen (vain metatiedot), kun malliin kohdistaa kysely.
  • Joskus Power BI -palvelu on käytettävä huomattavasti prosessorin resursseja, jotta se voi luoda ja käsitellä tietolähteeseen lähetettyjä kyselyitä. Jos tällainen tilanne ilmenee, se voi vaikuttaa siirtomäärään, erityisesti silloin, kun useat käyttäjät tekevät malliin kyselyjä.

Lisätietoja on artikkelissa DirectQueryn käyttö Power BI Desktopissa.

Yhdistelmätila

Yhdistelmämalli voi yhdistellä tuonti- ja DirectQuery-tiloja tai integroida useita DirectQuery-tietolähteitä. Yhdistelmätilassa kehitetyt mallit tukevat tallennustilan määrittämistä kullekin mallitaulukolle. Tämä tila tukee myös laskettuja taulukoita, jotka on määritetty DAX:n avulla.

Taulukon tallennustilaksi voidaan määrittää Tuonti, DirectQuery tai Kaksois. Kaksois-tallennustilaksi määritetty taulukko on sekä Tuonti että DirectQuery, ja tämän asetuksen avulla Power BI -palvelu voivat määrittää kyselykohtaisesti tehokkaimman käytettävän tilan.

Diagram shows that a Composite model is a combination of Import and DirectQuery storage modes, configured at table level.

Yhdistelmämallit pyrkivät toteuttamaan sekä tuonti- että DirectQuery-tilan parhaat puolet. Kun ne on määritetty oikein, ne voivat yhdistää muistissa olevien mallien suuren kyselyn suorituskyvyn ja mahdollisuuden noutaa tietolähteistä lähes reaaliaikaisia tietoja.

Lisätietoja on artikkelissa Yhdistelmämallien käyttäminen Power BI Desktopissa.

Puhtaan tuonnin ja DirectQuery-taulukot

Yhdistelmämalleja kehittävät tietomallintajat määrittävät luultavasti dimensiotyyppisiä taulukoita tuonti- tai kaksoistallennustilassa sekä faktatyyppisiä taulukoita DirectQuery-tilassa. Lisätietoja mallitaulukkojen rooleista on artikkelissa Tutustu tähtirakenteeseen ja sen merkitykseen Power BI:ssä.

Ajatellaan esimerkiksi mallia, jossa on ulottuvuustyyppinen Tuote-taulukko Kaksois-tilassa ja faktatyyppinen Myynti-taulukko DirectQuery-tilassa. Product-taulukkoon voidaan lähettää kysely nopeasti ja tehokkaasti muistista raportin osittajan hahmontamiseksi. Myös Myynti-taulukkoon voidaan tehdä kysely DirectQuery-tilassa käyttämällä liittyvää Tuote-taulukkoa. Jälkimmäinen kysely mahdollistaa yhden tehokkaan alkuperäisen SQL-kyselyn luonnin, joka liittää Tuote- ja Myynti-taulukot, ja suodattaa osittajan arvojen mukaan.

Yhdistelmätaulukot

Yhdistelmämalleja kehittävät tietomallintajat voivat myös määrittää faktataulukoita yhdistelmätaulukoiksi. Hybriditaulukko on taulukko, jossa on yksi tai useita tuontiosioita ja yksi DirectQuery-osio. Yhdistelmätaulukon etuna on, että se voidaan lähettää tehokkaasti ja nopeasti muistissa olevasta kyselystä samalla kun siihen sisällytetään viimeisimmän tuontijakson jälkeen tapahtuneen tietolähteen uusimmat tietojen muutokset, kuten seuraavassa visualisoinnissa esitetään.

Screenshot shows a hybrid table partition with Archived, Incremental refresh, and Real time rows marked.

Helpoin tapa luoda yhdistelmätaulukko on määrittää lisäävän päivityksen käytäntö Power BI Desktopissa ja ottaa käyttöön Hae uusimmat tiedot reaaliaikaisesti DirectQueryllä (vain Premium). Kun Power BI ottaa käyttöön lisäävän päivityskäytännön, jossa tämä asetus on käytössä, se osioi taulukon, kuten edellisessä kaaviossa näkyvän osiointimallin. Varmista hyvä suorituskyky määrittämällä dimensiotyypin taulukot kaksoistallennustilan tilaan niin, että Power BI voi luoda tehokkaita alkuperäisiä SQL-kyselyitä DirectQuery-osiota suoritettaessa.

Muistiinpano

Power BI tukee yhdistelmätaulukoita vain, kun semanttista mallia isännöidään Premium-kapasiteettien työtiloissa. Näin ollen sinun on ladattava semanttinen mallisi Premium-työtilaan, jos määrität lisäävän päivityskäytännön ja vaihtoehdon saada uusimmat tiedot reaaliaikaisesti DirectQueryllä. Lisätietoja on artikkelissa Lisäävä päivitys ja semanttisten mallien reaaliaikaiset tiedot.

Tuontitaulukko voidaan myös muuntaa yhdistelmätaulukoksi lisäämällä DirectQuery-osio TMSL:n (Tabular Model Scripting Language) tai tom-objektimallin (Tabular Object Model) avulla tai käyttämällä kolmannen osapuolen työkalua. Voit esimerkiksi osioida faktataulukon siten, että suurin osa tiedoista jätetään tietovarastoon, kun taas vain murto-osa uusimmista tiedoista tuodaan. Tämä lähestymistapa voi auttaa suorituskyvyn optimoinnissa, jos suurin osa näistä tiedoista on historiallisia tietoja, joita käytetään harvoin. Hybriditaulukolla voi olla useita tuontiosioita, mutta vain yksi DirectQuery-osio.