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 コードを実行するたびにバックグラウンドで何が起こっているかについてより深く理解できるようになります。


Python における Self とは: 実際の例

Python における Self とは: 実際の例

Python における Self とは: 実際の例

RでRDSファイルを保存してロードする方法

RでRDSファイルを保存してロードする方法

R の .rds ファイルからオブジェクトを保存および読み込む方法を学習します。このブログでは、R から LuckyTemplates にオブジェクトをインポートする方法についても説明します。

最初の N 営業日の再考 – DAX コーディング言語ソリューション

最初の N 営業日の再考 – DAX コーディング言語ソリューション

この DAX コーディング言語チュートリアルでは、GENERATE 関数の使用方法とメジャー タイトルを動的に変更する方法を学びます。

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

このチュートリアルでは、マルチスレッド動的ビジュアル手法を使用して、レポート内の動的データ視覚化から洞察を作成する方法について説明します。

LuckyTemplates のフィルター コンテキストの概要

LuckyTemplates のフィルター コンテキストの概要

この記事では、フィルター コンテキストについて説明します。フィルター コンテキストは、LuckyTemplates ユーザーが最初に学習する必要がある主要なトピックの 1 つです。

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Apps オンライン サービスが、さまざまなソースから生成されたさまざまなレポートや分析情報の管理にどのように役立つかを示したいと思います。

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

LuckyTemplates でのメジャー分岐や DAX 数式の結合などの手法を使用して、利益率の変化を計算する方法を学びます。

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

このチュートリアルでは、データ キャッシュの具体化のアイデアと、それが結果を提供する際の DAX のパフォーマンスにどのように影響するかについて説明します。

LuckyTemplates を使用したビジネス レポート

LuckyTemplates を使用したビジネス レポート

これまで Excel を使用している場合は、ビジネス レポートのニーズに合わせて LuckyTemplates の使用を開始するのに最適な時期です。

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて