Primeros pasos con el SDK de Databricks

Databricks con el SDK de Python

Avi Steinberg

Software/Data Engineer

¿Por qué aprender Databricks?

Foto de perfil

  • Plataforma líder de ML, IA y Data Engineering
  • Usada por más del 60% de las empresas Fortune 500

Emblema de Databricks

1 https://www.databricks.com/company/newsroom/press-releases/databricks-raising-10b-series-j-investment-62b-valuation
Databricks con el SDK de Python

¿Qué es un workspace de Databricks?

  • Implementación de recursos en la nube de Databricks
  • Entorno para acceder a los assets de Databricks
  • Ejemplos en el workspace: jobs, clusters y notebooks
Databricks con el SDK de Python

Instalar Databricks SDK

Instala el SDK

pip install databricks-sdk

Instancia WorkspaceClient

from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
1 https://docs.databricks.com/en/dev-tools/sdk-python.html#language-venv
Databricks con el SDK de Python

Variables de entorno para autenticación

  • Variable de entorno = par clave/valor para configurar el comportamiento de una aplicación

  • DATABRICKS_CLIENT_SECRET

  • DATABRICKS_CLIENT_ID
  • DATABRICKS_HOST=<workspace_id>.cloud.databricks.com

Captura de la URL web del workspace de Databricks

Databricks con el SDK de Python

Autenticar con un Service Principal

  • Service Principal = identidad de seguridad en la nube que representa una aplicación

  • Crea un Service Principal

  • Asigna permisos al Service Principal
  • Genera un secreto para el Service Principal

Imagen de la página Secrets para el Service Principal del workspace de Databricks

1 https://docs.databricks.com/en/dev-tools/auth/oauth-m2m.html#step-1-create-a-service-principal
Databricks con el SDK de Python

Autenticación por defecto

from databricks.sdk import WorkspaceClient
import os

os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()
  • Lee automáticamente los valores de las tres variables de entorno
Databricks con el SDK de Python

Interactuar con nuestro workspace de Databricks

# Authenticate WorkspaceClient
from databricks.sdk import WorkspaceClient
import os
os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()

# Create Cluster: cluster = w.clusters.create(cluster_name="Test-Cluster")
# List Clusters: for cluster in w.clusters.list(): print(f"Clusters Name: {cluster.cluster_name}")
Clusters Name: Test-Cluster
1 https://databricks-sdk-py.readthedocs.io/en/latest/clients/workspace.html
Databricks con el SDK de Python

¡Vamos a practicar!

Databricks con el SDK de Python

Preparing Video For Download...