Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
En este artículo se describe Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.
En este artículo se describe cómo usar Databricks Utilities con Databricks Connect para Python. Databricks Connect permite conectar entornos de desarrollo integrados populares, servidores de cuadernos y aplicaciones personalizadas a los clusters de Azure Databricks. Consulte Databricks Connect.
Antes de empezar a usar Databricks Connect, debe configurar el cliente de Databricks Connect.
Para obtener la versión de Scala de este artículo, consulte Utilidades de Databricks con Databricks Connect para Scala.
Utilidades de Databricks disponibles
Use Databricks Connect para acceder a las utilidades de Databricks de la siguiente manera:
- Utiliza la variable
WorkspaceClientde la clasedbutilspara acceder a las utilidades de Databricks. La claseWorkspaceClientpertenece al SDK de Databricks para Python y se incluye en Databricks Connect. - Utilice
dbutils.fspara acceder a la utilidad fs de Databricks. - Use
dbutils.secretspara acceder a la utilidad de secretos de Databricks Utilities. - Usa
dbutils.widgetspara crear y leer widgets locales, de modo que el código escrito para la utilidad widgets de Databricks Utilities se ejecute localmente. Estos widgets existen solo en su sesión local y no pueden recuperar los parámetros de tarea de cuaderno o de trabajo remotos. Leer un widget que no has creado localmente genera una excepciónKeyError, o devuelve el valor por defecto si usasgetArgument. - Use
dbutils.jobs.taskValuespara depurar localmente el código escrito para la utilidad jobs de Databricks Utilities. Los valores de la tarea no se intercambian con las ejecuciones remotas de trabajo:setno hace nada ygetdevuelve el valor de sudebugValueargumento, o genera un error si no pasasdebugValue. Para establecer u obtener los valores de tarea para las tareas posteriores, ejecute su código como tarea de trabajo.
No hay disponible a través de dbutils ninguna funcionalidad de Databricks Utilities aparte de las utilidades anteriores.
Sugerencia
También puede usar el SDK de Databricks incluido para Python para acceder a las APIs REST de Databricks disponibles, no solo a las APIs de utilidades de Databricks anteriores. Consulte databricks-sdk en PyPI.
Inicializar WorkspaceClient
Para inicializar WorkspaceClient, debe proporcionar suficiente información para autenticar un SDK de Databricks con el área de trabajo. Por ejemplo, puede hacer lo siguiente:
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
WorkspaceClientcomo se indica a continuación. Aunque se admite esta opción, Databricks no recomienda esta opción, 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
hostytokeny, a continuación, inicialice comoWorkspaceClientse indica a continuación:from databricks.sdk import WorkspaceClient w = WorkspaceClient(profile = "<profile-name>")Establezca las variables
DATABRICKS_HOSTde entorno yDATABRICKS_TOKENde la misma manera que las establezca para Databricks Connect y, a continuación, inicialiceWorkspaceClientcomo se indica a continuación:from databricks.sdk import WorkspaceClient w = WorkspaceClient()
El SDK de Databricks para Python no reconoce la variable de entorno />
Para obtener opciones de autenticación de Azure Databricks adicionales para el SDK de Databricks para Python, así como cómo inicializar AccountClient dentro de los SDK de Databricks para 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.
Ejemplo: crear un archivo en un volumen
En el ejemplo siguiente se muestra cómo usar el SDK de Databricks para Python automatizar las utilidades de Databricks. En este ejemplo se crea un archivo denominado zzz_hello.txt en la ruta de acceso de un volumen del catálogo de Unity dentro del área de trabajo, se leen los datos del archivo y, a continuación, se elimina el archivo. En este ejemplo se supone que las variables DATABRICKS_HOST de entorno 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 de Databricks SDK para Python.