LuckyTemplates の GroupBy: VertiPaq の暗黙関数

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

このチュートリアルでは、LuckyTemplates のストレージ エンジンと暗黙の GroupBy について説明します。パフォーマンスの背後で何が起こっているかを学び、潜在的なボトルネックを確認します。これにより、DAX のパフォーマンスを高速化するために、これらの問題を軽減するためのアイデアや戦略を作成できるようになります。

ストレージ エンジンのクエリは、xmSQL と呼ばれる言語で表現されます。これは実際のプログラミング言語ではなく、ストレージ エンジンの動作を視覚的に表現したものです。これにより、ユーザーはさまざまなクエリの実行時にバックグラウンドで計算が行われている内容を確認できます。

目次

LuckyTemplates の暗黙的な GroupBy

最初に確認する必要があるのは、すべての xmSQL に含まれる暗黙の GroupBy です。

これは、EVALUATE 関数と VALUES 関数を含むサンプル クエリです。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

クエリは、DimCalendar テーブルから年のすべての値を取得します。10 行のデータが返されたことがわかります。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

このプロセスは、クエリが DimCalendar から暦年を選択し、年ごとにグループ化する SQL ステートメントに示されています。クエリには他に何もないため、このステートメントは計算に GroupBy 関数を暗黙的に含んでいます。暗黙的な GroupBy は、集計を使用する場合にさらに顕著になります。

ストレージ エンジン内の集約

集計とは何かを理解するには、DAX Studio に移動し、サーバー タイミングとクエリ プランをオンにします。次に、このサンプル測定を実行します。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

クエリを実行すると、スキャンが 1 つある前のサンプル クエリとは異なり、このメジャーには 2 つあることがわかります。これは、最初のサンプルには DimCalendar Year の値しか含まれていないためです。このサンプル クエリには暦年と集計が含まれています。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

最初のスキャンは実際のクエリです。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

DimCalendar Year を選択し、データ モデルの関係に従って販売データ テーブルから販売数量を合計します。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

データ モデルでは、DimCalendar テーブルは、Fact テーブルの Purchase Date 列から Calendar テーブルの Date 列に続きます。

2 回目のスキャンでは、すべての欠損値が確実に考慮されます。

結果では、売上高が 2015 年から 2018 年までのみ表示されていることがわかります。ただし、2012 年から 2014 年は空白であっても表示されます。

LuckyTemplates の GroupBy: VertiPaq の暗黙関数

結論

DAX Studio のストレージ エンジンは、計算の背後にあるプロセス全体を表示します。これにより、各関数を監視し、DAX のパフォーマンスを低下させる可能性のあるヒットを確認できます。このような情報を使用して、DAX コードの実行における潜在的なボトルネックを軽減するソリューションを作成できます。

DAX の実行が遅い場合は、ストレージ エンジンを調べて、レポートのパフォーマンスを向上させるために何ができるかを見つけてください。


マルチスレッド環境の VertiPaq ストレージ エンジン
LuckyTemplates の VertiPaq 圧縮とストレージ
LuckyTemplates Desktop の DAX Studio とは









Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。