メインコンテンツまでスキップ

Power BI を Databricks に接続する

Microsoft Power BIは、セルフサービスのビジネスインテリジェンス機能を備えたインタラクティブなビジュアライゼーションを提供するビジネスアナリティクスサービスであり、ITスタッフやデータベース管理者に依存することなく、エンドユーザー自身がレポートやダッシュボードを作成することができます。

DatabricksをPower BIのデータソースとして使用すると、データサイエンティストやデータエンジニアだけでなく、すべてのビジネスユーザーに、Databricksのパフォーマンスとテクノロジーのメリットを提供することができます。

Databricks から Power BI Online に発行する

Power BI Online で Databricksをデータソースとして使用すると、DatabricksのUI から直接テーブルまたはスキーマからPower BI データセットを作成できます。

必要条件

  • データは Unity Catalogにあり、コンピュート (クラスター) が Unity Catalog 有効になっている必要があります。 Hive metastore は現在サポートされていません。

  • Premium (Premium 容量、Premium ユーザーごとの Premium ライセンス、またはファブリック容量) Power BI ライセンスが必要です。

  • DatabricksからPower BIへの公開に使用している登録済みのEntra IDアプリ、 Databricks データセット公開インテグレーション に次の権限を付与する必要があります。

    • Content.Create

    • Dataset.ReadWrite.All

    • Workspace.Read.All

      Entra IDアプリ

    詳細については、「Microsoft Entra のアクセス許可」を参照してください。

注記

Entra 管理者の同意は、通常、これらのアクセス許可 (特に Power BI のワークスペースとデータセット レベルのアクセス) に必要です。手順については、「 管理者の同意要求を確認する 」を参照してください。

  • Power BI 容量で XMLA エンドポイント の読み取り/書き込み を有効にする必要があります。手順については、この リンク をたどってください。

  • 公開後にユーザーが Power BI サービスでセマンティック モデルを編集する場合は、ワークスペース設定で ユーザーは Power BI サービスでデータ モデルを編集できる(プレビュー) を有効にする必要があります。 また、XMLA エンドポイントを使用して接続を作成することで、表形式エディターを使用してセマンティック モデルを編集することもできます。

  • Power BI ワークスペースでプライベート リンクを使用している場合は、Power BI でデータセットのデータソース資格情報を手動で更新する必要があります。

Databricks テーブルを Power BI データセットに発行する

  1. カタログ エクスプローラーを開くには、Databricks ワークスペースにサインインし、サイドバーの カタログアイコン カタログ をクリックします。

  2. 右上のドロップダウンリストからコンピュートリソースを選択します。

  3. カタログを開き、公開するスキーマまたはテーブルを選択します。 Hive metastoreやサンプルカタログから選択しないでください。

  4. スキーマ右上の [ BI ツールと併用 ] をクリックするか、テーブル右上の [ ダッシュボードで開く ] をクリックします。

  5. [Power BI ワークスペースに発行] を選択します。

  6. パートナーに接続 ダイアログで、認証するために Microsoft Entra ID に接続する をクリックします。

  7. Power BIワークスペース で、Power BIワークスペースを選択します。

  8. データセットモード で、DirectQuery または Import を選択します。

  9. Power BIの認証方法 で、 OAuth または PAT (パーソナル アクセス トークン) を選択します。

    Databricks では、きめ細かなアクセス制御とユーザー レベルの監査を可能にするため、OAuth の使用をお勧めします。 OAuth 資格情報は、 Power BI データセット設定ページの データソース資格情報 で構成する必要がある場合があります。 個人用アクセス トークン (PAT)を選択すると、Power BI がセマンティック モデルにアクセスできるように、ユーザーに代わって PAT が作成されます。

  10. データセット名 で、 新しいデータ セットとして発行 または 既存のデータ セットを使用する を選択します。

    既存のデータセットを使用する を選択すると、次の条件が当てはまります。

    • データセットが存在する場合、上書きされません。 更新では、特定のスキーマに新しいレコードのみが追加されます。
      • 選択したテーブルが既存のデータセットの一部でない場合は、追加されます。
      • テーブルが既にデータセットに含まれていて、前回の更新後に新しい列が追加された場合、それらの列は自動的に追加されます。
      • 新しいテーブルに別のストレージモデルを選択して、 複合セマンティックモデルを作成できます。

    既存のセマンティックモデルがあり、既存のデータ接続を維持しながら更新する場合は、 既存のデータセットを使用する を選択します。 新しいセマンティックモデルを使用して新しいデータセットを作成する場合は、 新しいデータセットとして発行 を選択します。

  11. Power BI に公開 をクリックします。

  12. データセットが発行されたら 10 秒から 20 秒後に、 Power BI を開く をクリックして、新しいタブで Power BI データセットを開きます。

機能と注意事項

  • 複数のテーブルを含むスキーマをパブリッシュすると、カラムを持つすべてのテーブルがパブリッシュされます。 列のないテーブルは公開されません。
  • Databricks のテーブルの列に対するコメントは、Power BI の対応する列の説明にコピーされます。
  • 外部キーの関係は、公開されたデータセットに保持されます。 ただし、Power BI では、任意の 2 つのテーブル間のアクティブなリレーションシップ パスが 1 つだけサポートされます。 Databricks のスキーマに複数のパスが存在する場合、Power BI の対応するリレーションシップの一部が非アクティブに設定されます。 後で Power BI のデータ モデル ビューで、アクティブまたは非アクティブなリレーションシップを変更できます。
  • OAuth またはオンプレミス データ ゲートウェイを使用する場合は、Power BI データセット設定ページの [データソース資格情報] で資格情報を構成する必要がある場合があります。
  • 現在、ユーザーはホーム テナント内の Power BI ワークスペースにのみ直接発行できます。 ゲスト ユーザーであるテナントでの公開はサポートされていません。

トラブルシューティング

エラー

Power BI への公開を初めて起動するときに "承認が必要"

このメッセージが表示された場合、この統合機能に権限を付与する前に、Entra管理者の承認が必要です。 Entra管理者に連絡して、リクエストを承認してください。 手順については、この リンク をたどってください。

PowerBINotLicensedException

Power BI Premium ライセンスがあることを確認します。

このデータセットをデプロイできませんでした。 容量管理者に問い合わせて、Power BI Premium 容量の容量設定で XMLA の読み取り/書き込みサポートが有効になっていることを確認してから、もう一度やり直してください。 詳細については、製品ドキュメントの「XMLA 読み取り/書き込みサポート」を参照してください。

Power BI 容量管理者に問い合わせて、容量設定の XMLA エンドポイント読み取り機能と書き込み 機能を有効にしてください。手順については、この リンク をたどってください。

XMLA エンドポイント機能は無効です。 この機能を有効にするには、PowerBI.com で Excel で分析機能をオンにします。

Power BI 容量管理者に問い合わせて、容量設定の XMLA エンドポイント読み取り機能と書き込み 機能を有効にしてください。手順については、この リンク をたどってください。

CapacityNotActive

容量が停止する場合があります。 容量管理者に連絡して、容量のステータスを確認してください。

'<ccon> _</ccon>' という名前のデータベースは、'<ccon>ワークスペース </ccon>' _ にすでに存在します

セマンティック モデルを作成する権限があることを確認します。 次に、Power BI への発行を再試行して、バージョン番号がインクリメントされたセマンティック モデルを発行します。

Direct Lakeモードを同じモデルの他のストレージモードと一緒に使用することはできません。 複合モデルは Direct Lake モードをサポートしていません。 サポートされていないテーブルを削除するか、Direct Lakeモードに切り替えてください。

Power BI に発行すると、インポート モードまたは DirectQuery モードでセマンティック モデルが作成されるため、Direct Lake モードを使用する既存のデータセットに発行するために使用することはできません。 詳細については、この リンク をたどってください。

' <euii> *</euii>' ユーザーには、Discover メソッドを呼び出す権限がありません。

Premium ライセンス モードで Power BI ワークスペースに発行していることを確認します。 Pro ライセンス モードのワークスペースにパブリッシュすることはできません。

' <euii> *</euii>' ユーザーが '***' に新しいオブジェクトを作成する権限がないか、オブジェクトが存在しません。

Power BI ワークスペースで閲覧者ロールを持っている場合があります。 セマンティック モデルを作成するアクセス許可があるかどうかを確認します。 詳細については、この リンク をたどってください。

「データソースの資格情報を更新できませんでした([Microsoft][thriftextension] (14) HTTP接続中にサーバーからの予期しない応答:未承認/禁止エラー応答が返されましたが、トークンの有効期限が切れたメッセージは受信されませんでした。」 Power BIでデータソースの認証情報を編集する場合にこちらのエラーが発生する。

Databricks ワークスペースがパブリックにアクセス可能かどうかを確認します。 ワークスペースで Private Link または IP アクセス リストを使用している場合は、Power BI オンプレミス ゲートウェイの構成が必要になることがあります。

Power BI Desktop を Databricks に接続する

Power BI DesktopをDatabricksクラスターおよびDatabricks SQLウェアハウスに接続できます。

必要条件

  • Power BI Desktop 2.85.681.0以降。Unity Catalogで管理されているデータをPower BIで使用するには、Power BI Desktop 2.98.683.0以降(2021年10月リリース)を使用する必要があります。
注記

Power BI DesktopにはWindowsが必要です。他のオペレーティングシステムを使用している場合は、物理ホストまたはWindowsベースの仮想マシン上でPower BI Desktopを実行し、ご利用のオペレーティングシステムからそれに接続することもできます。

2.85.681.0より前のバージョンのPower BI Desktopを使用している場合は、Power BI Desktopと同じ環境にDatabricks ODBCドライバーをインストールする必要もあります。

  • 以下のいずれか(認証用):

    • (推奨)アカウントで OAuth アプリケーションとして有効になっている Power BI。 これはデフォルトで有効になっています。

    • Databricks 個人用アクセス トークン

注記

Databricks のユーザー名とパスワードを使用した基本認証は、2024 年 7 月 10 日にサポートが終了しました。 Databricks で管理されるパスワードのサポート終了を参照してください。

Partner Connect を使用して Power BI Desktop を Databricks に接続する

Partner Connectを使用すると、数回クリックするだけでPower BI DesktopからクラスターまたはSQLウェアハウスに接続できます。

  1. Databricks アカウント、ワークスペース、サインインしているユーザーが Partner Connect の 要件を満たしている ことを確認します。

  2. サイドバーで、Marketplaceアイコン Marketplace をクリックします。

  3. Partner Connect 統合ですべて表示 をクリックします。

  4. Power BI タイルをクリックします。

  5. パートナーに接続 ダイアログの コンピュート で、接続する Databricks コンピュート リソースの名前を選択します。

  6. 接続ファイルをダウンロード を選択します。

  7. ダウンロードした接続ファイルを開くと、Power BI Desktopが起動します。

  8. Power BI Desktopで、認証情報を入力します。

    • パーソナルアクセストークン :Databricksのパーソナルアクセストークンを入力します。
    • Microsoft Entra ID : 適用されません。
  9. 接続 をクリックします。

  10. Power BIの ナビゲーター からクエリーするDatabricksデータを選択します。

    Power BIナビゲーター

Power BI Desktop を Databricks に手動で接続する

SQL選択した認証方法に応じて、次の手順に従って、Power BI Desktop を使用してクラスター ウェアハウスまたは ウェアハウスに接続します。Databricks SQL ウェアハウスは、Power BI を DirectQuery モードで使用する場合に推奨されます。

注記

迅速にPower BI Desktopと接続するには、Partner Connectを使用します。

  1. サーバーのホスト名と HTTP パスを取得します。

  2. Power BI Desktopを起動します。

  3. データを取得 または ファイル > データを取得 をクリックします。

  4. データを取得 をクリックして開始します。

  5. Databricks と検索し、コネクタをクリックします。

    • Azure Databricks (個人用アクセス トークンを使用して認証する場合)。
注記

コネクタ名は Azure Databricks ですが、Databricks on AWSでも動作します。

  • Databricks(ベータ) (OAuthを使用して認証する場合)。
  1. 接続 をクリックします。

  2. サーバーのホスト名HTTPパス を入力します。

  3. データ接続モード を選択します。 ImportDirectQuery の違いについては、Power BI DesktopでDirectQueryを使用するを参照してください。

  4. OK をクリックします。

  5. 認証方法をクリックします。

    • パーソナルアクセストークン :パーソナルアクセストークンを入力します。
    • OAuth : サインイン をクリックします。 ブラウザウィンドウが開き、IdP でサインインするように求められます。 成功メッセージが表示されたら、ブラウザーを終了し、Power BI Desktop に戻ります。
  6. 接続 をクリックします。

  7. Power BIの ナビゲーター からクエリーするDatabricksデータを選択します。ワークスペースでUnity Catalogが有効になっている場合は、スキーマとテーブルを選択する前にカタログを選択します。

    Power BIナビゲーター

カスタム SQL クエリの使用

DatabricksコネクタはDatabricks.Queryデータソースを提供しています。これを使用すると、ユーザーがカスタムSQLクエリーを指定できます。

  1. Power BI Desktop との接続で説明されている手順に従って、データ接続モードとして インポート を使用して接続を作成します。

  2. ナビゲーター で、選択したホスト名とHTTPパスを含む一番上のアイテムを右クリックし、 データを変換 をクリックしてPower Queryエディタを開きます。

    ナビゲーターで「データを変換」をクリック

  3. 関数バーで、関数名Databricks.CatalogsDatabricks.Queryに置き換えて、変更を適用します。これにより、SQLクエリーをパラメーターとして受け取るPower Query関数が作成されます。

  4. パラメーターフィールドに SQL クエリを入力し、 呼び出し をクリックします。 これによりクエリが実行され、クエリ結果を内容として新しいテーブルが作成されます。

HTTP プロキシの自動検出

Power BI Desktopバージョン2.104.941.0以降(2022年5月リリース)には、Windowsシステム全体のHTTPプロキシ構成を検出するためのサポートが組み込まれています。

Power BI Desktopは、Windowsシステム全体のHTTPプロキシ構成を自動的に検出して使用できます。

プロキシサーバーが CRL 配布ポイント(CDP)を提供しない場合、Power BIから次のエラーメッセージが表示されることがあります。

Details: "ODBC: ERROR [HY000] [Microsoft][DriverSupport] (1200)
-The revocation status of the certificate or one of the certificates in the certificate chain is unknown."

このエラーに対応するには、以下のステップを実行します。

  1. ファイルが存在しない場合は、C:\Program Files\Microsoft Power BI Desktop\bin\ODBC Drivers\Simba Spark ODBC Driver\microsoft.sparkodbc.iniを作成します。

  2. microsoft.sparkodbc.iniファイルに以下の構成を追加します。

    ini
    [Driver]
    CheckCertRevocation=0

Power BI Delta Sharing コネクタ

Power BI Delta Sharing コネクタを使用すると、ユーザーは Delta Sharing オープン プロトコルを通じて共有されているデータセットを検出、分析、視覚化できます。 このプロトコルは、RESTとクラウドストレージを活用することで、製品やプラットフォーム間でのデータセットの安全な交換を可能にします。

接続手順については、「 Power BI: 共有データの読み取り」を参照してください。

制限

  • DatabricksコネクタはWebプロキシをサポートしています。ただし、.pacファイルで定義された自動プロキシ設定はサポートされません。
  • Databricksコネクタでは、Databricks.QueryデータソースとDirectQueryモードの組み合わせはサポートされていません。
  • Delta Sharingコネクタが読み込むデータは、マシンのメモリに収まるものである必要があります。これを確実にするために、コネクタはインポートされる行の数を、以前に設定された 行制限 に制限します。

オーケストレーションのために Unity Catalog で Power BI 接続を作成する

Power BI タスク (プレビュー) を使用して、Power BI への発行を調整できます。Power BI タスクを作成するには、Entra の資格情報を保存するために、Unity Catalog で Power BI に接続する必要があります。

注記

Power BI 接続を作成するには、Unity Catalog で CREATE CONNECTION 権限が必要です。他のユーザーが接続を作成した場合、Power BI タスクで接続を使用するには、 USE CONNECTION 特権が必要です。

ステップ 1: 認証情報を準備する

Power BI への認証のために資格情報を準備する必要があります。 OAuth マシン間 認証方式または OAuth (ユーザー間) 認証方式を選択できます。

OAuth (Machine to Machine) 資格情報を準備するには:

  1. Azure サービスプリンシパルを作成するか、既存のサービスプリンシパルを使用します。Azure ポータルから新しい Azure サービスプリンシパルを作成するには、Microsoft Entra アプリを登録してサービスプリンシパルを作成するを参照してください。
  2. 発行先の Power BI ワークスペースにサービスプリンシパルを追加します。
  3. Power BI管理ポータルでサービスプリンシパルを有効にします。サービスプリンシパルを有効にするを参照してください。
  4. クライアントシークレットを生成し、次のステップで使用するためにプリンシパルのクライアント ID とクライアントシークレットの両方を保存します。
  5. 次の手順で使用するために、認証エンドポイントを保存します。認証エンドポイントの形式は https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/authorizeです。

OAuth (ユーザーからマシン) の資格情報を準備するには:

  1. 次の手順で使用するための認証エンドポイントを取得します。認証エンドポイントの形式は https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/authorizeです。Power BI ワークスペースがホーム ワークスペースにある場合は、 common{tenant_id}として使用します。
  2. 次のステップで接続を作成する際には、 Microsoft アカウントにログインし、 Databricks データセット Publishing Integration Entra Appに同意するように求められます。 この Entra アプリは Databricks によって提供され、ユーザーに代わって Power BI ワークスペースにアクセスしてワークスペース情報を読み取り、セマンティック モデルを作成および更新するために使用されます。付与される特定の権限は、 Content.CreateDataset.ReadWrite.All、および Workspace.Read.Allです。

ステップ 2: 接続を作成する

  1. カタログ エクスプローラーを開くには、Databricks ワークスペースにサインインし、サイドバーの カタログアイコン カタログ をクリックします。
  2. 外部データ接続接続の作成 の順にクリックします。
  3. 接続のセットアップ ウィザードの 接続の基本 ページで、ユーザー・フレンドリーな 接続名 を入力します。
  4. Power BI接続の種類 を選択します。
  5. 認証タイプ で、前に準備した認証情報に基づいて、 OAuth マシンからマシン または OAuth (ユーザーからマシン)を選択します。
  6. 次へ をクリックします。
  7. 接続のセットアップ ウィザードの 手順 2 では、準備した資格情報の入力を求められます。
  8. 接続の作成 をクリックします。

この接続は、Power BI タスクを構成するときに使用できるようになりました。他のユーザーがこの接続にアクセスできるようにする場合は、そのユーザーに USE CONNECTION 権限を付与します。

追加のリソース

サポート