雲のメモ帳

猫とクラウドと旅行が好きなインフラエンジニアです。 日々の調べたことや興味が持ったことをこのブログにアウトプットします。

PowerBIデスクトップからDatabricksに接続して分析する

これはなに?

PowerBIデスクトップから、Databricks上のテーブルに接続し可視化する手順を記載します。
流れとしては、Databricks上でアクセス情報及びクレデンシャルを取得し、その情報を基にPowerBIデスクトップから接続、可視化を実施します。

環境/前提条件

環境

  • Databricksのプラットフォーム : Azure Databricks
  • ローカル端末 : Windows10

前提条件

  • Azure Databricks上で、クラスター 及び テーブルが作成されていること
  • PowerBI デスクトップがインストールされていること

Power BI Desktop — 対話型レポート | Microsoft Power BI

1. Databricks 作業

1-1. アクセス情報の取得

PowerBI デスクトップからのDatabricksへの接続情報を確認します。

1. Databricksのコンソールにログインし、[Clusters] - [<接続するクラスター>] をクリックする。

2. [Advances Options] - [JDBC/ODBC] をクリックし、以下の値をメモする。

  • Server Hostname
  • HTTP Path

f:id:ykoomaru:20201028165132p:plain

1-2. クレデンシャルの発行

PowerBI デスクトップからのDatabricksへの接続するためのクレデンシャルを発行します。

1. Databricks コンソール右上のユーザーアイコンより、[User Settings] をクリックする。

2. [Generate New Token] をクリックする。 f:id:ykoomaru:20201028165147p:plain

3. 以下の値を入力し、[Generate] をクリックする。

  • Comment ※任意 : コメント
  • Lifetime(days) : Tokenの有効期限。(日)

f:id:ykoomaru:20201028165240p:plain

4. 発行されたTokenをメモする。
f:id:ykoomaru:20201028165200p:plain

以上で、Databricks上での作業は完了です。

2. PowerBI デスクトップ 作業

2-1. Databricksに接続する

1-1 で取得した接続情報を基にDatabricksに接続します。

1. PowerBI デスクトップを起動し、[データを取得] - [詳細...] をクリックする。
f:id:ykoomaru:20201028165307p:plain

2. [Azure] - [Azure Databricks] を選択し、[接続] をクリックする。 f:id:ykoomaru:20201028170837p:plain

3. 以下の情報を入力し、[OK] をクリックする。

1.で取得した Server Hostname と HTTP Path を入力します。

  • Server Hostname : Databricksの接続ホスト名
  • HTTP Path : Databricksの接続HTTP Path
  • Database ※任意 : 指定すると特定のデータベースのみ接続できる
  • Batch Size ※任意 : 取得するデータの最大行数

f:id:ykoomaru:20201028165318p:plain

4. [Personal Access Token]をクリックし、「Personal Access Token」を入力、[接続] をクリックする。
1-2. で取得したクレデンシャルを入力します。
f:id:ykoomaru:20201028165517p:plain

5. テーブル情報が取得できるので、「<連携したいテーブル>」を選択し、[読み込み] をクリックします。
f:id:ykoomaru:20201028165326p:plain

以上の手順で、Databricksに接続が完了し、PowerBI デスクトップ上からデータを閲覧できるようになります。

2-2. 可視化

データを取り込んだら、後はExcelなどからPowerBI デスクトップに取り込んだデータと同じように可視化することができます。

f:id:ykoomaru:20201028165331p:plain

3. 最後に

Databricksの標準の可視化機能で手が届かない部分を、PowerBIやQlikなどの外部BIツールを接続させることで機能強化することができますね。 Databricks上でETLやデータ分析して、外部BIツールで可視化することで分析業務が更に捗ると思います。