ノートブックの結果の保存場所を設定する
組織のプライバシー要件では、ノートブックコマンドの結果の一部が保存されているDatabricks管理コントロールプレーンのデフォルトのロケーションではなく、クラウドアカウントのルートS3ストレージバケットにすべての対話型ノートブックの結果を保存するよう求められる可能性があります。
ノートブックのコマンド出力の保存方法は、ノートブックの実行方法によって異なります。
デフォルトでは、ノートブックで [実行] をクリックしてノートブックを対話的に実行すると、以下のようになります。
結果が小さい場合は、ノートブックのコマンド内容やメタデータとともにDatabricksのコントロールプレーンに保存されます。
大きな結果は、AWSアカウントのワークスペースのルートS3ストレージバケットに保存されます。Databricksは、ワークスペースのシステムデータとワークスペースのDBFS ルートにこのバケットを使用します。ノートブックの結果は、ユーザーがアクセスすることのできない、バケットにおけるワークスペースのシステムデータ部分に保存されます。
プロット イメージとその他のバイナリ オブジェクトは、常に DBFS ルート の FileStore 領域に個別に保存されます。
ジョブとしてノートブックを実行する場合、スケジューリングするか、ジョブページで 今すぐ実行 クリックすると、すべての結果がワークスペースのルートS3ストレージバケットに保存されます。
結果のサイズに関係なく、 すべてのインタラクティブ ノートブックの結果をクラウド アカウントに保存するようにワークスペースを構成できます。
対話型ノートブックの結果の保存場所を設定する
すべてのインタラクティブノートブックの結果をコントロールプレーンではなく AWS アカウントに保存するようにワークスペースを設定できます。 この機能は、管理設定ページまたはREST APIを使用して有効にできます。 この設定は、ジョブとして実行されるノートブックには影響しません。その結果は、デフォルトで AWS アカウントに既に保存されています。
次の点に注意してください。
この設定の変更は、新しい結果に対してのみ有効です。既存のノートブックの結果は移動しません。
グラフの列名など、結果に関する一部のメタデータは引き続きコントロールプレーンに保存されることに注意してください。
クラウドプロバイダーのストレージコストが増える可能性があります。
結果の読み取りおよび書き込み時に、ネットワークおよびIOのレイテンシーが増加する可能性があります。
管理設定ページを使用して、すべてのノートブック結果をアカウントに保存する
ワークスペース管理者としてログインし、以下を実行します。
設定ページに移動します。
[セキュリティ]タブをクリックします。
[インタラクティブ ノートブックの結果を顧客アカウントに保存]トグルをクリックします。
REST APIを使用してすべてのノートブックの結果をアカウントに保存する
REST APIを使用してすべてのノートブックの結果がAWSアカウントに保存されるようにワークスペースを設定するには、以下の手順に従ってください。
この作業にはワークスペース管理者の権限が必要となります。
個人アクセストークンが必要です。 以下の手順では、
curl
コマンドで-n
オプションを使用できるように、個人のアクセストークンを使用して.netrc
ファイルを構成していることを前提としています。 詳細については、上記の記事を参照してください。
現在の設定を取得するには、GET /workspace-conf
エンドポイントを呼び出して、keys
を storeInteractiveNotebookResultsInCustomerAccount
に設定します。
curl -n --request GET \
'https://<databricks-instance>/api/2.0/workspace-conf?keys=storeInteractiveNotebookResultsInCustomerAccount'
ワークスペースで対話型ノートブックの結果をAWSアカウントに保存できるようにするには、PATCH /workspace-conf
エンドポイントを呼び出し、リクエスト本文で storeInteractiveNotebookResultsInCustomerAccount
を true
に設定します。
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"
}'