Utilidades de Databricks con Databricks Connect para Python
Nota:
Este artículo describe Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.
En este artículo se describe cómo usar Utilidades de Databricks con Databricks Connect para Python. Databricks Connect le permite conectar los clústeres de Azure Databricks a entornos de desarrollo integrado populares, servidores de cuadernos y otras aplicaciones personalizadas. Consulte ¿Qué es Databricks Connect?. Para obtener la versión de Scala de este artículo, consulte Utilidades de Databricks con Databricks Connect para Scala.
Nota:
Antes de empezar a usar Databricks Connect, debeconfigurar el cliente de Databricks Connect.
Use Databricks Connect para acceder a utilidades de Databricks de la siguiente manera:
- Use la variable
dbutils
de la claseWorkspaceClient
para acceder a las utilidades de Databricks. La claseWorkspaceClient
pertenece al SDK de Databricks para Python y se incluye en Databricks Connect. - Use
dbutils.fs
para acceder a la utilidad fs de Databricks Utilities. - Use
dbutils.secrets
para acceder a la utilidad de secretos de Databricks Utilities. - No hay ninguna funcionalidad de Databricks Utilities distinta de las utilidades anteriores disponibles mediante
dbutils
.
Sugerencia
También puede usar el SDK de Databricks incluido para Python para acceder a cualquier API REST de Databricks disponible, no solo a las API de Databricks Utilities anteriores. Consulte databricks-sdk en PyPI.
Para inicializar WorkspaceClient
, debe proporcionar suficiente información para autenticar un SDK de Databricks con el área de trabajo. Por ejemplo, puede:
Codifique de forma rígida la dirección URL del área de trabajo y el token de acceso directamente dentro del código y, a continuación, inicialice
WorkspaceClient
como se indica a continuación. Aunque se admite esta opción, Databricks no la recomienda, ya que puede exponer información confidencial, como tokens de acceso, si el código se registra en el control de versiones o se comparte de otro modo:from databricks.sdk import WorkspaceClient w = WorkspaceClient(host = f"https://{retrieve_workspace_instance_name()}", token = retrieve_token())
Cree o especifique un perfil de configuración que contenga los campos
host
ytoken
y, a continuación, inicialiceWorkspaceClient
como se indica a continuación:from databricks.sdk import WorkspaceClient w = WorkspaceClient(profile = "<profile-name>")
Establezca las variables de entorno
DATABRICKS_HOST
yDATABRICKS_TOKEN
de la misma manera que las ha establecido para Databricks Connect. A continuación, inicialiceWorkspaceClient
como se indica:from databricks.sdk import WorkspaceClient w = WorkspaceClient()
El SDK de Databricks para Python no reconoce la variable de entorno SPARK_REMOTE
para Databricks Connect.
Para obtener más opciones de autenticación de Azure Databricks para el SDK de Databricks para Python, así como para saber cómo inicializar AccountClient
en los SDK de Databricks y acceder a las API REST de Databricks disponibles en el nivel de cuenta en lugar de en el nivel de área de trabajo, consulte databricks-sdk en PyPI.
En el ejemplo siguiente, se muestra cómo usar el SDK de Databricks para Python para automatizar Databricks Utilities. En este ejemplo, se crea el archivo llamado zzz_hello.txt
en una ruta de acceso del volumen del catálogo de Unity dentro del área de trabajo, se leen los datos del archivo y, después, se elimina el archivo. En este ejemplo se supone que las variables de entorno DATABRICKS_HOST
y DATABRICKS_TOKEN
ya se han establecido:
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 también Interacción con dbutils en la documentación del SDK de Databricks para Python.