DAX Studio のクエリ プランとサーバー タイミング

DAX Studio のクエリ プランとサーバー タイミング

このチュートリアルでは、 DAX Studio のクエリ プランとサーバー タイミングについて学習します。これは、 DAX クエリを実行するたびにバックグラウンドで何が起こるかの概要です。

[ホーム] タブの [トレース] ペインに [クエリ プランとサーバー タイミング] オプションがあります。

DAX Studio のクエリ プランとサーバー タイミング

目次

DAX Studio のクエリ プラン

[クエリ プラン] オプションをクリックすると、LuckyTemplates またはSQL Server Analysis Servicesのデータ モデルへの接続が作成されます。

クエリ プランは、タスクの論理的および物理的なフローを定義する数式エンジンによって生成されるステートメントです。

[出力] ペインに、クエリ トレースが開始されたことが表示されます。

DAX Studio のクエリ プランとサーバー タイミング

これ以降、表形式モデルで実行するすべてのコードは、数式エンジンによって構築されたクエリ プランによって追跡されます。

物理的および論理的なクエリ計画

クエリ プラン オプションをクリックすると、[出力] ウィンドウに新しいペインが開きます。クエリ プラン ペインは、物理クエリ プラン論理クエリ プランの2 つのサブペインに分かれています。

DAX Studio のクエリ プランとサーバー タイミング

例として、Products テーブルを評価するDAX コードを作成してみましょう。このコードを実行すると、物理クエリ プランと論理クエリ プランの両方にいくつかの行項目が表示されます。

DAX Studio のクエリ プランとサーバー タイミング

DAX コードを作成した後、DAX パーサーはコードの有効性をチェックし、間違いがないことを確認します。次に、数式エンジンは論理クエリ プランを準備します。また、ストレージ エンジンからデータを受け取ります。

その後、データ キャッシュがストレージ エンジンから取得されます。次に、このエンジンは物理的なクエリ プランを準備して実行します。実行プロセスが完了すると、結果が得られます。

DAX Studio でのサーバーのタイミング

[サーバー タイミング] オプションをクリックすると、出力ウィンドウに新しいペインが表示されます。これには CPU に関する情報が含まれます。

フォーミュラ エンジン (FE) とストレージ エンジン (SE)のデータも表示できます。

DAX Studio のクエリ プランとサーバー タイミング

同じ DAX コードを実行すると、[サーバー タイミング] ペインに新しい情報が表示されます。

DAX Studio のクエリ プランとサーバー タイミング

[合計] は、クエリの実行にかかる合計時間を示します。CPU に複数のコアがある場合は、複数のセグメントを同時にスキャンできます。これはSE CPUが表すものです。

FEとSE は、各エンジンがデータを取得して結果を DAX Studio に返すまでかかった時間を示します。

SEクエリは、 VertiPaq または DirectQuery ストレージ エンジンに対して実行されたクエリの数を示します。最後に、SE Cache は、ストレージ エンジンのデータ キャッシュに保持されているコードの量を示します。

この表には、実行したクエリに関する追加情報も表示されます。

DAX Studio のクエリ プランとサーバー タイミング

各列は以下を表します。

  • Line にはクエリの行番号が表示されます。
  • サブクラスは使用される演算子を示します。
  • 期間は、ストレージ エンジンがクエリを実行するのにかかった時間を示します。
  • 行には、生成されたテーブルの行数が表示されます。
  • KB は、テーブルによって消費される RAM の量を示します。

プロセスの内訳

[サーバー タイミング] ペインのテーブル内の行をクリックすると、クエリの擬似言語が表示されます。

DAX Studio のクエリ プランとサーバー タイミング

この例では、ストレージ エンジンは 2,500 行のデータ キャッシュを数式エンジンに返します。次に、数式エンジンは物理的なクエリ プランを準備します。物理クエリ プランが実行されると、DAX Studio のテーブルの形式で結果が得られます。

プロセスとその結果のテーブルの変更は、DAX コードに適用するシナリオによって異なります。別の関数を使用したり、新しい計算テーブルを作成したりすることもできます。これらは、DAX Studio のエンジンの処理速度に影響します。


LuckyTemplates の非表示の日付テーブルを削除してパフォーマンスを向上させる
LuckyTemplates の DAX クエリ – 論理的および物理的なクエリ プラン
LuckyTemplates DAX Studio でクエリ設定を構成する

結論

クエリ プランには、クエリを実行するためにデータベースが従う命令のリストが表示されます。一方、Server Timings では、フォーミュラ エンジン、ストレージ エンジン、データ モデルに関する特定のメトリクスが表示されます。

これらのオプションの使用方法を学ぶことで、DAX コードを実行するたびにバックグラウンドで何が起こっているかについてより深く理解できるようになります。


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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。