Databricksワークフローの新たなPower BIタスクを試す

こちらで発表された、ワークフローの新たなタスクタイプである**Power BI**を試します。

https://www.databricks.com/jp/blog/announcing-automatic-publishing-power-bi

こちらに書いたように、これまでも手動でDeltaテーブルをPower BIに公開することは可能でした。

https://qiita.com/taka_yayoi/items/e907b0703d65311d2cab

今回、この機能がワークフローに組み込まれたので、色々な処理の結果できたDeltaテーブルを自動でPower BIに公開することが可能になります。

マニュアルはこちらです。

https://docs.databricks.com/aws/ja/jobs/powerbi

前提として、Power BI(Fabric)のワークスペースがセットアップされているものとします。

# Unity Catalogの接続の作成

まずは、Power BIへの接続オブジェクトを作成します。

https://docs.databricks.com/aws/ja/partners/bi/power-bi#create-connection

カタログエクスプローラから**接続**にアクセスし、新規に接続を作成します。認証タイプはPATかOAuthを選択できます。

![Screenshot 2025-04-02 at 13.06.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/bcc0f0ee-7278-4f6e-b7db-c19c28e7464a.png)

[こちら](https://docs.databricks.com/aws/ja/partners/bi/power-bi#%E3%82%B9%E3%83%86%E3%83%83%E3%83%97-1-%E8%AA%8D%E8%A8%BC%E6%83%85%E5%A0%B1%E3%82%92%E6%BA%96%E5%82%99%E3%81%99%E3%82%8B)の手順にしたがって、今回はテナントに`common`を指定します。

![Screenshot 2025-04-02 at 13.06.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/1adba2e6-d11c-488e-829b-4207b8f94c67.png)

OAuthの認証が求められるので、承認します。

![Screenshot 2025-04-02 at 13.06.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/e6d6cdf2-5ab9-4459-9047-a18cb8158600.png)

これで接続オブジェクトが作成されました。

![Screenshot 2025-04-02 at 13.07.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/b24f4317-8e52-4d28-becd-9d935196e907.png)

# Power BIタスクを含むジョブの作成

タスクの種類で**Power BI**が選択できるようになっています。

![Screenshot 2025-04-02 at 13.07.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/cbbc7169-2f8e-47fd-8b36-bef650312828.png)

上で作成した接続オブジェクト、公開先のPower BIワークスペース、セマンティックモデル、クエリーモード、Databricksから更新するテーブル(やスキーマ)や認証方法を選択します。詳細は[こちら](https://docs.databricks.com/aws/ja/jobs/powerbi#power-bi-%E3%82%BF%E3%82%B9%E3%82%AF%E3%82%92%E6%A7%8B%E6%88%90%E3%81%99%E3%82%8B)をご覧ください。

![Screenshot 2025-04-04 at 16.28.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/1831e294-a6ff-4e86-b9b7-1dd70fde12dc.png)

今回公開するテーブルは以下のようなリレーションを持っています。

![Screenshot 2025-04-04 at 16.14.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/74acd3f9-f283-4adc-b4af-0e1db85c4fb6.png)

# ジョブの実行

タスクを保存してジョブを実行します。問題なければ成功するはずです。

![Screenshot 2025-04-04 at 16.09.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/3cf4ef56-a9b8-4da0-93a3-4c2a496883e3.png)

# Power BI側での確認

Power BIにアクセスすると、上で指定したセマンティックモデルが作成されています。

![Screenshot 2025-04-04 at 17.07.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/11fb253c-b420-493b-a5bd-aaacbbc824b4.png)

Databricksにおけるリレーションシップが保持されています。

![Screenshot 2025-04-04 at 16.31.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/3dce2c2d-12ef-4c6f-bcb9-d4e534988e03.png)

データにもアクセスできます。今回は**DirectQuery**モードなので、Databricksに参照しにいく形ですね。

![Screenshot 2025-04-04 at 16.35.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/20a98f9c-883c-4b39-81e7-a6ee9fbdaa56.png)

Power BI側で**データソースの資格情報がない**というメッセージが出る場合には、**Manage connections and gatways**から接続情報にアクセスして、認証方法を指定してください。

![Screenshot 2025-04-04 at 16.35.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/19024aa8-5ba5-46f4-8492-b07de5bf6342.png)
![Screenshot 2025-04-04 at 16.35.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/00d7f470-d36b-4a3e-90fd-e5943ab07e2c.png)

当然レポートも作れます。

![Screenshot 2025-04-04 at 16.36.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/dec14d41-dfbf-48cd-8cb5-d555990f2298.png)

今回はDirectQueryモードでしたが、ImportモードにしてPower BI側にデータをキャッシュする場合には、定期的なDatabricksジョブの実行でPower BI側のデータを更新するといったことも可能です。ご活用ください！

### はじめてのDatabricks

[はじめてのDatabricks](https://qiita.com/taka_yayoi/items/8dc72d083edb879a5e5d)

### Databricks無料トライアル

[Databricks無料トライアル](https://databricks.com/jp/try-databricks)