LuckyTemplates-pakkaustekniikat DAX Studiossa

Tässä opetusohjelmassa opit erilaisista LuckyTemplates-pakkaustekniikoista, jotka auttavat optimoimaan raporttisi.

Kun LuckyTemplates Power Pivotin ja analyysipalvelut ovat ladaneet tiedot segmenteiltä, ​​tapahtuu kaksi tapahtumaa. Ensimmäinen on se, että he yrittävät käyttää erilaisia ​​koodausmenetelmiä . Toinen on se, että he yrittävät rahoittaa parhaan lajittelujärjestyksen, joka asettaa toistuvat arvot yhteen. Tämä menetelmä lisää myös pakkausta ja puolestaan ​​vähentää muistiin kohdistuvaa painetta.

Analyysipalvelut käyttävät erilaisia ​​pakkaustekniikoita. Tämä opetusohjelma kattaa kolme menetelmää, erityisesti arvokoodauksen, Run Length -koodauksen ja sanakirjakoodauksen. Tämän opetusohjelman viimeisessä osiossa kerrotaan, kuinka järjestys toimii Analysis Services -palvelussa.

Sisällysluettelo

LuckyTemplates-pakkaustekniikka #1: Arvon koodaus

Ensimmäinen on nimeltään Arvokoodaus.

Arvokoodaus etsii matemaattisen suhteen sarakkeen jokaisen arvon välillä muistin vähentämiseksi. Tässä on esimerkki Microsoft Excelissä:

Tämä sarake vaatii 16 384 bittiä arvojen tallentamiseen.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Laske tarvittavat bitit käyttämällä ensin Excelin MAX()-funktiota saadaksesi sarakkeiden suurimman arvon. Tässä tapauksessa se on 9144. Laske sitten tarvittavat bitit POWER()-funktiolla. Käytä argumenttia TEHO(2, X), jossa X on mikä tahansa positiivinen arvo, joka palauttaa vastauksen, joka on suurempi kuin MAX-arvo. X tässä tapauksessa edustaa myös tarvittavia bittejä. Joten tässä esimerkissä X:n arvo on 14, mikä johtaa 16 384 . Siksi sarake vaatii 14 bittiä tallennustilaa.

Vähentääkseen tarvittavia bittejä arvokoodauksen avulla VertiPaq etsii sarakkeesta MIN-arvon ja vähentää sen kustakin arvosta. Tässä tapauksessa sarakkeen MIN-arvo on 9003. Jos vähennät tämän sarakkeesta, se palauttaa seuraavat arvot:

LuckyTemplates-pakkaustekniikat DAX Studiossa

Käyttämällä samoja funktioita ja argumentteja voit nähdä, että uuden sarakkeen MAX-arvo on 141. Ja käyttämällä 8: aa X:n arvona, tuloksena on 256 . Siksi uusi sarake vaatii vain 8 bittiä.

Voit nähdä kuinka pakattu toinen sarake on verrattuna ensimmäiseen sarakkeeseen.

Kun tiedot on pakattu ja yrität tehdä kyselyn uudesta sarakkeesta, se tarkistaa tämän sarakkeen. Ne eivät vain palauta sarakkeen uusia arvoja. Sen sijaan he lisäävät vähennetyn arvon ennen kuin palauttavat tuloksen takaisin käyttäjälle.

Arvokoodaus toimii kuitenkin vain sarakkeissa, jotka sisältävät kokonaislukuja tai arvoja, joissa on kiinteät desimaaliluvut.

LuckyTemplates-pakkaustekniikka #2: Suorita pituuskoodaus

Toinen koodausmenetelmä on nimeltään Run Length Encoding.

Run Length Encoding luo tietorakenteen, joka sisältää erillisen arvon, aloitussarakkeen ja Count-sarakkeen.

Otetaanpa esimerkki:

LuckyTemplates-pakkaustekniikat DAX Studiossa

Tässä tapauksessa se tunnistaa, että ensimmäisellä rivillä on käytettävissä yksi punainen arvo. Sitten se havaitsee, että Black- arvo alkaa toisesta rivistä ja on käytettävissä seuraaville neljälle solulle. Se etenee kolmanteen arvoon, Blue , joka alkaa kuudennelta riviltä ja on käytettävissä kolmella seuraavalla rivillä. Ja tämä jatkuu, kunnes se saavuttaa sarakkeen viimeisen arvon.

Joten koko sarakkeen tallentamisen sijaan se luo tietorakenteen, joka sisältää vain tietoa siitä, missä tietty arvo alkaa ja mihin se päättyy ja kuinka monta kaksoiskappaletta sillä on.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Saman rakenteen omaavien sarakkeiden tietoja voidaan edelleen tiivistää järjestämällä arvot joko nousevaan tai laskevaan järjestykseen.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Tämän oikein lajitellun sarakkeen avulla voit nähdä, että Run Length Encoding -menetelmä palauttaa nyt tietorakenteen, jossa on yksi rivi vähemmän.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Joten jos käsittelet monia eri arvoja, on suositeltavaa lajitella sarake mahdollisimman optimaalisella tavalla. Tämä antaa sinulle tietorakenteen, jossa on vähemmän rivejä, mikä puolestaan ​​​​vie vähemmän RAM-muistia.

Run Length Encoding -koodausta ei voi käyttää ensisijaisiin avaimiin, koska ensisijaisen avaimen sarakkeet sisältävät vain yksilöllisiä arvoja. Joten sen sijaan, että tallennettaisiin yksi rivi kullekin arvolle, se tallentaa sarakkeen sellaisenaan.

LuckyTemplates-pakkaustekniikka #3: Sanakirjakoodaus

Kolmatta koodausmenetelmää kutsutaan sanakirjakoodaukseksi.

Sanakirjakoodaus luo sanakirjamaisen rakenteen, joka sisältää sarakkeen erillisen arvon. Se myös määrittää indeksin tälle ainutlaatuiselle arvolle.

Katsotaanpa edellisen esimerkin avulla, kuinka sanakirjakoodaus toimii. Tässä tapauksessa arvoille punainen, musta ja sininen on määritetty indeksi 0, 1 ja 2.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Sitten se luo tietorakenteen, joka on samanlainen kuin Run Length Encoding. Todellisten arvojen tallentamisen sijaan Sanakirjakoodaus kuitenkin tallentaa kunkin arvon määritetyn indeksin.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Tämä vähentää edelleen kulutettua RAM-muistia, koska numerot vievät vähemmän tilaa kuin merkkijonoarvot.

Sanakirjakoodaus tekee myös taulukkotietotyypistä riippumattoman. Eli riippumatta siitä, onko sinulla sarake, joka voidaan tallentaa eri tietotyyppeihin, sillä ei ole väliä, koska tietorakenne tallentaa vain indeksiarvon.

Vaikka tietotyyppi olisikin riippumaton, sillä on silti vaikutusta sanakirjan kokoon. Sanakirjan (tai tietorakenteen) koko vaihtelee sen mukaan, minkä tietotyypin valitset sarakkeen tallentamiseen. Mutta itse sarakkeen koko pysyy samana.

Joten riippuen valitsemastasi tietotyypistä, kun Sanakirjakoodaus on otettu käyttöön sarakkeessa, Run Length Encoding -koodausta voidaan käyttää myöhemmin.

Tässä tapauksessa Analysis Services luo kaksi tietorakennetta. Se luo ensin sanakirjan ja lisää siihen sitten Run Length Encoding -toimintoa sarakkeen pakkaamisen lisäämiseksi.

Lajittelujärjestys Analyysipalveluissa

Tämän opetusohjelman viimeisessä osassa keskustellaan siitä, kuinka Analysis Services päättää optimaalisimman tavan lajitella tiedot.

Katsotaanpa esimerkkinä saraketta, joka sisältää punaisen, sinisen, mustan, vihreän ja vaaleanpunaisen arvot. Heille on myös annettu numerot 1-5. Tämä toimii kolumnimme sanakirjana.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Täytä nyt koko sarake Excelissä näillä arvoilla. Käytä tätä argumenttia luodaksesi sarakkeen, joka sisältää nämä arvot satunnaisesti.

LuckyTemplates-pakkaustekniikat DAX Studiossa

Vedä kaava viimeiselle riville. Napsauta OK , jos Large Operation -ponnahdusikkuna tulee näkyviin. Tältä se nyt näyttää:

LuckyTemplates-pakkaustekniikat DAX Studiossa

Kopioi seuraavaksi koko sarake ja liitä se arvoksi .

LuckyTemplates-pakkaustekniikat DAX Studiossa

Jos nyt siirryt Excel-dokumentin Tiedosto -vaihtoehtoon ja napsautat Tietoja , näet, että sarake kuluttaa 14,1 Mt.

Voit vähentää kulutetun RAM-muistin määrää lajittelemalla sarakkeen A:sta Z:hen. Jos tarkistat koon uudelleen, näet, että se on pienentynyt 12,5 megatavuun .

1,9 megatavun vähennys ei ehkä vaikuta paljolta. Tämä johtuu siitä, että esimerkissä käytettiin yhtä saraketta Excelissä osoittamaan. Excel on rajoitettu vain 1 miljoonaan riviin. LuckyTemplatesissa tietosi voivat kuitenkin sisältää miljardeja rivejä ja sarakkeita. Käytetyn tilan väheneminen kasvaa eksponentiaalisesti.

Johtopäätös

Kun tietosi on lajiteltu parhaalla mahdollisella tavalla, Analysis Services käyttää jompaakumpaa kolmesta pakkaustekniikasta tietotyypistä riippuen.

Tämä lisää tietojesi pakkausta, mikä vähentää huomattavasti laitteesi muistin määrää. Tämä tekee raportistasi optimaalisemman ja helpottaa sen suorittamista ja lataamista.


Kuinka asentaa DAX Studio & Tabular Editor LuckyTemplatesissa

Kuinka asentaa DAX Studio & Tabular Editor LuckyTemplatesissa

Opi lataamaan ja asentamaan DAX Studio ja Tabular Editor 3 ja miten ne määritetään käytettäväksi LuckyTemplatesissa ja Excelissä.

LuckyTemplates -muotokartan visualisointi tilaanalyysiin

LuckyTemplates -muotokartan visualisointi tilaanalyysiin

Tämä blogi sisältää Shape Map -visualisoinnin tilaanalyysiä varten LuckyTemplatesissa. Näytän sinulle, kuinka voit käyttää tätä visualisointia tehokkaasti sen ominaisuuksien ja elementtien kanssa.

LuckyTemplatesin talousraportointi: tulosten kohdentaminen malleihin jokaisella rivillä

LuckyTemplatesin talousraportointi: tulosten kohdentaminen malleihin jokaisella rivillä

Tässä opetusohjelmassa esittelen ainutlaatuisen idean talousraportoinnista, joka allokoi tulokset LuckyTemplatesin sisällä olevien taulukkopohjien ennalta määrittämiseen.

DAX-mittaukset LuckyTemplatesissa käyttämällä mittahaaroitusta

DAX-mittaukset LuckyTemplatesissa käyttämällä mittahaaroitusta

Luo DAX-suureita LuckyTemplatesissa käyttämällä olemassa olevia suureita tai kaavoja. Tätä kutsun mittahaaroitustekniikaksi.

Tehokkain toimintopuhelu LuckyTemplatesissa

Tehokkain toimintopuhelu LuckyTemplatesissa

Tässä blogissa tutustu LuckyTemplates-tietojoukkoon, tehokkaimpaan funktiokutsuun, joka tuo tuhansia M- ja DAX-funktioita sormiesi ulottuville.

Datamallinnustekniikat DAX-mittausten järjestämiseen

Datamallinnustekniikat DAX-mittausten järjestämiseen

Tämän päivän opetusohjelmassa jaan muutamia datamallinnustekniikoita DAX-mittausten järjestämiseksi paremmin tehokkaamman työnkulun aikaansaamiseksi.

LuckyTemplates Financial Dashboard: Täydelliset taulukon mukautusvinkit

LuckyTemplates Financial Dashboard: Täydelliset taulukon mukautusvinkit

LuckyTemplates on loistava työkalu talousraportointiin. Tässä on opetusohjelma räätälöityjen taulukoiden luomisesta LuckyTemplates-talouden hallintapaneelillesi.

Power Queryn kielivirran parhaat käytännöt

Power Queryn kielivirran parhaat käytännöt

Tässä opetusohjelmassa keskustellaan Power Query Language Flowsta ja siitä, kuinka se voi auttaa luomaan sujuvan ja tehokkaan dataraportin.

LuckyTemplates mukautetut kuvakkeet | PBI-visualisointitekniikka

LuckyTemplates mukautetut kuvakkeet | PBI-visualisointitekniikka

Keskustelen yhdestä suosikkitekniikoistani mukautettujen LuckyTemplates-kuvakkeiden ympärillä, joka käyttää mukautettuja kuvakkeita dynaamisella tavalla LuckyTemplates-visuaaleissa.

LuckyTemplates -taulukoiden luominen UNION & ROW -funktiolla

LuckyTemplates -taulukoiden luominen UNION & ROW -funktiolla

Tässä blogissa näytän sinulle, kuinka voit luoda LuckyTemplates-taulukoita käyttämällä kaavaa, joka yhdistää UNION-funktion ja ROW-funktion.