パフォーマンス問題の特定

中級 Power BI データモデリング

Sara Billen

Curriculum Manager at DataCamp

パフォーマンス問題の解決

ダッシュボードの読み込みが遅いコンピューター画面の前に座る女性の画像。

中級 Power BI データモデリング

パフォーマンスの問題

砂時計のイラスト。

問題が発生しやすい箇所:

  • データのインポート
  • DirectQueryによるデータベースのクエリ
  • ビジュアルの表示
  • 計算列と計算済み列
  • 非効率なリレーションシップ
    • 多対多のリレーションシップ
    • 双方向クロス フィルタリング
中級 Power BI データモデリング

データインポートの最適化

  • 不要な行と列を削除
  • 適切なデータ型を選択
    • 数値データはストレージを節約
    • キャストと集計は処理が遅くなる
  • データをグループ化して集計
    • ディスク上のデータ量を削減
    • 集計結果をより速く取得

Power BIへのデータインポート方法(Excel、CSV、データベース)を示す図。

中級 Power BI データモデリング

DirectQueryの最適化

  • データ接続の2つの方法:
    • インポート モデル:Power BIにデータを保存
    • DirectQuery:データベースに直接クエリ

$$

  • 並列クエリ数を制限
  • リレーショナル データベースへのアドバイス
    • 効率的なSQLクエリを記述
    • 適切なインデックスを使用
    • 必要な列と行のみ取得

Power BIのデータ読み込み方法を示す図。インポート機能とDirectQuery(データベースに接続)の比較。

中級 Power BI データモデリング

計算列と計算済み列の比較

カスタム列の作成方法:

計算列 計算済み列
DAX Power Query (M)
単純な計算に高速 単純な計算に高速
複雑な計算に低速 複雑な計算に高速
実行時にビジュアルごとに生成 インポート時に一度だけ生成
中級 Power BI データモデリング

フィルター メジャーを使用した双方向フィルタリングの削除

  • 双方向フィルタリングのユースケース
    • ディメンション間で関連するスライサー エントリを検索
  • フィルター メジャーを使用して、3つ目のユースケースで双方向リレーションシップを回避できます!
中級 Power BI データモデリング

フィルター メジャーを使用した双方向フィルタリングの削除

単方向フィルターのみとSlicer_MyFactTableフィルター メジャーを示すPower BIのデータモデル。

中級 Power BI データモデリング

フィルター メジャーを使用した双方向フィルタリングの削除

1) DAXでフィルター メジャーを作成:

Slicer_MyFactTable = INT(NOT ISEMPTY('My Fact Table'))
  • ファクト テーブルに少なくとも1つの値がある場合は1を返す
  • ファクト テーブルに値がない場合は0を返す

$$

2) スライサーにビジュアル フィルターを追加し、Slicer_MyFactTable = 1 を設定

中級 Power BI データモデリング

ビジュアルの表示

Power BIアプリケーションでレポートを表示しているコンピューター画面。

$$

  • 制限的なフィルターでデータを最小化
  • ビジュアルに表示するデータを最小限に抑える
  • レポート ページのビジュアル数を制限
  • 高速なカスタム ビジュアルのみ使用
中級 Power BI データモデリング

では、練習しましょう!

中級 Power BI データモデリング

Preparing Video For Download...