28
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Power Automateで、Power BI データフローの更新をトリガーにPower BI データセットを更新

Last updated at Posted at 2022-12-21

はじめに

 Power BI サービスには、データソースに接続しデータ分析に適した形にクエリで整形するデータフロー、可視化用のデータモデルであるデータセットがあります。Power BI サービス上でこれらの更新をスケジュール化して自動で行う場合、データフローを更新してから、データセットを更新し... とやっていました。
 この方法だとスケジュール更新の設定が30分単位で設定されるため、データフローの更新が終わってから約30分ほど待つことになります。
 今回の対応により、データフロー完了をトリガーにより、Power Automateのクラウドフローが発動し、データセットを更新するアクションを実行するので、一連の処理に待ち時間のムダがなくなり、処理時間が大幅に短縮されます。

Before

 概要図で書くと以下です。
image.png

 こちらをPower Automateのクラウドフローを使い、データフローの更新が完了したことをトリガーにデータセットを更新するようにしました。

公式ドキュメント

 公式のLearn / ドキュメント(Docs)はこちらです。

概要図等

 Power BIのワークスペースの中身はこちら
image.png
 全体を概要図にするとこんな感じです

After

image.png

Power Automateのフロー

 トリガーとアクションの中身はこちらです。

image.png

image.png

 アクションを追加して更新が終わったら、Teamsにメッセージを送信するなどもできますね。

トリガー(データフローのスケジュール更新)

 こちらはPower BI サービスでスケジュール設定して実行するものです。設定時間後、(即座ではなく順次)実行されます。

image.png

 今回は9:00に設定していたものが、9:01に実行され、約1分で終わりました。データソースとなるAWS上のAthenaからのデータ取得です。

Power Automateの実行履歴

 トリガーが発動し、無事アクションも呼び出してくれたようです。
image.png

Power BI データセットの更新確認

 更新履歴を見ると、無事更新してくれていました。
 呼び出しはスケジュール更新の「計画済み」でも、手動で更新する「オンデマンド」でもなく、Power Automateからの実行は「API経由」となります。
image.png

(参考)データ更新確認用のPower BIレポート

 管理用にデータの更新時間や件数確認用ボードを作っておくと、確認しやすく便利です~

image.png

(参考)Power Appsのデータフローでも利用可能

 データフローの更新完了トリガーは、Power Appsのデータフローでも、もちろん使えます。
image.png
 グループの種類でどちらを使うかを決めます。

  • Workspace Power BIの場合
  • Environment Power Appsの場合

更新回数の制限は通常利用と同じ

 Power Automate経由の更新も、通常の回数制限と同じです。Power BI Proなら8回/日、Power BI Premium系なら48回/日です。

おわりに

 Power Platform内での連携、シンプルにスマートにできてありがたいです。

28
14
0

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
28
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?