Návrh hvězdicového schématu

Dokončeno

Je neobvyklé, že se sémantický model Power BI skládá z jedné tabulky. Model s jednou tabulkou může být jednoduchý návrh, třeba takový, který je vhodný pro úlohu zkoumání dat nebo testování konceptu, nebude to ale optimální návrh modelu. Optimální model dodržuje principy návrhu schématu star. Hvězdicové schéma označuje přístup k návrhu, který běžně používají návrháři relačních datových skladů, protože představuje uživatelsky přívětivou strukturu a podporuje vysoce výkonné analytické dotazy.

Tento princip návrhu se označuje jako hvězdicové schéma, protože klasifikuje tabulky modelu jako fakta nebo dimenze. Tabulka faktů tvoří v diagramu střed, zatímco tabulky dimenzí, pokud jsou umístěné kolem tabulky faktů, představují body hvězdy.

Tabulky faktů

Rolí tabulky faktů je ukládat akumulace řádků, které představují pozorování nebo události zaznamenávající konkrétní obchodní aktivitu. Například události, které jsou uložené v tabulce faktů prodejů, by mohly být prodejní objednávky a řádky objednávky. Tabulku faktů můžete také použít k zaznamenávání pohybů akcií, zůstatků akcií nebo denních směnných kurzů. Obecně představují tabulky faktů velký počet řádků. Jak čas plyne, řádky tabulky faktů se akumulují. V analytických dotazech (které budou definovány později v tomto modulu) se data tabulky faktů sumarizují, aby vytvořily hodnoty, jako jsou prodeje a množství.

Tabulky dimenzí

Tabulky dimenzí popisují obchodní entity, které obvykle představují osoby, místa, produkty nebo koncepty. Tabulka dimenzí kalendářních dat, která obsahuje jeden řádek pro každé datum, je běžným příkladem tabulky dimenzí konceptu. Sloupce v tabulkách dimenzí umožňují filtrovat a seskupovat data tabulek faktů.

Každá tabulka dimenzí musí mít jedinečný sloupec, který se označuje jako klíčový sloupec. Jedinečný sloupec neobsahuje duplicitní hodnoty a nikdy by neměl mít chybějící hodnoty. V tabulce dimenzí produktu může být sloupec pojmenován ProductKey nebo ProductID. V dalších sloupcích budou pravděpodobně uloženy popisné hodnoty, jako je název produktu, podkategorie, kategorie, barva atd. V analytických dotazech se tyto sloupce používají k filtrování a seskupení dat.

Porovnání tabulek faktů a dimenzí

Následující obrázek porovnává charakteristiky tabulek faktů a dimenzí.

Charakteristika Tabulka dimenzí Tabulka faktů
Účel modelu Ukládá obchodní entity Ukládá události nebo pozorování
Struktura tabulky Obsahuje klíčový sloupec a popisné sloupce pro filtrování a seskupení. Obsahuje klíčové sloupce dimenzí a sloupce číselných měr, které lze sumarizovat.
Objem dat Obvykle obsahuje méně řádků (ve srovnání s tabulkami faktů). Může obsahovat mnoho řádků.
Účel dotazu Filtrování a seskupení Sumarizace

Relace tabulek hvězdicového schématu

V modelu jsou tabulky dimenzí v relaci s tabulkami faktů s využitím relací 1:N. Relace umožňují, aby se filtry a skupiny použité na sloupce tabulky dimenzí rozšířily na tabulku faktů. Tento vzor návrhu je běžný.

Tabulky dimenzí lze použít k filtrování více tabulek faktů a tabulky faktů lze filtrovat podle více tabulek dimenzí. Není to ale o dobrý postup k tomu, aby se tabulka faktů přímo spojila s jinou tabulkou faktů.

Pokud si chcete tento koncept procvičit, stáhněte si soubor Adventure Works DW 2020 M01.pbix, otevřete ho a přepněte na diagram modelu.

Všimněte si, že model se skládá ze sedmi tabulek, z nichž jedna má název Sales a je tabulka faktů. Zbývající tabulky jsou tabulky dimenzí a mají následující názvy:

  • Customer (Zákazník)
  • Date (Datum)
  • Product
  • Reseller
  • Sales Order (Prodejní objednávka)
  • Sales Territory (Prodejní oblast)

Všimněte si vztahů mezi tabulkami dimenzí a faktů a toho, že každý směr filtru relace ukazuje směrem na tabulku faktů. V důsledku toho platí, že při použití filtrů na sloupce tabulky dimenzí (pro filtrování nebo seskupení podle hodnot sloupců) se související fakta filtrují a sumarizují.

Při zkoumání vzoru můžete vidět tvar hvězdy.

Další informace o návrhu schématu star najdete v tématu Vysvětlení star schématu a důležitosti pro Power BI.