ノートブックの結果の保存場所を設定する

組織のプライバシー要件によっては、一部のノートブック コマンドの結果が保存される Databricks 管理のコントロール プレーンのデフォルトの場所ではなく、クラウド アカウントのシステム データ用の GCS バケットにすべての対話型ノートブックの結果を保存することが必要になる場合があります。

ノートブックのコマンド出力の保存方法は、ノートブックの実行方法によって異なります。

デフォルトでは、ノートブックで [実行] をクリックしてノートブックを対話的に実行すると、以下のようになります。

ジョブをスケジュール設定するか、[ジョブ] ページで[今すぐ実行] をクリックしてジョブとして実行すると、すべての結果はアカウント内のシステム データ用のワークスペースのGCSバケットに保存されます。

結果のサイズに関係なく、 すべてのインタラクティブ ノートブックの結果をクラウド アカウントに保存するようにワークスペースを構成できます。

対話型ノートブックの結果の保存場所を設定する

すべてのインタラクティブなデータの結果をコントロール プレーンではなく Google Cloud アカウントに保存するようにワークスペースを設定できます。 この機能は、管理設定ページまたはREST APIを使用して有効にできます。 この設定は、ジョブとしての「 ノートブックの実行 」には影響しません。その結果は、デフォルトで Google Cloud アカウント に既に保存されています。

次の点に注意してください。

  • この設定の変更は、新しい結果に対してのみ有効です。既存のノートブックの結果は移動しません。

  • グラフの列名など、結果に関する一部のメタデータは引き続きコントロールプレーンに保存されることに注意してください。

  • クラウドプロバイダーのストレージコストが増える可能性があります。

  • 結果の読み取りおよび書き込み時に、ネットワークおよびIOのレイテンシーが増加する可能性があります。

管理設定ページを使用して、すべてのノートブック結果をアカウントに保存する

ワークスペース管理者としてログインし、以下を実行します。

  1. 設定ページに移動します。

  2. [セキュリティ]タブをクリックします。

  3. [インタラクティブ ノートブックの結果を顧客アカウントに保存]トグルをクリックします。

REST APIを使用してすべてのノートブックの結果をアカウントに保存する

REST APIを使用して、Google Cloud アカウントにすべてのデータベースの結果を保存するようにワークスペースを構成するには:

  • この作業にはワークスペース管理者の権限が必要となります。

  • 個人用アクセストークンが必要です。 以下の手順では、 curlコマンドで-nオプションを使用できるように、個人用アクセストークンを使用して.netrcファイルを構成していることを前提としています。 詳細については、上記の記事を参照してください。

現在の設定を取得するには、GET /workspace-conf エンドポイントを呼び出して、keysstoreInteractiveNotebookResultsInCustomerAccount に設定します。

curl -n --request GET \
  'https://<databricks-instance>/api/2.0/workspace-conf?keys=storeInteractiveNotebookResultsInCustomerAccount'

ワークスペースがインタラクティブなデータの結果を Google Cloud アカウントに保存できるようにするには、 PATCH /workspace-confエンドポイントを呼び出して、リクエスト本文でstoreInteractiveNotebookResultsInCustomerAccounttrueに設定します。

curl -n --request PATCH \
 'https://<databricks-instance>/api/2.0/workspace-conf' \
 --header 'Content-Type: text/plain' \
 --data-raw '{
    "storeInteractiveNotebookResultsInCustomerAccount": "true"
}'

この機能を無効にするには、同じフラグを false に設定します。

curl -n --request PATCH \
  'https://<databricks-instance>/api/2.0/workspace-conf' \
 --header 'Content-Type: text/plain' \
 --data-raw '{
    "storeInteractiveNotebookResultsInCustomerAccount": "false"
}'