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

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

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

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

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

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

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

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

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

すべてのインタラクティブなデータの結果をコントロール プレーンではなく 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"
}'