Configurar o local de armazenamento de resultados do notebook

Os requisitos de privacidade da sua organização podem exigir que você armazene todos os resultados de notebooks interativos no bucket de armazenamento raiz do S3 de sua conta na nuvem, em vez do local padrão do plano de controle gerenciado pelo Databricks, onde alguns resultados de comandos do notebook são armazenados.

A saída de comando do notebook é armazenada de forma diferente dependendo de como você executa o notebook.

Por padrão, quando você executa um notebook interativamente clicando em Executar no notebook:

  • Se os resultados forem pequenos, eles serão armazenados no plano de controle do Databricks, juntamente com o conteúdo do comando do notebook e os metadados.

  • Os resultados maiores são armazenados no bucket de armazenamento S3 raiz do workspace em sua conta do AWS. O Databricks usa esse bucket para os dados do sistema do workspace e a raiz DBFS do seu workspace. Os resultados do notebook são armazenados na parte de dados do sistema de workspace do bucket, que não pode ser acessada pelos usuários.

  • Imagens em lote e outros objetos binários são sempre armazenados separadamente na área Armazenamento de arquivos do DBFS root.

Quando você executa um notebook como um trabalho, agendando-o ou clicando em Executar Agora na página Trabalhos, todos os resultados são armazenados no bucket de armazenamento raiz do S3 do workspace em sua conta.

Você pode configurar seu workspace para armazenar todos os Notebook resultados interativos em sua clouds account, independentemente do tamanho do resultado.

Configurar o local de armazenamento para resultados interativos do notebook

Você pode configurar seu workspace para armazenar todos os resultados interativos Notebook em sua account da AWS, em vez de no plano de controle. Você pode ativar esse recurso usando a página de configurações do administrador ou a API REST. Esta configuração não tem efeito na execução Notebook como Job, cujos resultados já estão armazenados na sua account AWS por default.

Considere os seguintes pontos:

  • As alterações nesta configuração são efetivas apenas para novos resultados. Os resultados existentes do notebook não são movidos.

  • Alguns metadados sobre os resultados, como nomes de colunas do gráfico, continuam sendo armazenados no plano de controle.

  • Seu provedor de nuvem pode incorrer em custos de armazenamento mais altos.

  • É possível que ocorra maior latência na rede e E/S ao realizar leituras e gravações de resultados.

Armazene todos os resultados do notebook em sua conta usando a página de configurações do administrador

Como administrador do workspace:

  1. Ir para a página de configurações do administrador.

  2. Clique na Segurança tab.

  3. Clique no botão Armazenar resultados interativos Notebook na accountdo cliente .

Armazene todos os resultados do notebook em sua conta usando a API REST

Para configurar seu workspace para armazenar todos os resultados do notebook em sua conta da AWS usando a API REST:

  • Você deve ser um administrador de workspace.

  • Você precisa de um access tokenpessoal. As instruções a seguir pressupõem que você configurou um arquivo .netrc com seu access token pessoal para poder usar a opção -n no comando curl. Consulte os artigos mencionados acima para obter detalhes.

Para obter a configuração atual, ligue para o ponto de extremidade GET /workspace-conf e defina keys como storeInteractiveNotebookResultsInCustomerAccount:

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

Para permitir que seu workspace armazene os resultados do notebook interativo em sua conta do AWS, chame o ponto de extremidade PATCH /workspace-conf e defina storeInteractiveNotebookResultsInCustomerAccount como true no corpo da solicitação:

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

Para desativar o recurso, defina o mesmo sinalizador para false:

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