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

Microsoft Power Platform から Databricks に接続する

備考

プレビュー

この機能は パブリック プレビュー段階です。

このページでは、Databricks をデータ接続として追加して、Microsoft Power Platform から Databricks に接続する方法について説明します。接続すると、次のプラットフォームから Databricks データを使用できます。

  • Power Apps : Databricks ガバナンス制御を維持しながら、Databricks との間で読み取りと書き込みを行うことができるアプリケーションを構築します。
  • Power Automate : フローを構築し、カスタム SQL または既存のジョブの実行を可能にするアクションを追加し、結果を取得します。
  • Copilot Studio : Databricks データをナレッジ ソースとして使用してカスタム エージェントを構築します。

始める前に

Power Platform から Databricks に接続する前に、次の要件を満たす必要があります。

  • あなたはあなたの Databricks ワークスペースのための個人アクセストークン(PAT)を持っています。 PAT を生成するには、「 Databricks personal アクセストークン認証」を参照してください。

  • プレミアム Power Apps ライセンスがあります。

  • Databricks アカウントがあります。

  • DatabricksのSQLウェアハウスにアクセスできます。

ステップ 1: Power Platform への Databricks 接続を追加する

注記

Copilot Studio を使用している場合は、Power Apps または Power Automate を使用して Databricks コネクタを定義する必要があります。その後、Copilot Studio で使用できます。

Databricks 接続を追加するには、次の操作を行います。

  1. Power Apps または Power Automate で、サイドバーから 接続 をクリックします。

    サイドバーに 「接続」 が表示されない場合は、「 その他 」>「 接続」 をクリックします。

  2. 左上隅にある [+ 新しい接続 ] をクリックします。

  3. 右上の検索バーを使用して "Databricks" を検索します。

  4. 「Databricks」 タイルをクリックします。

    [Azure Databricks] タイルをクリックしないでください。

  5. 認証情報を入力します。

    • [ API キー ] に PAT を "Bearer <personal-access-token>" の形式で入力します。PAT を生成するには、「 Databricks personal アクセストークン認証」を参照してください。
    • [ Server host名 ] に、 Databricks SQL ウェアハウス server host名を入力します。
    • [HTTP パス] に、ウェアハウスSQLHTTP パスを入力します。

    Databricks SQLウェアハウスと HTTP パス接続の詳細を確認するには、「Databricksコンピュート リソースの接続の詳細を取得する」を参照してください。

  6. 作成 をクリックします。

ステップ 2: Databricks 接続を使用する

Power Apps または Power Automate で Databricks 接続を作成した後、Databricks データを使用して、Power キャンバス アプリ、Power Automate フロー、Copilot Studio エージェントを作成できます。

Databricks データを使用して Power キャンバス アプリを構築する

Databricks データをアプリケーションに追加するには、次の操作を行います。

  1. 左端のナビゲーションバーで、[ 作成] をクリックします。
  2. [ 空白のキャンバスで開始 ] をクリックし、目的のキャンバス サイズを選択して新しいキャンバス アプリを作成します。
  3. アプリケーションから、 [データの追加] > [コネクタ] > Databricks をクリックします。作成した Databricks 接続をクリックします。
  4. データセット の選択 サイドバーからカタログを選択します。
  5. [ データセットの選択 ] サイドバーから、キャンバス アプリを接続するすべてのテーブルを選択します。
  6. 接続 をクリックします。

Power Apps でのデータ操作:

コネクタは、作成、更新、および削除の操作をサポートしますが、主キーが定義されているテーブルに対してのみサポートされます。作成操作を実行するときは、常に主キーを指定する必要があります。

Databricks では、生成された ID 列がサポートされています。この場合、主キー値は行の作成時にサーバー上で自動的に生成され、手動で指定することはできません。

Databricks データを使用して Power Automate フローを構築する

Databricks ステートメント実行 APIジョブ API は Power Automate 内で公開されているため、SQL ステートメントを記述し、既存のジョブを実行できます。Databricks をアクションとして使用して Power Automate フローを作成するには、次の操作を行います。

  1. 左端のナビゲーションバーで、[ 作成] をクリックします。

  2. フローを作成し、任意のトリガー種別を追加します。

  3. 新しいフローで [+ ] をクリックし、"Databricks" を検索して、使用可能なアクションを確認します。

  4. SQL クエリを記述するには、次のいずれかのアクションを選択します。

    • SQL文の実行 : SQL文を記述して実行します。次のように入力します。

      • [ 本文/warehouse_id ] に、SQL ステートメントを実行するウェアハウスの ID を入力します。
      • [ Body/statement_id ] に、実行する SQL ステートメントの ID を入力します。

      高度なパラメーターの詳細については、 こちらを参照してください。

    • ステータスを確認して結果を取得する : SQL ステートメントのステータスを確認し、結果を収集します。次のように入力します。

      • [ ステートメント ID ] に、SQL ステートメントの実行時に返された ID を入力します。

      パラメーターの詳細については、 こちらを参照してください。

    • ステートメントの実行をキャンセルします。 SQL文の実行を終了します。次のように入力します。

      • [ ステートメント ID ] に、終了する SQL ステートメントの ID を入力します。

      パラメーターの詳細については、 こちらを参照してください。

    • チャンクインデックスで結果を取得します。 チャンクインデックスで結果を取得し、大規模な結果セットに適しています。次のように入力します。

      • [ ステートメント ID ] に、結果を取得する SQL ステートメントの ID を入力します。
      • [ チャンクインデックス ] に、ターゲットのチャンクインデックスを入力します。

      パラメーターの詳細については、 こちらを参照してください。

  5. 既存の Databricks ジョブを操作するには、次のいずれかのアクションを選択します。

    • ジョブを一覧表示します。 ジョブのリストを取得します。詳細については 情報、 こちらをご覧ください。
    • Trigger a new ジョブ 実行: 実行ジョブとトリガーされた実行の run_id を返します。 詳細については 情報、 こちらをご覧ください。
    • 1 つのジョブの実行を取得します。 実行ステータス ( RUNNINGSUCCESSFAILEDなど)、開始時刻と終了時刻、実行期間、クラスター情報など、実行に関するメタデータを返します。詳細については 情報、 こちらをご覧ください。
    • 実行をキャンセルする: ジョブの実行またはタスクの実行を取り消します。詳細については 情報、 こちらをご覧ください。
    • 1 回の実行の出力を取得します。 1 つのジョブまたはタスク実行の出力とメタデータを取得します。詳細については 情報、 こちらをご覧ください。

Copilot Studio で Databricks をナレッジ ソースとして使用する

Databricks データをナレッジ ソースとして Copilot Studio エージェントに追加するには、次の操作を行います。

  1. サイドバーから [エージェント] をクリックします。

  2. 既存のエージェントを選択するか、[ + 新しいエージェント ] をクリックして新しいエージェントを作成します。

    • メッセージを入力してエージェントを記述し、[ 作成] をクリックします。
    • または、[ スキップ] をクリックして、エージェントの情報を手動で指定します。
  3. [ ナレッジ] タブで、[ + ナレッジ] をクリックします。

  4. [ 詳細設定] をクリックします。

  5. サポート情報ソースとして [Databricks] をクリックします。

  6. データが含まれるカタログ名を入力します。

  7. 接続 をクリックします。

  8. エージェントがナレッジソースとして使用するテーブルを選択し、[ 追加] をクリックします。

バッチ更新の実施

Power Apps の入力に応答して一括作成、更新、または削除操作を実行する必要がある場合は、Power Automate フローを実装することをお勧めします Databricks 。 これを行うには、次の手順を実行します。

  1. Power Apps の Databricks 接続を使用してキャンバス アプリを作成します。

  2. Databricks 接続を使用して Power Automate フローを作成し、トリガーとして Power Apps を使用します。

  3. Power Automate トリガーで、Power Apps から Power Automate に渡す入力フィールドを追加します。

  4. Power Apps 内にコレクション オブジェクトを作成して、すべての変更を収集します。

  5. Power Automate フローをキャンバス アプリに追加します。

  6. キャンバス アプリから Power Automate フローを呼び出し、 ForAll コマンドを使用してコレクションを反復処理します。

    SQL
    ForAll(collectionName, FlowName.Run(input field 1, input field 2, input field 3,)

並列 書き込み

行レベルの同時実行性は、行レベルでの変更を検出し、同じデータファイル内の異なる行の書き込み、更新、または削除時に発生する競合を自動的に解決することで、並列書き込み操作間の競合を減らします。

行レベルの同時実行は、Databricks Runtime 14.2 以降に含まれています。行レベルの同時実行は、次のタイプのテーブルに対してデフォルトによってサポートされています。

  • 削除ベクトルが有効で、パーティション化されていないテーブル
  • リキッドクラスタリングのあるテーブル (削除ベクトルが無効になっている場合を除く)

削除ベクトルを有効にするには、次の SQL コマンドを実行します。

SQL
ALTER TABLE table_name SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);

詳細情報 並列 Databricksでの書き込み競合については、 分離レベルと書き込み競合 on Databricksを参照してください。

Databricks をデータ ポリシーに追加する

Databricks をビジネス データ ポリシーに追加すると、Databricks は他のグループのコネクタとデータを共有できなくなります。これにより、データが保護され、アクセスすべきではない人と共有されるのを防ぎます。詳細については、 データの管理ポリシー を参照してください。

Databricks コネクタを Power Platform データ ポリシーに追加するには:

  1. 任意の Power Platform アプリケーションから、右上の設定歯車をクリックし、 管理センター をクリックします。

  2. サイドバーで、[ ポリシー] > [データポリシー ] をクリックします。

    • 新しい管理センターを使用している場合は、[ セキュリティ ] > [ データとプライバシー ] > データ ポリシー をクリックします。
  3. [ + 新しいポリシー ] または既存のポリシーをクリックします。

  4. 新しいポリシーを作成する場合は、名前を入力します。

  5. ポリシーに追加する環境を選択し、上の [+ ポリシーに追加] をクリックします。

  6. 次へ をクリックします。

  7. Databricks コネクタを検索してクリックします。

  8. [ビジネスに移行] をクリックし、[ 次へ ] をクリックします。

  9. ポリシーを確認し、[ ポリシーの作成 ] をクリックします。

制限

  • Power Platform コネクタは、政府機関のクラウドをサポートしていません。

Power App の制限事項

次の PowerFx 数式は、ローカルで取得されたデータのみを使用して値を計算します。

カテゴリー

テーブル関数

  • グループ
  • Distinct

集計

  • 行数
  • 標準DevP
  • 標準S