Power BI Desktop の最適化リボン
Power BI Desktop の [最適化] リボンを使用すると、レポート画面でビジュアルを追加または変更するときにデータ ソース クエリが一時停止するため、レポート作成のパフォーマンスを向上させることができます。
リボンの機能の使用方法は、モデルで使用されるテーブル データ ストレージ モードによって異なります。 次に例を示します。
- ビジュアルは、インポート モードでローカル テーブルへのクエリを実行します。
- ビジュアルは、DirectQuery モードを使用して、データ ソースのテーブル データへのクエリを実行します。
- インポート モードと DirectQuery モードの間のオプション (ハイブリッド テーブルや、一部のテーブルがインポート モードで他が DirectQuery モードであるセマンティック モデルなど)。
Power BI、Azure Analysis Services、または SQL Server Analysis Services から、ライブ接続または Power BI セマンティック モデルおよび Analysis Services 用の DirectQuery を使用して既に公開されているモデルからレポートを作成することもできますが、基になるテーブルがどのストレージ モードを使用しているかがわからない場合があります。
リボンには、どのレポート作成シナリオでも使用できる機能が含まれていますが、特に DirectQuery レポートは、ほとんどのビジュアルの変更を含めてデータ ソースにクエリが送信されるため、最も役立ちます。 データ ソースにクエリを送信する DirectQuery レポート ビジュアルは、パフォーマンス アナライザーで識別できます。
以降のセクションで、[最適化] リボンから利用できる機能について説明します。 この記事を読んだ後は、必ず [最適化] リボンを使用した DirectQuery 最適化シナリオを読み、クエリを実行せずに [プロパティ] ペインでリレーションシップを編集できるなどの、[最適化] リボンの機能とその他のパフォーマンスの向上によって DirectQuery のレポート作成がどのように効率化するかを確認してください。
ビジュアルの一時停止
通常、レポートを作成するときは、新しいビジュアルを作成するか、ビジュアルのフィールド ウェルに列とメジャーを追加または削除して既存のビジュアルを変更します。 このような変更を行うと、DAX クエリがデータ ソースに送信され、ビジュアル内のデータが更新されます。 パフォーマンス アナライザーを使用して DAX クエリが送信されているかどうかを確認できます。 ビジュアルの変更に時間がかかる場合は、[最適化] リボンの [ビジュアルの一時停止] を使用して、データ ソースに対する DAX クエリを停止できます。 一時停止すると、"レポート全体が一時停止されます"。 変更によってビジュアルが DAX クエリを送信する代わりに、ビジュアルは [ビジュアルに保留中の変更があります] 状態になります。 更新されるまで、またはレポートの一時停止が解除されるまで、データ ソースにクエリは送信されません。
一時停止すると、レポート画面は次のようになります。
- レポート内のすべてのビジュアルを更新する [最新の情報に更新] ボタンと、一時停止状態を解除する [ビジュアル クエリの再開] ボタンを含むバナーが表示されます。
- 個々のビジュアルには、そのビジュアルのみを更新できる [最新の状態に更新] ボタンを含むバナーが表示されます。 レポート内の他のビジュアルは一時停止されたままです。
- ビジュアルの以前の状態が可能な場合に表示されるか、空のままです。
- ビジュアルには列またはメジャーを追加、移動、または削除できるため、ビジュアルの更新やクエリの実行を変更のたびに待機することなく変更できます。
- 書式設定オプションはビジュアル内のデータに基づいているので、書式設定アクションがブロックされます。 ビジュアルが保留状態になる前に、書式設定オプションを実行でき、他の同様のオプションもすぐに表示されます。 ただし、条件付き書式などの書式設定アクションで、ビジュアルがクエリを実行する必要がある場合、ビジュアルは保留状態になります。
ビジュアルに変更を加えるときには、次のことができます。
ビジュアルの [ビジュアルに保留中の変更があります] バナーで [最新の情報に更新] を選択すると、そのビジュアルのみが更新され、レポートの残りの部分は一時停止されたままになります。
[最適化] リボンの [ビジュアルの更新]、またはレポート バナーの [最新の情報に更新] を選択すると、レポート上のすべてのビジュアルが更新され、レポートは一時停止されたままになります。
レポート バナーの [ビジュアル クエリの再開] または [最適化] リボンの [一時停止中のビジュアル] を選択すると、レポート上のすべてのビジュアルが更新され、レポートの一時停止が解除されます。
保留中の状態でビジュアルを操作する場合:
- ツールヒントは無効になります。
- フィルター ペインは影響を受けません。
- [ページの自動更新] は "一時停止します" が、ビジュアルが再開されると続行されます。
- Power BI Desktop の左下のステータス バーに、ビジュアル クエリが一時停止されていることが示されます。
- ビジュアルが一時停止されていることを示すレポート バナーは閉じることができますが、[最適化] リボンの [一時停止中のビジュアル] またはレポート バナーの [ビジュアル クエリの再開] を選択するまで、レポートは一時停止されたままになります。
- レポートを一時停止した状態で Power BI Desktop ファイルを保存して閉じると、レポートは再度開いたときに一時停止されたままになります。
- 以前に追加されたフィールドを追加するなどのアクションを繰り返しても、ビジュアルの保留状態がトリガーされない、またはビジュアルの保留状態が解除されない場合があります。 使用可能なビジュアル構成と一致するデータのキャッシュがある場合は、Power BI Desktop で、クエリが送信される代わりに、そのデータが使用されます。
実際のレポート作成シナリオで一時停止がどのように役立つかの詳細については、「DirectQuery 最適化シナリオ - クエリを実行せずに DirectQuery レポートを変更する」を参照してください。
ビジュアルを更新します
[最適化] リボンの [ビジュアルの更新] またはレポート バナーの [最新の情報に更新] を選択して、更新が完了した後もレポートを一時停止したまま、レポート内のすべてのビジュアルを手動で更新します。 この方法で更新すると、実質的には[パフォーマンス アナライザー] ペインの [ビジュアルの更新] と同じ動作になります。 詳細については、「Power BI の更新の種類」を参照してください。
最適化プリセット
最適化プリセットを使用すると、レポート シナリオに合わせて事前に定義された設定の組み合わせを簡単に選択して適用できます。
最適化プリセットには、次が含まれます。
クエリを減らす - クロス強調表示とクロスフィルター処理をオフにし、フィルター ペインに [適用] ボタンを追加します。 この設定は、DirectQuery 接続に最適です。 クエリを減らすために事前に定義された設定の組み合わせは、DirectQuery を使用するためのレポートの設計のガイダンス ページで説明されている推奨ベスト プラクティスに従います。 クエリを減らす設定の適用がレポート作成に影響するシナリオについては、「DirectQuery 最適化シナリオ - クエリを減らす設定を適用する」を参照してください。
対話機能 - インポート モードに最適な、スライサーとフィルターのクロス強調表示、クロスフィルター処理、リアルタイム変更が可能です。 これは、Power BI Desktop の既定の設定です。
カスタマイズ - [Power BI Desktop オプション] ダイアログの [クエリを減らす] 設定が開きます。 クエリを減らすどの機能を使用するかを選択できます。 クエリを減らす設定の適用がレポート作成シナリオにどのように影響するかについては、「DirectQuery 最適化シナリオ - クエリを減らす設定を変更する」を参照してください。
パフォーマンス アナライザー
[最適化] リボンには、[表示] リボンに示されているのと同じ [パフォーマンス アナライザー] ボタンが含まれています。 パフォーマンス アナライザーを使用すると、レポートの各要素が対話中にどのように動作するか、リソースの消費量が最も大きい (または最も小さい) のはパフォーマンスのどの側面かを測定するログを表示して記録できます。 パフォーマンス アナライザーを使用すると、特定のビジュアルが DirectQuery を使用しているかどうかを判断するのにも役立ちます。 DirectQuery ビジュアルには、[直接クエリ] 行があります。
詳細については、パフォーマンス アナライザーを使用したレポート要素のパフォーマンスの確認に関する記事を参照してください。
すべてのスライサーの適用およびクリア ボタンを作成する
レポート ページに多数のスライサーがある場合は、[Apply all slicers] (すべてのスライサーを適用) ボタンと [Clear all slicers] (すべてのスライサーをクリア) ボタンをページに追加することを検討してください。 これらのボタンにより、ページ上のすべてのスライサーを 1 回のクリックで適用またはクリアして、スライサーから送信される不要な視覚化クエリの数を減らすことができます。 詳しくは、「Power BI レポートにすべてのスライサーを適用およびクリアするボタンを作成する」を参照してください。