Tietojen vähentämisen tekniikat tuonnin mallinnusta varten

Tämä artikkeli on suunnattu Power BI Desktopin tietomallintajille, jotka kehittävät tuontimalleja. Artikkelissa kuvataan eri tekniikoita, joiden avulla voit vähentää tuontimalleihin ladattuja tietoja.

Tuontimalleihin on ladattu pakattuja ja optimoituja tietoja, jotka VertiPaq-säilömoduuli tallentaa levylle. Kun lähdetiedot ladataan muistiin, 10-kertainen pakkaus on mahdollinen. On siis kohtuullista olettaa, että 10 Gigatavua lähdetietoja voidaan pakata noin 1 gigatavun kokoon. Lisäksi, kun ne tallennetaan pysyvästi levylle, 20 prosentin lisävähennys voidaan saavuttaa.

VertiPaq-säilömoduulin saavuttamista tehokkuuseduuksista huolimatta on tärkeää pyrkiä minimoimaan malleihin ladatut tiedot. Tämä pätee erityisesti suuriin malleihin tai malleihin, joiden odotetaan kasvavan suuriksi ajan myötä. Neljä vakuuttavaa syytä:

  • Kapasiteettisi ei välttämättä tue suurempia mallin kokoja. Jaettu kapasiteetti voi isännöidä enintään 1 gigatavun kokoisia malleja, kun taas Premium-kapasiteetit voivat isännöidä suurempia malleja SKU:n mukaan. Lisätietoja on artikkelissa Power BI Premiumin suurten semanttisten mallien tuki. (Semanttisia malleja kutsuttiin aiemmin tietojoukoiksi.)
  • Pienemmät mallikoot vähentävät kapasiteettiresursseista, erityisesti muistista, kiistoja. Tämän ansiosta enemmän malleja voidaan ladata samanaikaisesti entistä pidemmän aikaa, minkä tuloksena häätömäärät pienenevät.
  • Pienemmissä malleissa tietojen päivitys on nopeampaa, joten tuloksena on pienemmät viiveet raportoinnissa, suurempi semanttinen mallin päivityksen siirtomäärä ja vähemmän painetta lähdejärjestelmässä ja kapasiteettiresursseissa.
  • Pienemmät taulukon rivimäärät voivat johtaa nopeampaan laskutoimitusten arviointiin, mikä voi tuottaa kyselyssä paremman yleisen suorituskyvyn.

Tärkeä

Joskus tämä artikkeli viittaa Power BI Premiumiin tai sen kapasiteettitilauksiin (P-varastointiyksiköt). Ota huomioon, että Microsoft vahvistaa parhaillaan ostovaihtoehtoja ja poistaa käytöstä Kapasiteettikohtaisen Power BI Premiumin. Uusien ja nykyisten asiakkaiden kannattaa harkita Fabric-kapasiteettitilausten (F-varastointiyksiköiden) ostamista.

Lisätietoja on artikkelissa Power BI Premium -käyttöoikeuksien tärkeä päivitys ja Power BI Premiumin usein kysytyt kysymykset.

Tässä artikkelissa käsitellään kahdeksaa erilaista tietojen vähentämisen tekniikkaa. Näitä tekniikoita ovat esimerkiksi seuraavat:

Poista tarpeettomat sarakkeet

Mallitaulukon sarakkeilla on kaksi päätarkoituksia:

  • Raportoinnin avulla voi luoda raporttimalleja, jotka suodattavat, ryhmittelevät ja vetävät yhteen mallin tiedot asianmukaisesti
  • Mallin rakenne tukee mallin yhteyksiä, mallin laskutoimituksia, käyttöoikeusrooleja ja jopa tietojen värimuotoilua

Sarakkeet, jotka eivät palvele näitä tarkoituksia, todennäköisesti poistetaan. Sarakkeiden poistamista kutsutaan pystysuuntaiseksi suodattamiseksi.

Suosittelemme, että suunnittelet malleja, joissa on täsmälleen oikea määrä sarakkeita tunnettujen raportointivaatimusten perusteella. Vaatimukset voivat muuttua ajan mittaan, mutta muista kuitenkin se, että sarakkeita on helpompi lisätä kuin poistaa. Sarakkeiden poistaminen voi rikkoa raportit tai mallin rakenteen.

Poista tarpeettomat rivit

Mallitaulukoihin tulee ladata mahdollisimman vähän rivejä. Tämä voidaan toteuttaa lataamalla suodatetut rivijoukot mallitaulukoihin kahdesta eri syystä: suodattamalla entiteetin mukaan tai ajan mukaan. Rivien poistamista kutsutaan vaakasuuntaiseksi suodatukseksi.

Suodattamisessa entiteetin mukaan malliin ladataan lähdetietojen alijoukko. Esimerkiksi sen sijaan, että ladattaessa kaikkien myyntialueiden myyntitiedot ladataan, ladataan vain yhden alueen tiedot. Tämä rakennelähestymistapa saa aikaan useita pienempiä malleja. Se voi myös poistaa tarpeen määrittää rivitason suojaus (mutta tietyt semanttisen mallin käyttöoikeudet on myönnettävä Power BI -palvelu ja kuhunkin semanttiseen malliin yhdistyvien raporttien kaksoiskappaleiden luominen). Voit yksinkertaistaa hallintaa ja julkaisemista käyttämällä Power Query -parametreja ja Power BI:n mallitiedostoja. Lisätietoja on blogikirjoituksessa Syväkatsaus kyselyparametreihin ja Power BI:n malleihin .

Suodattaminen ajan mukaan tarkoittaa tietotyyppitaulukoihin ladatun tietohistorian määrän rajoittamista (ja mallin päivämäärätaulukoihin ladattujen päivämäärärivien rajoittamista). Suosittelemme, että et lataa automaattisesti kaikkea saatavilla olevaa historiaa, ellei se ole tiedossa oleva raportointivaatimus. On hyödyllistä ymmärtää, että aikaan perustuvia Power Query -suodattimia voidaan parametrisoitu ja jopa määrittää käyttämään suhteellisia ajanjaksoja (suhteessa päivityspäivämäärään, esimerkiksi viimeiset viisi vuotta). Muista myös, että aikasuodattimien taannehtivat muutokset eivät riko raportteja; Tämä johtaa vain siihen, että raporteissa on käytettävissä vähemmän (tai enemmän) tietohistoriaa.

Ryhmittelyperuste ja yhteenveto

Ehkä tehokkain menetelmä mallin koon pienentämiseen on esiyhteenvedon tietojen lataaminen. Tätä tekniikkaa voidaan käyttää faktatyyppisten taulukoiden suurentamiseen. On kuitenkin olemassa erillinen kompromissi, joka johtaa yksityiskohtien menettämiseen.

Esimerkiksi lähteen myyntitietotaulukkoon tallennetaan yksi rivi tilausriviä kohden. Tietojen määrää voidaan vähentää merkittävästi vetämällä yhteen kaikki myyntimittarit ja ryhmittelemällä päivämäärän, asiakkaan ja tuotteen mukaan. Ota huomioon, että tätäkin enemmän tietoja voidaan vähentää ryhmittelemällä päivämäärän mukaan kuukauden tasolla. Tällä tavalla mallin koko voi pienenee jopa 99 prosenttia, mutta raportointi päivän tasolla tai yksittäisen tilauksen tasolla ei ole enää mahdollista. Tietotyyppitietojen yhteenvedosta päättäminen edellyttää aina kompromisseja. Tätä kompromissia voidaan lieventää käyttämällä rakenteena yhdistelmämallia. Tätä käsitellään myöhemmin aiheessa Vaihda yhdistelmätilaan .

Sarakkeiden tietotyyppien optimoiminen

VertiPaq-säilömoduuli käyttää kullekin sarakkeelle erillisiä tietorakenteita. Suunnittelun mukaan näillä tietorakenteilla saavutetaan suurimmat optimoinnit numeerisissa saraketiedoissa, joissa käytetään arvon koodausta. Tekstissä ja muissa kuin numeerisissa tiedoissa käytetään kuitenkin hajautuskoodausta. Se edellyttää, että säilömoduuli antaa numeerisen tunnisteen kullekin sarakkeeseen sisältyvälle yksilöivälle tekstiarvolle. Kyseinen numeerinen tunniste tallennetaan tietorakenteeseen, mikä edellyttää hajautusarvon hakua tallennuksen ja kyselyn aikana.

Joissakin tietyissä tapauksissa lähdetekstin tiedot voidaan muuntaa numeereiksi arvoiksi. Esimerkiksi myynnin tilausnumeron eteen voidaan johdonmukaisesti lisätä tekstiarvo (esimerkiksi "SO123456"). Etuliite voidaan poistaa ja tilausnumeron arvo voidaan muuntaa kokonaisluvuksi. Suurissa taulukoissa tämä voi johtaa merkittävään tietojen vähentämiseen etenkin silloin, kun sarake sisältää yksilöiviä tai suuren kardinaliteetin arvoja.

Tässä esimerkissä suosittelemme, että asetat sarakkeen Oletusyhteenveto-ominaisuudeksi Älä tee yhteenvetoa -ominaisuuden. Se auttaa minimoimaan tilausnumeroarvojen sopimattoman yhteenvedon.

Mukautettujen sarakkeiden asetus

VertiPaq-säilömoduuli tallentaa mallin lasketut sarakkeet (määritetty DAX:ssä) tavallisten Power Querystä peräisin olevien sarakkeiden tavoin. Tietorakenteet tallennetaan kuitenkin hieman eri tavalla, ja niiden pakkaus on yleensä vähemmän tehokas. Lisäksi ne luodaan, kun kaikki Power Query -taulukot on ladattu, mikä voi aiheuttaa pidempiä tietojen päivitysaikoja. Tämän vuoksi taulukon sarakkeiden lisääminen laskettuina sarakkeina on tehottomampaa kuin Power Queryn laskettuina sarakkeina (määritetty M:ssä).

Etusijalla tulee olla mukautettujen sarakkeiden luominen Power Queryssa. Kun lähde on tietokanta, latausta voi tehostaa kahdella tavalla. Laskutoimitus voidaan määrittää SQL-lauseessa (käyttäen palvelun alkuperäisen kyselykielen kieltä) tai se voidaan muodostaa sarakkeena tietolähteessä.

Joissakin tapauksissa mallin lasketut sarakkeet voivat kuitenkin olla parempi vaihtoehto. Näin voi olla, kun kaava sisältää mittareiden arviointia tai edellyttää tiettyä mallintamistoimintoa, jota vain DAX-toiminnot tukevat. Lisätietoja yhdestä tällaisesta esimerkistä on artikkelissa Tietoja DAX:n pää- ja alielementtihierarkioiden funktioista.

Poista Power Query -kyselyn lataaminen käytöstä

Power Query -kyselyitä, joiden tarkoituksena on tukea tietojen integrointia muihin kyselyihin, ei pidä ladata malliin. Jos haluat välttää kyselyn lataamisen malliin, varmista, että poistat kyselyn lataamisen käytöstä näissä esiintymissä.

Power Queryn näyttökuva, joka näyttää Ota lataaminen käyttöön -vaihtoehdon.

Automaattisen päivämäärän ja ajan poistaminen käytöstä

Power BI Desktop sisältää asetuksen nimeltä Automaattinen päivämäärä ja aika. Kun se on käytössä, se luo piilotetun automaattisen päivämäärä- ja aikataulukon päivämääräsarakkeille, jotka tukevat raportin tekijöitä määritettäessä suodattimia, ryhmittelyä ja porautumistoimintoja kalenterin aikajaksoille. Piilotetut taulukot ovat itse asiassa laskettuja taulukoita, jotka suurentavat mallin kokoa. Ohjeita tämän asetuksen käyttämiseen on artikkelissa Power BI Desktopin automaattisen päivämäärän ja ajan ohjeet.

Vaihda yhdistelmätilaan

Power BI Desktopissa yhdistelmätilan rakenne tuottaa yhdistelmämallin. Sen avulla voit määrittää tallennustilan tilan kullekin taulukolle. Siksi jokaisessa taulukossa voi olla Tallennus Mode -ominaisuuden arvoksi Tuonti tai DirectQuery (Kaksoistaulukko on myös vaihtoehtona).

Tehokas menetelmä mallin koon pienentämiseen on määrittää suurten faktatyyppisten taulukoiden Tallennustila-ominaisuuden asetukseksi DirectQuery-. Huomaa, että tämä rakennemenetelmä voi toimia hyvin edellä esitellyn Ryhmittelyperuste ja yhteenveto -tekniikan kanssa. Esimerkiksi myynnin yhteenvetotietoja voidaan käyttää suorituskykyisten yhteenvetoraportointien saavuttamiseen. Porautumissivulla voidaan näyttää tarkka myynti tietyllä (ja suppealla) suodatinkontekstilla, jolloin kaikki kontekstiin sisältyvät myyntitilaukset näkyvät. Tässä esimerkissä porautumissivu sisältää DirectQuery-taulukkoon perustuvia visualisointeja myyntitilaustietojen noutamista varten.

Yhdistelmämalleihin liittyy kuitenkin useita tietoturva- ja suorituskykyvaikutuksia. Lisätietoja on artikkelissa Yhdistelmämallien käyttäminen Power BI Desktopissa .

Lisätietoja Power BI:n tuontimallin rakenteesta on seuraavissa artikkeleissa: