Funkce UNION DAX versus Power Query

V tomto tutoriálu se naučíte používat funkci UNION. Tento tutoriál porovná výkon funkce UNION oproti jiným technikám pro kombinování tabulek.

TheFunkce kombinuje dvě tabulky do jediné tabulky zkombinováním jejich řádků a odstraněním všech duplicitních řádků.

Příkladem v tomto kurzu je tabulka Prodeje, která byla rozdělena do tří tabulek pro každý rok (2007, 2008, 2009).

Obsah

Funkce UNION v jazyce DAX

Otevřete a spusťte Plán časování serveru a dotazů.

Funkce UNION DAX versus Power Query

Jako příklad je použit kód DAX níže:

Funkce UNION DAX versus Power Query

Po spuštění kódu přejděte na kartu Časování serveru . Můžete vidět, že spuštění kódu trvá celkem 5,4 sekundy. Většina exekučního času byla strávena v . Každý z těchto tří dotazů obsahuje stejnou operaci, ale roky se liší.

Funkce UNION DAX versus Power Query

Poté, co Storage Engine vrátí tyto tři dotazy, provede modul UNION, který lze vidět v plánu logických dotazů. Plán dotazů také provádí výpočet celkového prodeje.

Funkce UNION DAX versus Power Query

V plánu fyzických dotazů můžete vidět tři datové mezipaměti obsahující operace provedené pro každý rok v tabulce Prodej.

Funkce UNION DAX versus Power Query

Porovnání výkonu DAX

Chcete-li vytvořit srovnání, vytvořte míru pro celkový prodej pomocí původní tabulky Prodeje.

Funkce UNION DAX versus Power Query

Pokud tento kód spustíte a přejdete na kartu Časování serveru , uvidíte, že je to výrazně efektivnější než funkce UNION.

Funkce UNION spotřebuje 97,9 kilobajtů, zatímco nová míra spotřebuje pouze 1 kB.

Funkce UNION DAX versus Power Query

Když používáte UNION, DAX Engine vrací velké množství datové mezipaměti zpět do Formula Engine. To vytváří velký tlak na RAM.

Pokud tedy pracujete s datovým modelem obsahujícím více než milion řádků, nedoporučuje se používat funkci UNION

Alternativy funkcí UNION DAX

Místo použití UNION můžete pro tento příklad použít tři funkce SUMX. Tedy jedna funkce SUMX pro každý rok.

Funkce UNION DAX versus Power Query

Když spustíte tento kód a přejdete na kartu Časování serveru, můžete vidět, že doba provádění je výrazně nižší. Z 5 400 ms na 33 ms se stále prováděly tři různé dotazy.

Funkce UNION DAX versus Power Query

Dalším způsobem je připojit tabulku datového modelu v Power Query nebo v samotném zdroji dat.

Ale nejlepší možností je vytvořit tabulku, která provede spojení těchto tří tabulek. Tato možnost má ale svá pro a proti.

Použití vypočítané tabulky umožňuje ušetřit celkový čas zpracování oproti provádění připojení v Power Query. To však způsobí zvýšení velikosti databáze ve VertiPaq.

Když použijete vypočítanou tabulku, vytváříte novou tabulku, která kombinuje tyto tři tabulky. Tyto tři rozdělené tabulky však zůstanou v databázi i nadále.

Funkce UNION DAX versus Power Query

V tomto příkladu spotřebují tyto tři tabulky celkem 25 MB. Pokud vytvoříte vypočítanou tabulku, spotřebuje dalších 25 MB ve vaší paměti RAM.

U citlivých případů, jako jsou tyto, musíte učinit kvalifikované rozhodnutí o tom, jaký by byl nejlepší postup.

Závěr

Funkce UNION v jazyce DAX kombinuje dvě tabulky do jedné, což usnadňuje analýzu dat. Funguje tak, že jako vstup vezme dvě tabulky a vrátí novou tabulku, která obsahuje všechny řádky z obou vstupních tabulek. Tato funkce má však svá omezení.

Funkce UNION může být pomalejší než jiné metody kombinování dat, zejména pokud jsou vstupní tabulky velké. Může také spotřebovat více místa v úložišti na rozdíl od jiných alternativ.

Kdykoli situace vyžaduje kombinaci tabulek, je důležité nejprve zvážit pro a proti, než se rozhodnete použít funkci UNION. Mezi vaše alternativy patří funkce SUMX, tabulka datového modelu nebo vypočítaná tabulka.

Vše nejlepší,


Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.