1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Power BIのPower Queryで「参照」を使いこなしてみた

Posted at

はじめに

Power BIのPower Queryでデータを加工するとき、これまで「複製」をよく使っていました。でも最近、「参照」という機能の使いどころを教えてもらい、目からウロコでした。

備忘録もかねて、「参照」機能の使い方とそのメリットについてまとめてみます。


複製と参照の違いって?

まず簡単に、「複製」と「参照」の違いをおさらい。

操作 内容
複製 元のクエリの現在のステップをコピーし、新しいクエリとして独立させる。
参照 元のクエリを依存関係を保ったまま使い、新しいクエリを作成する。

「複製」はコピー&ペーストのようなもの。一方「参照」は、元のクエリを引き継いで派生させていくようなイメージです。


なぜ「参照」を使うと便利なのか?

ポイントは保守性の高さ

たとえば、共通の前処理を行ったデータをもとに、複数の派生テーブル(ファクトやディメンション)を作成したい場合、「参照」を使っておくと、元のクエリを修正するだけで派生先すべてに反映されます。


実際の例で見てみよう

以下のようなケースを想定します。

  1. 参照元となるオリジナルテーブル(中間加工済み)を作成
    たとえば、生データをクリーニングした中間テーブル
    参照活用例_1.png

  2. ファクトテーブルを「参照」で作成
    オリジナルテーブルを参照して、集計や数値系の加工を行う
    参照活用例_2.png

  3. ディメンションテーブルを「参照」で作成
    国、製品カテゴリなどを抽出し、マスタ化する
    参照活用例_3.png

  4. ディメンション側でキー列(ID)を作成
    例:Country列からCountryIDを作成
    参照活用例_4.png

  5. ファクト側の対応する列を変換
    Country列をCountryIDに変換して、データモデルに組み込む
    image.png

こうすることで、たとえば「国名の表記ゆれがあったので前処理を修正」したい場合も、オリジナルの参照元テーブルだけを直せばOKです。


まとめ

これまで「参照」ってあまり意識して使ってこなかったのですが、メンテナンス性の高さという点では非常に強力な機能だと感じました。

Power BIのデータモデルを設計する上で、クエリの再利用性将来的な修正のしやすさを意識したときに、「参照」はとても役立ちます。

実際の例の手順は省略しており、こちらも詳細知りたいという方おられましたら、コメントいただけると幸いです。リクエストありましたら、詳細を深堀しようと思います。

ぜひ、みなさんも試してみてください!


おまけ:複製 or 参照、迷ったときは?

  • 元のクエリと独立した処理をしたい → 複製
  • 元のクエリをベースに派生クエリを作りたい → 参照

と覚えておくとスムーズです!


ご質問やご意見あれば、コメントでぜひ教えてください!

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?