次の方法で共有


Power BI チート シート

このページでは、Power BI と Azure Databricks でデータを効率的に管理し、クエリのパフォーマンスを最適化し、効率的なダッシュボードを作成するための明確で意見の高いガイダンスを提供します。

Azure Databricks で Power BI を使用するためのいくつかのベスト プラクティスのリファレンス実装を示す一連の実用的なクイック スタートについては、この リポジトリを参照してください。

Azure Databricks と Power BI を接続する

ベスト プラクティス インパクト Docs
異なる Azure Databricks 環境に接続するときに Power BI パラメーターを使用する 異なる Azure Databricks ワークスペースまたは異なる Azure Databricks SQL ウェアハウスに接続するときの柔軟性を実現します。
Azure Databricks の Power BI サービスへの発行機能を使用する Azure Databricks UI を離れることなく、シームレスなカタログ統合とデータ モデルの同期を有効にします。
Azure Databricks の Power BI への自動発行を使用する データ パイプラインから直接 Unity カタログから Power BI にデータセットを発行します。

最適なストレージ モードを選択する

ベスト プラクティス インパクト Docs
ファクト テーブルに DirectQuery を使用し、ディメンション テーブルにデュアルを使用する (インポートではない) 最適なストレージ モードを使用して、より効率的な SQL クエリを生成します。
可能な限り DirectQuery をインポートよりも優先する ガバナンスと可読性を維持できます。
混合ストレージ モードに複合モデルを使用する DirectQuery テーブル、デュアル テーブル、インポート モード テーブル、集計テーブルとハイブリッド テーブルを混在して使用できます。
リアルタイム データを使用して集計された履歴データにハイブリッド テーブルを使用する 効率的なメモリ内クエリを有効にします。

データ アクセスを最適化する

ベスト プラクティス インパクト Docs
ユーザー定義集計を使用する 事前に集計されたデータをキャッシュすることで、大規模な DirectQuery セマンティック モデルに対するクエリ パフォーマンスが向上します。
自動集計を使用する レポートのパフォーマンスを最大限に高めるには、クエリ履歴に基づいて集計を作成することで、DirectQuery セマンティック モデルを継続的に最適化します。
テーブルのパーティション分割または増分更新を使用する データのインポートを高速化し、特に非常に小さく、静的でパフォーマンスが高い (2 秒未満) レポートの場合は、より大きなデータセットを管理できます。
[すべてのスライサーの適用] ボタンと [すべてのスライサーのクリア] ボタンを追加する ユーザーがレポート フィルターを操作するときにクエリ削減設定を利用して、不要なクエリを防止します。
アップストリーム インジェストで 参照整合性 が検証されている場合は、テーブルの関係を定義するときに参照整合性を想定する SQL クエリでより効率的な結合戦略を有効にします。
DirectQuery の場合は、クエリの並列化構成設定と、Power BI セマンティック モデルの次のプロパティを確認します。
  • データ ソースあたりの最大接続数
  • 同時評価の最大数
  • 同時実行ジョブの最大数
  • MaxParallelismPerQuery
クエリの並列化が向上し、SQL ウェアハウスの使用率が最大化され、全体的なパフォーマンスが向上します。

データ モデルを微調整する

ベスト プラクティス インパクト Docs
左に移動する変換 コア ビジネス ロジックをデータ ソースに近づけ、データの品質が高く、高速で、使用コストが低くなるようにします。 SQL ビューは、Databricks SQL エンジンの機能を利用して、PowerQuery 変換や DAX 数式と比較して、より効率的なレポート実行を実現します。
DAX 数式を使用する必要がある場合は、DAX 数式を最適化し、大きな結果セットを回避します。 パフォーマンスの低下につながる非効率的な計算を防止します。
セマンティック モデルで DAX 計算列と計算テーブルを回避し、Gold テーブルでこのデータを直接定義する 事前計算済みの指標は、Gold レイヤーで最も高いパフォーマンスを発揮します
カレンダーベースのタイム インテリジェンスを活用する DirectQuery セマンティック モデルを使用すると、タイム インテリジェンス計算をより効率的に実行でき、より高速でスケーラブルなレポートのロックを解除できます

パフォーマンスとメトリックを監視する

ベスト プラクティス インパクト Docs
Power BI Performance Analyzer を使用してレポート要素のパフォーマンスを調べる 最も時間がかかるビジュアライゼーションと、そのボトルネックの所在を特定します。

その他のリソース