Tietojen vähentämisen tekniikat tuonnin mallinnusta varten
Tämä artikkeli on suunnattu Power BI Desktopin tietomallintajille, jotka kehittävät ja julkaisevat Power BI:n semanttisia malleja. Artikkelissa kuvataan eri tekniikoita, joiden avulla voit vähentää ladattuja tietoja.
Tuontimalleihin on ladattu pakattuja ja optimoituja tietoja, jotka VertiPaq-säilömoduuli tallentaa levylle. Kun lähdetiedot ladataan muistiin, 10x-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 sinun tulee 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 mallikokoja. 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 Suuret semanttiset mallit Power BI Premium.
- Pienemmät mallikoot vähentävät kapasiteettiresursseista, erityisesti muistista, kiistoja. Monet kapasiteetin pienemmät mallit voidaan ladata samanaikaisesti pidemmän aikaa, mikä johtaa pienempiin häätömääriin.
- Pienemmissä mallikokoissa tietojen päivitys on nopeampaa, joten tuloksena on pienemmät viiveet raportoinnissa, suurempi semanttinen mallin päivityksen siirtonopeus ja vähemmän painetta lähdejärjestelmässä ja kapasiteettiresursseissa.
- Pienemmät taulukon rivimäärät voivat johtaa nopeampaan laskennan arviointiin, mikä parantaa kyselyn yleistä suorituskykyä.
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.
Poista tarpeettomat sarakkeet
Mallitaulukon sarakkeilla on kaksi päätarkoituksia:
- Reporting: n avulla voit luoda raporttimalleja, jotka suodattavat, ryhmittelevät ja vetävät yhteen mallin tiedot asianmukaisesti.
- mallin rakennetukemalla mallien suhteita, mallin laskutoimituksia, käyttöoikeusrooleja ja jopa tietojen värimuotoilua.
Voit todennäköisesti poistaa minkä tahansa sarakkeen, joka ei palvele kumpaakaan näistä syistä. Sarakkeen poistamista taulukosta kutsutaan joskus nimellä pystysuuntainen suodatus.
Suosittelemme, että suunnittelet malleja, joissa on täsmälleen oikea määrä sarakkeita tunnettujen raportointivaatimustesi perusteella. Vaatimukset saattavat 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
Sinun kannattaa ladata mallitaulukot, joissa on mahdollisimman vähän rivejä. Voit saavuttaa tämän lataamalla suodatetut rivijoukot mallitaulukoihin kahdesta eri syystä: suodattamalla ajan tai entiteetin mukaan. Rivien poistamista kutsutaan joskus vaakasuuntaisen suodatuksen .
- suodattaminen ajan mukaan tarkoittaa tietohistorian lataamisen rajoittamista faktataulukoihin (ja mallin päivämäärätaulukoihin ladattujen päivämäärärivien rajoittamista). Suosittelemme, että et lataa oletusarvoisesti kaikkea käytettävissä olevaa historiaa, ellei se ole tiedossa oleva raportointivaatimus. Voit ottaa käyttöön aikaan perustuvia Power Query -suodattimia parametreilla ja jopa määrittää ne käyttämään suhteellisia ajanjaksoja (suhteessa päivityspäivämäärään, esimerkiksi viimeiset viisi vuotta). Muista myös, että aikasuodattimien taannehtiva muutos ei riko raportteja; Tämä johtaa vain siihen, että raporteissa on käytettävissä vähemmän (tai enemmän) tietohistoriaa.
- 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 tulokseksi useita pienempiä malleja, ja se voi myös poistaa tarpeen määrittää rivitason suojaus (RLS)– mutta se edellyttää tiettyjen semanttisten mallien käyttöoikeuksien myöntämistä Power BI -palvelussa ja päällekkäisten raporttien luomista, jotka muodostavat yhteyden kuhunkin semanttiseen malliin. Voit yksinkertaistaa hallintaa ja julkaisemista Power Query -parametreilla ja Power BI:n mallitiedostoilla. Lisätietoja on artikkelissa raporttimallien luominen ja käyttäminen Power BI Desktopissa .
Ryhmittelyperuste ja yhteenveto
Ehkä tehokkain menetelmä mallin koon pienentämiseen on esiyhteenvedon tietojen lataaminen. Tämän menetelmän avulla voit suurentaa faktataulukoiden rakeita. On kuitenkin olemassa erillinen kompromissi, joka johtaa yksityiskohtien menettämiseen.
Harkitse esimerkkiä, jossa lähteen myyntitietotaulukkoon tallennetaan yksi rivi tilausriviä kohti. 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. Lisäksi tietojen määrää voidaan vähentää merkittävästi ryhmittelemällä päivämäärän mukaan kuukauden tasolla. Tällä tavalla mallin kokoa voidaan vähentää 99%, mutta raportointi päivän tasolla tai yksittäisen tilausrivin tasolla ei ole enää mahdollista. Tietotietojen yhteenvedosta päättäminen edellyttää aina kompromisseja. Tätä kompromissia voi lieventää mallirakenne, joka sisältää joitakin DirectQuery-tallennustilan taulukoita. Tätä myöhemmin tässä artikkelissa.
Sarakkeiden tietotyyppien optimoiminen
VertiPaq-säilömoduuli käyttää kullekin sarakkeelle erillisiä sisäisiä 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. Hajautuskoodaus edellyttää, että säilömoduuli antaa numeerisen tunnisteen kullekin sarakkeen sisältämälle yksilöivälle arvolle. Kyseessä on numeerinen tunniste, joka on tallennettu tietorakenteeseen ja joka edellyttää hajautusarvon hakua tallennuksen ja kyselyn aikana.
Joissakin tietyissä tapauksissa lähdetekstin tiedot voidaan muuntaa numeereiksi arvoiksi. Esimerkiksi myynnin tilausnumeron etuliitteenä voi olla johdonmukaisesti tekstiarvo (esimerkiksi SO123456
). Tässä tapauksessa etuliite SO
voidaan poistaa ja tilausnumeron arvo muuntaa kokonaisluvuksi. Suurissa taulukoissa tämä muokkaus 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 oletusarvon mukaisen yhteenveto-ominaisuuden arvoksi Do Not Summarize
. Se auttaa välttämään tilausnumeroarvojen sopimattoman yhteenvedon.
Mukautettujen sarakkeiden asetus
VertiPaq-säilömoduuli tallentaa mallin laskettuja sarakkeita (määritetty DAXissa) tavallisten Power Querysta peräisin olevien sarakkeiden tavoin. Sisäiset tietorakenteet tallennetaan kuitenkin hieman eri tavalla, ja niiden pakkaus on yleensä vähemmän tehokas. Lisäksi tietorakenteet 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ä).
Mukautettujen sarakkeiden luominen Power Queryssa aina kun mahdollista. Kun lähde on tietokanta, latausta voi tehostaa kahdella tavalla: Laskutoimitus voidaan määrittää SQL-lauseessa (käyttämällä palvelun alkuperäistä kyselykieltä) tai se voidaan muodostaa sarakkeena tietolähteessä.
Joissakin tapauksissa mallin lasketut sarakkeet voivat kuitenkin olla parempi vaihtoehto. Näin on, kun kaava sisältää mittareiden arviointia tai edellyttää tiettyä mallintamistoimintoa, jota vain DAX-funktiot tukevat. Lisätietoja yhdestä tällaisesta esimerkistä on kohdassa Tietoja pää- ja alielementtihierarkioiden funktioista DAX-.
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ää näiden kyselyjen lataamisen malliin, varmista, että poistat kyselyn lataamisen käytöstä näissä esiintymissä.
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 piilotetut automaattiset päivämäärä- ja aikataulukot mallin kullekin päivämääräsarakkeelle. Tämä asetus tukee raportin tekijöitä määritettäessä suodattimia, ryhmittely- ja porautumistoimintoja kalenterin ajanjaksoille. Piilotetut taulukot ovat itse asiassa laskettuja taulukoita, jotka suurentavat mallin kokoa.
Lisätietoja on artikkelissa Automaattisen päivämäärän ja ajan ohjeet Power BI Desktopin.
Käytä DirectQuery-tallennustilaa
DirectQuery-tallennustilan tila on vaihtoehto tuontitallennustilan tilalle. DirectQuery-mallin taulukot eivät tuo tietoja. Sen sijaan ne koostuvat vain metatiedoista, jotka määrittävät taulukon rakenteen. Kun taulukkoon tehdään kysely, alkuperäisiä kyselyitä käytetään tietojen noutamiseen pohjana olevasta tietolähteestä. Kun yhdistät Tuonti- ja DirectQuery-tallennustilan taulukot yhteen malliin, sitä kutsutaan yhdistelmämallin .
Tehokas menetelmä pienentää mallin kokoa on määrittää suurempien faktataulukoiden tallennustilaksi DirectQuery. Huomaa, että tämä rakennemenetelmä toimii usein hyvin edellä Ryhmittelyperuste ja yhteenveto menetelmän 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 voi sisältää DirectQuery-mallitaulukkoon perustuvia visualisointeja myyntitilaustietojen noutamista varten.
DirectQuery-tallennustilaan ja yhdistelmämalleihin liittyy kuitenkin monia tietoturva- ja suorituskykyvaikutuksia. Lisätietoja on artikkelissa Yhdistelmämallien käyttäminen Power BI Desktopissa.
Liittyvä sisältö
Saat lisätietoja tähän artikkeliin liittyen tutustumalla seuraaviin artikkeleihin:
- semanttisen mallin tilat Power BI -palvelun
- Tallennustilan tila Power BI Desktopissa
- Kysyttävää? Voit esittää kysymyksiä Fabric-yhteisön
- Ehdotuksia? Edistä ideoita Fabric- parantamiseksi