パフォーマンスの最適化の概要
パフォーマンスの最適化 (パフォーマンス チューニングとも呼ばれる) では、セマンティック モデルの現在の状態を変更して、より効率的に実行されるようにする必要があります。 基本的に、セマンティック モデルを最適化すると、そのパフォーマンスは向上します。
テストおよび開発環境でレポートが正常に動作していても、運用環境にデプロイしたときにパフォーマンスの問題が発生する可能性があります。 レポート ユーザーの観点からは、パフォーマンス低下の特徴は、レポート ページの読み込みが遅いことや、ビジュアルの更新に時間がかかることです。 このパフォーマンス低下によって、ユーザー エクスペリエンスが損なわれます。
データ アナリストは、データの処理に約 90% の時間を費やします。パフォーマンス低下の 10 回のうち 9 回は、不適切なセマンティック モデル、不適切な Data Analysis Expressions (DAX)、または両者の組み合わせの直接的な結果です。 パフォーマンスのためにセマンティック モデルを設計するプロセスは面倒であり、軽視されることがよくあります。 しかし、開発中にパフォーマンスの問題に対処すれば、堅牢な Power BI セマンティック モデルができます。それによってレポートのパフォーマンスが向上し、より良いユーザー エクスペリエンスが得られます。 最終的に、最適化されたパフォーマンスを維持することもできます。 組織が成長するにつれて、データのサイズが大きくなり、セマンティック モデルがより複雑になります。 セマンティック モデルを早期に最適化すると、この成長がセマンティック モデルのパフォーマンスに与える可能性がある悪影響を軽減できます。
セマンティック モデルのサイズが小さいほど、使用されるリソース (メモリ) が少なくなり、データの更新、計算、レポート内のビジュアルのレンダリングが高速になります。 そのため、パフォーマンスの最適化プロセスには、セマンティック モデルのサイズを最小限に抑え、モデル内のデータを最も効率的に使用することが含まれます。これには次のことが含まれます。
正しいデータ型が使用されていることを確認する。
不要な列と行を削除する。
値の繰り返しを避ける。
数値列をメジャーに置き換える。
カーディナリティを削減する。
モデル メタデータを分析する。
可能な限りデータをまとめる。
このモジュールでは、エンタープライズレベルのパフォーマンスのためにセマンティック モデルを最適化するときに必要な手順、プロセス、概念について説明します。 ただし、次のことにご注意ください。Power BI のパフォーマンスとベスト プラクティスの基本的なガイダンスに従うことは効果的ですが、クエリ パフォーマンスのためにセマンティック モデルを最適化するには、元のデータ ソースでのセマンティック モデル最適化を促進するために、データ エンジニアと連携することが必要になる可能性があります。
たとえば、あなたは、Tailwind Traders で Microsoft Power BI の開発者として作業しているとします。 あなたは、数年前に別の開発者 (のちに組織を退職した人物) によって構築されたセマンティック モデルを見直すタスクを与えられました。
そのセマンティック モデルで生成されるレポートに対して、ユーザーから否定的なフィードバックを受け取りました。 ユーザーはレポートに表示された結果に満足していますが、レポートのパフォーマンスには満足していません。 レポート内のページの読み込みに時間がかかりすぎるため、特定の選択が行われたときにテーブルがすばやく更新されません。 このフィードバックに加え、この特定のセマンティック モデルのファイル サイズが大きすぎて組織のリソースに負担をかけていることが、IT チームから指摘されています。
セマンティック モデルを確認してパフォーマンスの問題の根本原因を特定し、パフォーマンスを最適化するための変更を行う必要があります。
このモジュールを完了すると、次のことができるようになります。
メジャー、リレーションシップ、ビジュアルのパフォーマンスを確認する。
変数を使用して、パフォーマンスとトラブルシューティングを向上させる。
カーディナリティのレベルを下げてパフォーマンスを向上させる。
テーブル レベルのストレージで DirectQuery モデルを最適化する。
集計を作成および管理する。