Compartilhar via


Utilitários do Databricks com o Databricks Connect para Python

Nota

Este artigo aborda o Databricks Connect para Databricks Runtime 13.3 LTS e superior.

Este artigo descreve como usar Databricks Utilities com o Databricks Connect para Python. O Databricks Connect permite que você conecte IDEs populares, servidores de notebook e aplicativos personalizados para Azure Databricks clusters. Consulte Databricks Connect.

Antes de começar a usar o Databricks Connect, você deve configurar o cliente do Databricks Connect.

Para obter a versão do Scala deste artigo, confira Utilitários do Databricks com o Databricks Connect para Scala.

Utilitários do Databricks disponíveis

Use o Databricks Connect para acessar os Utilitários do Databricks da seguinte maneira:

  • Use a WorkspaceClient variável da dbutils classe para acessar os Utilitários do Databricks. A classe WorkspaceClient pertence ao SDK Databricks para Python e está incluída no Databricks Connect.
  • Use dbutils.fs para acessar o utilitário fs dos Utilitários do Databricks.
  • Use dbutils.secrets para acessar o utilitário secrets dos Utilitários do Databricks.

Nenhuma funcionalidade dos Utilitários do Databricks, além dos utilitários mencionados anteriormente, está disponível através de dbutils.

Dica

Você também pode usar o SDK do Databricks incluído para Python para acessar qualquer API REST do Databricks disponível, não apenas as APIs de Utilitários do Databricks anteriores. Confira databricks-sdk no PyPI.

Intializar o WorkspaceClient

Para inicializar WorkspaceClient, você deve fornecer informações suficientes para autenticar o SDK do Databricks com o espaço de trabalho. Por exemplo, você pode:

  • Codifique de forma rígida a URL do workspace e o token de acesso diretamente no seu código e, em seguida, inicialize WorkspaceClient da seguinte maneira. Embora essa opção tenha suporte, o Databricks não recomenda essa opção, pois pode expor informações confidenciais, como tokens de acesso, se o código for verificado no controle de versão ou compartilhado de outra forma:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(host  = f"https://{retrieve_workspace_instance_name()}",
                        token = retrieve_token())
    
  • Crie ou especifique um perfil de configuração que contém os campos host e tokene intilize o WorkspaceClient da seguinte maneira:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(profile = "<profile-name>")
    
  • Defina as variáveis de ambiente DATABRICKS_HOST e DATABRICKS_TOKEN da mesma maneira que as definiu para o Databricks Connect e, em seguida, inicialize WorkspaceClient da seguinte maneira:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient()
    

O SDK do Databricks para Python não reconhece a variável de ambiente SPARK_REMOTE para o Databricks Connect.

Para opções de autenticação de Azure Databricks adicionais para o SDK do Databricks para Python, além de como inicializar AccountClient nos SDKs do Databricks para acessar as APIs REST do Databricks disponíveis no nível da conta em vez de no nível do workspace, consulte databricks-sdk no PyPI.

Exemplo: criar um arquivo em um volume

O exemplo a seguir mostra como usar o SDK do Databricks para Python para automatizar os Utilitários do Databricks. Este exemplo cria um arquivo nomeado zzz_hello.txt no caminho de um volume do Catálogo do Unity dentro do workspace, lê os dados do arquivo e exclui o arquivo. Este exemplo pressupõe que as variáveis de ambiente DATABRICKS_HOST e DATABRICKS_TOKEN já foram definidas:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

file_path = "/Volumes/main/default/my-volume/zzz_hello.txt"
file_data = "Hello, Databricks!"
fs = w.dbutils.fs

fs.put(
  file      = file_path,
  contents  = file_data,
  overwrite = True
)

print(fs.head(file_path))

fs.rm(file_path)

Consulte também Interação com dbutils na documentação do SDK do Databricks para Python.