Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tänään haluan puhua datamallinnuskonseptista, jota kutsutaan roskadimensioiksi . Nimensä perusteella luulisi, että se on halventava tekniikka ja jotain, jota haluat välttää, mutta se on itse asiassa hyödyllinen lähestymistapa.

Itse asiassa työskentelin kysymyksen parissa, ja roskaulottuvuus oli täydellinen ratkaisu siihen. Kun näet ja ymmärrät sen, löydät sille paljon käyttöä omassa työssäsi. Voit katsoa tämän opetusohjelman koko videon tämän blogin alaosasta.

Sisällysluettelo

Mitä ovat roskapostimitat?

Kimballin ja Rossin The Data Warehouse Toolkit , joka on yksi ulottuvuusmallinnuksen raamattuista, määrittelee sen tyypillisesti matalan kardinaalisuuden lippujen ja indikaattoreiden ryhmittelyksi . Matala kardinaliteetti tarkoittaa pientä määrää yksilöllisiä havaintoja tietyssä kentässä.

Esimerkissämme meillä on tietomalli räätälöityjen tietokoneiden rakentamista varten. Tietomalli koskee tilauksia ja laskuja. Meillä on myös useita lippuja, joista voimme tallentaa prosessorin tyypin, tornikokoonpanon tyypin (kompakti tai täysi) ja käyttötarkoituksen (peli tai työasema).

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Roskakorin mittojen määrittäminen keittiön roskalaatikon analogian avulla

Jos katsot jokaista näistä kentistä, kussakin kentässä on vain kaksi ainutlaatuista havaintoa. Tätä Kimball kutsuisi matalan kardinaalisuuden lipuksi . Hän sanoo, että luomalla abstraktin ulottuvuuden poistamme liput faktataulukosta ja sijoitamme ne hyödylliseen ulottuvuuskehykseen.

Analogia keittiön roskalaatikon kanssa roskaulottuvuuden suhteen on hyvä. Jokaisella on laatikko, joka on täynnä kuminauhoja, niittejä, paristoja, syntymäpäiväkynttilöitä jne. Mikään näistä tavaroista ei ole tärkeää, että niillä on oma laatikko, mutta sinulla on oltava paikka, johon ne laittaa.

Niiden säilyttäminen voi saada tietotaulukon ilmapallon kokoiseksi. Oletetaan, että meillä on faktataulukko, jossa on miljoona tietuetta. Rakensimme monia tietokoneita, ja jokaisen rakentamamme tietokoneen kohdalla meidän on ilmoitettava prosessori, torni ja tarkoitus. Tämä tarkoittaa, että miljoonalle tilatulle tietokoneriville on myös 3 miljoonaa lippua tietotaulukossa.

Faktataulukon koon pienentäminen

Voisimme siirtää ne ulottuvuustaulukkoon ja linkittää vain mallitunnukseen poistaaksemme 3 miljoonaa lippua tietotaulukosta. Tätä varten voimme tehdä erillisen taulukon jokaiselle näistä lipuista ja se toimii. Mutta tämä prosessi monimutkaistaa tietomallia, jossa yleensä haluat välttää yksisarakkeisia taulukoita.

Ihanteellinen ratkaisu on käyttää roskaulottuvuutta , jossa sinulla on joukko matalan kardinaalisuuden lippuja, jotka liittyvät yleisesti toisiinsa. Nämä kaikki liittyvät rakentamiemme tietokoneiden attribuutteihin, mutta eivät todella suoralla tavalla, joka sinulla normaalisti olisi tietyssä mittataulukossa.

Foorumin jäsenen ongelman tarkistaminen

Katsotaanpa tiettyä sovellusta, joka oli lähetetty foorumille. Jäsen halusi luoda kaksi eri kenttää, yhden Stalled- ja toisen Activelle -kentille . Jos asiakas on tehnyt tapahtuman viimeisen 45 päivän aikana, se merkitään aktiiviseksi; muuten se merkitään pysähtyneeksi.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Jäsen halusi myös toisen dimensiotaulukon asiakastyypille, joka on joko monitilaus tai yksitilaus. Jos tilillä oli kaksi tai useampi tapahtuma jossain vaiheessa historiaa käyttämällä yhtä tilinumeroa, sitä pidettäisiin usean tilauksen asiakkaana. Ja jos heillä olisi vain yksi tilaus tietylle tilinumerolle, se olisi yhden tilauksen asiakas.

Nämä ovat siis ne kaksi lippua, joita haluamme kehittää. Siirrytään LuckyTemplatesiin ja mietitään, miten se tehdään.

Tietojen mallinnus roskapostiulottuvuutta varten

Katsotaanpa tietomallia. Se on todella yksinkertainen tietomalli. Meillä on pidennettyja Tapahtumat-taulukko .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tapahtumataulukossamme on vain kolme kenttää: tilinumero , laskun päivämäärä ja myyntimäärä .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Yleensä, jos voimme työntää muunnoksen lähemmäs lähdettä, teemme sen. Tämä ei ole dynaamista raportointiistunnon aikana, joten meidän ei tarvitse tehdä sitä .

Meidän pitäisi tehdä se joko tehokyselyssä tai tietovarastossa/SQL:ssä, jos meillä on tämä vaihtoehto. Mutta oletetaan nyt, että emme tee sitä ja teemme sen vain.

Roskapostiulottuvuuden asiakastyypin tunnistaminen

Ensimmäinen asia, jonka teemme, on selvittää asiakastyyppi, onko kyseessä yhden tilauksen tai usean tilauksen tapahtuma. Käytämme Ryhmittelyperuste , Count ja Count Rows .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Lisää sitten kaikki tiedot ja tee siitä Kaikki rivit -toiminto, jotta emme palauta koostettua taulukkoa, vaan alkuperäisen taulukon, jossa on kyseinen rivimäärä jokaisella rivillä.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Katsotaanpa tulosta ja laajennetaan sitä.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Voimme lisätä mukautetun sarakkeen ja antaa sille nimen Client Type ja luoda sitten IF-lauseen. Lauseke on, jos Count on yhtä suuri kuin 1, niin se on yksittäinen järjestys; muuten se on monitilaus.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Muutamme sarakkeen vain tekstityypiksi. Nyt meillä on toinen kahdesta ulottuvuudestamme asetettuna tietotaulukkoon.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tehdään toinen ulottuvuustaulukko. Tässä tapauksessa, jos viimeisin tilaus on 45 päivää tai vähemmän tämän päivän päivämäärästä, asiakas katsotaan aktiiviseksi. Jos tilausta ei ole 45 päivän sisällä tästä päivästä, asiakas on passiivinen.

Lisäämme mukautetun sarakkeen ja annamme sarakkeen nimen Tänään . Lisää sitten DateTime.LocalNow antaaksesi meille nykyisen päivämäärän ja kellonajan ja sitten Date.From antaaksesi meille vain päivämääräosan.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Muutetaan tämä päivämäärätietotyypiksi ja siirretään sitten sarake eteen.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

On yksinkertainen tapa luoda vähennyslasku kahden päivämääräsarakkeen välille. Korosta vain nämä kaksi päivämäärää, napsauta nauhan Päivämäärät ja napsauta sitten Vähennä päivät .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tämä antaa sinulle eron näiden kahden päivämäärän välillä päivien lukumääränä. Nimetään tämä uusi sarake päivää ennen tätä päivää.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Seuraavaksi etsitään tätä päivää edeltävät vähimmäispäivät, mikä tarkoittaa kunkin tilinumeron viimeisintä tilausta. Jos tämä luku on pienempi tai yhtä suuri kuin 45, se on aktiivinen.

Tehdään toinen Ryhmäperuste , sitten Lisäasetukset ja sitten Tilinumero .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Käytämme jälleen kaikkia tietoja uudelle sarakkeen nimelle ja Kaikki rivit -toimintoa varten.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tällä kertaa lisäämme sen toiminnoksi Vähimmäispäivät minimiin ja sarakkeeseensa Päivät ennen tätä päivää. Tämä antaa meille viimeisimmän tilauksen.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Sitten laajennamme Kaikki tiedot ja poistamme tilinumeron .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Kun laajennamme tätä, meillä on tilinumeroiden väliset vähimmäispäivät .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Lopuksi lisäämme toisen mukautetun sarakkeen, jonka nimi on Client Timing . Laitamme entä jos -parametrin, jossa jos Min Days Between -arvomme on pienempi tai yhtä suuri kuin 45, se on aktiivinen tai muuten pysähtynyt .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tarpeettomien sarakkeiden poistaminen

Koska meillä on nyt paljon tukisarakkeita, klikkaamme Valitse sarakkeet ja poistamme tarpeettomat.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Poistamme sarakkeet Count , Today , Days ennen tätä päivää ja Min Days Between -sarakkeet. Meillä on nyt vain alkuperäinen tietotaulukko sekä Client Type- ja Client Timing -sarakkeet.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Sen sijaan, että säilyttäisimme nämä tietotaulukossa, kopioidaan tämä taulukko.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Kutsumme kaksoistaulukkoa tililipuiksi .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Palataan Tapahtumat-taulukkoon ja poistetaan Asiakastyyppi- ja Asiakkaan ajoitus -kentät.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Meillä on nyt alkuperäinen tietotaulukko ja tililiput -taulukko.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Tililipput-taulukkoon emme tarvitse Asiakastyyppi- ja Asiakkaan ajoitus -kenttiä, joten poistamme ne. Korostamme vain kaikki nämä kentät, poistamme rivit ja poistamme kaksoiskappaleet.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Meillä on nyt roskakokotaulukko. Jäljelle jää vain napsauttaa Close & Apply . Seuraava vaihe on yhdistää Tilinumero Tililipput-taulukosta Tapahtumat- taulukon tilinumeroon .

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Meillä on yksi-moneen-suhde Tapahtumat-taulukon (joka on tietotaulukkomme) ja Tililipput-taulukon (joka on roskaulottuvuustaulukkomme) välillä.



Johtopäätös

Pudotetaan Client Timing- ja Client Type -mitat kankaallemme ja muutetaan ne viipaloiksi. Voimme nyt tehdä täsmälleen sen, mitä jäsen halusi tehdä alun perin, eli leikata näiden attribuuttien perusteella.

Jos napsautamme Multi-Order, se jättää meille vain ne, joilla on useita tilauksia, ja jos siirrymme yksittäistilaukseen, se jättää meille ne, joilla on yksi ostos.

Junk Dimension: mikä se on ja miksi se on kaikkea muuta kuin roskaa

Yhteenvetona voidaan todeta, että tämä on pohjimmiltaan mitä roskaulottuvuus on ja kuinka voit luoda sen. Tämä on erittäin hyödyllinen tekniikka, jos sinulla on joukko erilaisia, matalan kardinaalisuuden lippuja, jotka haluat sisällyttää tietomalliisi tehokkaasti.

Ryhmittely kaikkien rivien mukaan -tekniikka on erittäin hyödyllinen luotaessa näitä roskakokoja. Toivottavasti tästä oli apua ja kuten aina.


Päivämäärätaulukon luominen LuckyTemplatesissa

Päivämäärätaulukon luominen LuckyTemplatesissa

Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

Tämä lyhyt opetusohjelma korostaa LuckyTemplates-mobiiliraportointiominaisuutta. Näytän sinulle, kuinka voit kehittää raportteja tehokkaasti mobiililaitteille.

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Tässä LuckyTemplates Showcase -esittelyssä käymme läpi raportteja, jotka näyttävät ammattitaitoisen palveluanalytiikan yritykseltä, jolla on useita sopimuksia ja asiakkaiden sitoumuksia.

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Käy läpi tärkeimmät Power Appsin ja Power Automaten päivitykset sekä niiden edut ja vaikutukset Microsoft Power Platformiin.

Yleiset SQL-funktiot: Yleiskatsaus

Yleiset SQL-funktiot: Yleiskatsaus

Tutustu joihinkin yleisiin SQL-toimintoihin, joita voimme käyttää, kuten merkkijono, päivämäärä ja joitain lisätoimintoja tietojen käsittelyyn tai käsittelyyn.

LuckyTemplates-mallin luominen: opas ja vinkkejä

LuckyTemplates-mallin luominen: opas ja vinkkejä

Tässä opetusohjelmassa opit luomaan täydellisen LuckyTemplates-mallin, joka on määritetty tarpeidesi ja mieltymystesi mukaan.

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Tässä blogissa esittelemme, kuinka kerrostat kenttäparametreja pienillä kerroilla uskomattoman hyödyllisten näkemysten ja visuaalien luomiseksi.

LuckyTemplates-sijoitus ja mukautettu ryhmittely

LuckyTemplates-sijoitus ja mukautettu ryhmittely

Tässä blogissa opit käyttämään LuckyTemplates-sijoitus- ja mukautettuja ryhmittelyominaisuuksia näytetietojen segmentoimiseen ja luokitteluun kriteerien mukaan.

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

Tässä opetusohjelmassa käsittelen tiettyä tekniikkaa, jolla voit näyttää kumulatiivisen kokonaissumman LuckyTemplates-visuaaleissasi vain tiettyyn päivämäärään asti.

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Opi luomaan ja mukauttamaan Bullet-kaavioita LuckyTemplatesissa, joita käytetään pääasiassa suorituskyvyn mittaamiseen suhteessa tavoitteeseen tai edellisiin vuosiin.