Zdieľať cez


Pokyny na navrhovanie tabuliek dátumov v aplikácii Power BI Desktop

Tento článok popisuje osvedčené postupy návrhu pri vytváraní tabuliek dátumov v dátových modeloch pri používaní aplikácie Power BI Desktop.

Tabuľka dátumov je najbežnejšia tabuľka, ktorá sa používa na analýzu. Ukladá jeden riadok na dátum a podporuje spoločnú požiadavku na filtrovanie alebo zoskupovanie podľa konkrétnych období dátumov, ako sú napríklad roky, štvrťroky alebo mesiace.

Navyše, ak chcete pracovať s funkciami časovej inteligencie jazyka DAX (Data Analysis Expressions), váš dátový model musí mať aspoň jednu tabuľku dátumov. Tabuľka dátumov je tabuľka modelu, ktorá spĺňa nasledujúce požiadavky:

  • Musí mať stĺpec s typom údajov dátum (alebo dátum a čas) – známy ako stĺpec dátumov.
  • Stĺpec dátumov musí obsahovať jedinečné hodnoty.
  • Stĺpec dátumov nesmie obsahovať prázdne hodnoty.
  • V stĺpci dátumov nesmú žiadne dátumy chýbať.
  • Stĺpec dátumov musí v rozsahu zahŕňať celé roky. Rok nemusí byť nutne kalendárny rok (január až december).
  • Tabuľka dátumov musí byť označená ako tabuľka dátumov.

Ak chcete do modelu pridať tabuľku dátumov, môžete využiť ktorúkoľvek z nasledujúcich metód:

Prepitné

Tabuľka dátumov je pravdepodobne naj konzistentnejšou funkciou, ktorú pridáte do hociktorého z dátových modelov. V rámci organizácie by mala byť tabuľka dátumov konzistentne definovaná. Bez ohľadu na metódu, ktorú sa rozhodnete využiť, odporúčame vytvoriť šablónu aplikácie Power BI Desktop, ktorá obsahuje plne nakonfigurovanú tabuľku dátumov. Zdieľajte šablónu so všetkými modelovačmi údajov v organizácii. Takže vždy, keď niekto vytvorí nový dátový model, môže začať pracovať s konzistentne definovanou tabuľkou dátumov.

Použitie automatického dátumu a času

Možnosť Automatický dátum a čas ponúka pohodlný, rýchly a jednoduchý spôsob použitia časovej inteligencie. Autori zostáv môžu pracovať s časovou inteligenciou pri filtrovaní, zoskupovaní a prechode na detaily v časových obdobiach kalendára.

Odporúčame, aby ste ponechali možnosť Automatický dátum a čas povolenú iba vtedy, keď pracujete s časovými obdobiami kalendára a máte zjednodušujúce požiadavky na model v súvislosti s časom. Túto možnosť môžete použiť aj pri vytváraní modelov ad hoc alebo skúmaní či profilovaní údajov. Tento prístup však nepodporuje jeden návrh tabuľky dátumov, ktorý umožňuje rozšíriť filtre do viacerých tabuliek. Ďalšie informácie nájdete v téme Pokyny pre automatický dátum a čas v aplikácii Power BI Desktop.

Pripojenie pomocou doplnku Power Query

Ak váš zdroj údajov už obsahuje tabuľku dátumov, odporúča sa použiť ho ako zdroj tabuľky dátumov modelu. Zvyčajne ide o prípad, kedy sa pripájate ku skladu údajov, pretože už by mal mať tabuľku dimenzií dátumov. Vďaka tomu váš model používa jediný zdroj pravdy pre čas vo vašej organizácii.

Ak vyvíjate model režimu DirectQuery a váš zdroj údajov nezahŕňa tabuľku dátumov, dôrazne sa odporúča pridať do zdroja údajov tabuľku dátumov. Mala by spĺňať všetky požiadavky na modelovanie tabuľky dátumov. Potom sa môžete pomocou doplnku Power Query pripojiť k tabuľke dátumov. Vďaka tomu môžu vaše výpočty modelu používať funkcie časovej inteligencie jazyka DAX.

Generovanie pomocou doplnku Power Query

Tabuľku dátumov môžete vygenerovať pomocou doplnku Power Query. Ďalšie informácie nájdete v článku na blogu Chrisa Webba Generating A Date Dimension Table In Power Query (Generovanie tabuľky dimenzií dátumov v doplnku Power Query).

Prepitné

Ak vo svojej organizácii nemáte sklad údajov ani inú konzistentnú definíciu času, zvážte použitie doplnku Power Query na publikovanie toku údajov. K toku údajov sa potom môžu pripojiť všetci modelári údajov, aby pridali tabuľky dátumov do svojich modelov. Tok údajov sa stane jediným zdrojom času vo vašej organizácii.

Ak potrebujete vygenerovať tabuľku dátumov, zvážte generovanie pomocou jazyka DAX. Možno zistíte, že je to tak jednoduchšie. Navyše, pravdepodobne to bude oveľa pohodlnejšie, pretože jazyk DAX zahŕňa vstavané nástroje, ktoré zjednodušujú vytváranie a spravovanie tabuliek dátumov.

Generovanie pomocou jazyka DAX

Tabuľku dátumov môžete v modeli vygenerovať vytvorením vypočítanej tabuľky buď pomocou funkcie DAX CALENDAR , alebo CALENDARAUTO . Každá funkcia vráti tabuľku dátumov s jedným stĺpcom. Potom môžete rozšíriť vypočítavanú tabuľku o vypočítané stĺpce a podporiť požiadavky na interval filtrovania a zoskupovania dátumov.

  • CALENDAR Funkciu použite vtedy, keď chcete definovať rozsah dátumov. Vnesiete dve hodnoty: počiatočný dátum a koncový dátum. Tieto hodnoty môžu byť definované inými funkciami jazyka DAX, ako napríklad MIN(Sales[OrderDate]) alebo MAX(Sales[OrderDate]).
  • CALENDARAUTO Ak chcete, aby rozsah dátumov automaticky zahŕňal všetky dátumy uložené v modeli, použite funkciu . Vložte jeden voliteľný parameter, ktorým je koncový mesiac roka (ak ide o kalendárny rok, ktorý končí mesiacom december, hodnotu v tomto prípade nie je potrebné odovzdať). Táto funkcia je užitočná, pretože zaisťuje, že sa vrátia celé roky dátumov, a tak spĺňa požiadavku pre označenú tabuľku dátumov. Navyše, tabuľku nemusíte rozširovať o riadky pre budúce roky. Dôvodom je, že po dokončení obnovenia údajov sa spustí prepočítanie tabuľky. Prepočítanie automaticky predlžuje rozsah dátumov tabuľky, keď sa do modelu načítajú dátumy pre nový rok.

Prepitné

Ďalšie informácie o vytváraní vypočítaných tabuliek vrátane príkladu toho, ako vytvoriť tabuľku dátumov, nájdete v študijnom module Pridávanie vypočítaných tabuliek a stĺpcov do modelov aplikácie Power BI Desktop.

Zvážte tiež použitie bezplatného nástroja typu open-source, ktorý vám pomôže spravovať dátumy pomocou jazyka DAX. Ďalšie informácie nájdete v téme Bravo pre Power BI.

Klonovanie s jazykom DAX

Ak váš dátový model už obsahuje tabuľku dátumov a vy potrebujete inú tabuľku dátumov. Ak je dátum dimenziou zohrávanou rolou, existujúcu tabuľku dátumov môžete jednoducho naklonovať. Tabuľku môžete naklonovať vytvorením vypočítanej tabuľky. Výraz vypočítanej tabuľky je jednoducho názvom existujúcej tabuľky dátumov.

Ak chcete napríklad vytvoriť tabuľku Ship Date , ktorá klonuje tabuľku Date , použite nasledujúci výraz vypočítanej tabuľky.

Ship Date = 'Date'

Poznámka

Keď klonujete tabuľku s jazykom DAX, vytvorí len stĺpce. Nepoužije žiadne vlastnosti modelu z klonovanej tabuľky, ako sú napríklad formáty alebo popisy. Okrem toho hierarchie nie sú klonované.

Ďalšie informácie súvisiace s týmto článkom nájdete v nasledujúcich zdrojoch: