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 接続を追加するには、次の操作を行います。
-
Power Apps または Power Automate で、サイドバーから 接続 をクリックします。
サイドバーに 「接続」 が表示されない場合は、「 その他 」>「 接続」 をクリックします。
-
左上隅にある [+ 新しい接続 ] をクリックします。
-
右上の検索バーを使用して "Databricks" を検索します。
-
「Databricks」 タイルをクリックします。
[Azure Databricks] タイルをクリックしないでください。
-
認証情報を入力します。
- [ API キー ] に PAT を "Bearer <personal-access-token>" の形式で入力します。PAT を生成するには、「 Databricks personal アクセストークン認証」を参照してください。
- [ Server host名 ] に、 Databricks SQL ウェアハウス server host名を入力します。
- [HTTP パス] に、ウェアハウスSQLHTTP パスを入力します。
Databricks SQLウェアハウスと HTTP パス接続の詳細を確認するには、「Databricksコンピュート リソースの接続の詳細を取得する」を参照してください。
-
作成 をクリックします。
ステップ 2: Databricks 接続を使用する
Power Apps または Power Automate で Databricks 接続を作成した後、Databricks データを使用して、Power キャンバス アプリ、Power Automate フロー、Copilot Studio エージェントを作成できます。
Databricks データを使用して Power キャンバス アプリを構築する
Databricks データをアプリケーションに追加するには、次の操作を行います。
- 左端のナビゲーションバーで、[ 作成] をクリックします。
- [ 空白のキャンバスで開始 ] をクリックし、目的のキャンバス サイズを選択して新しいキャンバス アプリを作成します。
- アプリケーションから、 [データの追加] > [コネクタ] > Databricks をクリックします。作成した Databricks 接続をクリックします。
- データセット の選択 サイドバーからカタログを選択します。
- [ データセットの選択 ] サイドバーから、キャンバス アプリを接続するすべてのテーブルを選択します。
- 接続 をクリックします。
Power Apps でのデータ操作:
コネクタは、作成、更新、および削除の操作をサポートしますが、主キーが定義されているテーブルに対してのみサポートされます。作成操作を実行するときは、常に主キーを指定する必要があります。
Databricks では、生成された ID 列がサポートされています。この場合、主キー値は行の作成時にサーバー上で自動的に生成され、手動で指定することはできません。
Databricks データを使用して Power Automate フローを構築する
Databricks ステートメント実行 API と ジョブ API は Power Automate 内で公開されているため、SQL ステートメントを記述し、既存のジョブを実行できます。Databricks をアクションとして使用して Power Automate フローを作成するには、次の操作を行います。
-
左端のナビゲーションバーで、[ 作成] をクリックします。
-
フローを作成し、任意のトリガー種別を追加します。
-
新しいフローで [+ ] をクリックし、"Databricks" を検索して、使用可能なアクションを確認します。
-
SQL クエリを記述するには、次のいずれかのアクションを選択します。
-
SQL文の実行 : SQL文を記述して実行します。次のように入力します。
- [ 本文/warehouse_id ] に、SQL ステートメントを実行するウェアハウスの ID を入力します。
- [ Body/statement_id ] に、実行する SQL ステートメントの ID を入力します。
高度なパラメーターの詳細については、 こちらを参照してください。
-
ステータスを確認して結果を取得する : SQL ステートメントのステータスを確認し、結果を収集します。次のように入力します。
- [ ステートメント ID ] に、SQL ステートメントの実行時に返された ID を入力します。
パラメーターの詳細については、 こちらを参照してください。
-
ステートメントの実行をキャンセルします。 SQL文の実行を終了します。次のように入力します。
- [ ステートメント ID ] に、終了する SQL ステートメントの ID を入力します。
パラメーターの詳細については、 こちらを参照してください。
-
チャンクインデックスで結果を取得します。 チャンクインデックスで結果を取得し、大規模な結果セットに適しています。次のように入力します。
- [ ステートメント ID ] に、結果を取得する SQL ステートメントの ID を入力します。
- [ チャンクインデックス ] に、ターゲットのチャンクインデックスを入力します。
パラメーターの詳細については、 こちらを参照してください。
-
-
既存の Databricks ジョブを操作するには、次のいずれかのアクションを選択します。
- ジョブを一覧表示します。 ジョブのリストを取得します。詳細については 情報、 こちらをご覧ください。
- Trigger a new ジョブ 実行: 実行ジョブとトリガーされた実行の
run_id
を返します。 詳細については 情報、 こちらをご覧ください。 - 1 つのジョブの実行を取得します。 実行ステータス (
RUNNING
、SUCCESS
、FAILED
など)、開始時刻と終了時刻、実行期間、クラスター情報など、実行に関するメタデータを返します。詳細については 情報、 こちらをご覧ください。 - 実行をキャンセルする: ジョブの実行またはタスクの実行を取り消します。詳細については 情報、 こちらをご覧ください。
- 1 回の実行の出力を取得します。 1 つのジョブまたはタスク実行の出力とメタデータを取得します。詳細については 情報、 こちらをご覧ください。
Copilot Studio で Databricks をナレッジ ソースとして使用する
Databricks データをナレッジ ソースとして Copilot Studio エージェントに追加するには、次の操作を行います。
-
サイドバーから [エージェント] をクリックします。
-
既存のエージェントを選択するか、[ + 新しいエージェント ] をクリックして新しいエージェントを作成します。
- メッセージを入力してエージェントを記述し、[ 作成] をクリックします。
- または、[ スキップ] をクリックして、エージェントの情報を手動で指定します。
-
[ ナレッジ] タブで、[ + ナレッジ] をクリックします。
-
[ 詳細設定] をクリックします。
-
サポート情報ソースとして [Databricks] をクリックします。
-
データが含まれるカタログ名を入力します。
-
接続 をクリックします。
-
エージェントがナレッジソースとして使用するテーブルを選択し、[ 追加] をクリックします。
バッチ更新の実施
Power Apps の入力に応答して一括作成、更新、または削除操作を実行する必要がある場合は、Power Automate フローを実装することをお勧めします Databricks 。 これを行うには、次の手順を実行します。
-
Power Apps の Databricks 接続を使用してキャンバス アプリを作成します。
-
Databricks 接続を使用して Power Automate フローを作成し、トリガーとして Power Apps を使用します。
-
Power Automate トリガーで、Power Apps から Power Automate に渡す入力フィールドを追加します。
-
Power Apps 内にコレクション オブジェクトを作成して、すべての変更を収集します。
-
Power Automate フローをキャンバス アプリに追加します。
-
キャンバス アプリから Power Automate フローを呼び出し、
ForAll
コマンドを使用してコレクションを反復処理します。SQLForAll(collectionName, FlowName.Run(input field 1, input field 2, input field 3, …)
並列 書き込み
行レベルの同時実行性は、行レベルでの変更を検出し、同じデータファイル内の異なる行の書き込み、更新、または削除時に発生する競合を自動的に解決することで、並列書き込み操作間の競合を減らします。
行レベルの同時実行は、Databricks Runtime 14.2 以降に含まれています。行レベルの同時実行は、次のタイプのテーブルに対してデフォルトによってサポートされています。
- 削除ベクトルが有効で、パーティション化されていないテーブル
- リキッドクラスタリングのあるテーブル (削除ベクトルが無効になっている場合を除く)
削除ベクトルを有効にするには、次の SQL コマンドを実行します。
ALTER TABLE table_name SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);
詳細情報 並列 Databricksでの書き込み競合については、 分離レベルと書き込み競合 on Databricksを参照してください。
Databricks をデータ ポリシーに追加する
Databricks をビジネス データ ポリシーに追加すると、Databricks は他のグループのコネクタとデータを共有できなくなります。これにより、データが保護され、アクセスすべきではない人と共有されるのを防ぎます。詳細については、 データの管理ポリシー を参照してください。
Databricks コネクタを Power Platform データ ポリシーに追加するには:
-
任意の Power Platform アプリケーションから、右上の設定歯車をクリックし、 管理センター をクリックします。
-
サイドバーで、[ ポリシー] > [データポリシー ] をクリックします。
- 新しい管理センターを使用している場合は、[ セキュリティ ] > [ データとプライバシー ] > データ ポリシー をクリックします。
-
[ + 新しいポリシー ] または既存のポリシーをクリックします。
-
新しいポリシーを作成する場合は、名前を入力します。
-
ポリシーに追加する環境を選択し、上の [+ ポリシーに追加] をクリックします。
-
次へ をクリックします。
-
Databricks コネクタを検索してクリックします。
-
[ビジネスに移行] をクリックし、[ 次へ ] をクリックします。
-
ポリシーを確認し、[ ポリシーの作成 ] をクリックします。
制限
- Power Platform コネクタは、政府機関のクラウドをサポートしていません。
Power App の制限事項
次の PowerFx 数式は、ローカルで取得されたデータのみを使用して値を計算します。
カテゴリー | 式 |
---|---|
テーブル関数 |
|
集計 |
|