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

組織のプライバシー要件によっては、一部の プログラミング コマンドの結果が保存されるDatabricks管理のコントロール プレーンの場所ではなく、クラウド アカウントの ワークスペース ストレージ バケットにすべてのインタラクティブ プログラミングの結果を保存することが求められる場合があります。

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

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

  • 結果が小さい場合は、ノートブックのコマンド内容やメタデータとともにDatabricksのコントロールプレーンに保存されます。

  • より大きな結果は、AWS アカウントのワークスペースストレージバケットに保存されます。 Databricks 、ワークスペース システム データとワークスペースのDBFSルートにこのバケットを使用します。 ノートブックの結果は、バケットのワークスペース システム データ部分に保存されますが、ユーザーはアクセスできません。 ワークスペース ストレージ バケットを参照してください。

ノートブックをジョブとして実行すると、ノートブックをスケジュールするか、[ジョブ] ページで [ 今すぐ実行 ] をクリックすると、すべての結果がアカウントのワークスペース ストレージ バケットに保存されます。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

REST APIを使用してすべてのノートブックの結果がAWSアカウントに保存されるようにワークスペースを設定するには、以下の手順に従ってください。

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

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

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

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

ワークスペースで対話型ノートブックの結果をAWSアカウントに保存できるようにするには、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"
}'