Introduzione al Databricks SDK

Databricks con il Python SDK

Avi Steinberg

Software/Data Engineer

Perché imparare Databricks?

Foto profilo

  • Piattaforma cloud leader per ML, AI e Data Engineering
  • Usata da oltre il 60% delle Fortune 500

Emblema Databricks

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

Cos'è un Databricks Workspace?

  • Distribuzione su cloud delle risorse Databricks
  • Ambiente per accedere alle risorse Databricks
  • Esempi di risorse nel Workspace: job, cluster e notebook
Databricks con il Python SDK

Installa Databricks SDK

Installa l'SDK

pip install databricks-sdk

Istanzia WorkspaceClient

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

Variabili d'ambiente per l'autenticazione

  • Variabile d'ambiente = coppia chiave/valore per configurare il comportamento dell'app

  • DATABRICKS_CLIENT_SECRET

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

Screenshot dell'URL web del Databricks Workspace

Databricks con il Python SDK

Autenticazione con un Service Principal

  • Service Principal = identità di sicurezza nel cloud che rappresenta un'applicazione

  • Crea un Service Principal

  • Assegna permessi al Service Principal
  • Genera un secret per il Service Principal

Immagine della pagina Secrets per il Service Principal del Workspace Databricks

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

Autenticazione predefinita

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()
  • Legge automaticamente i valori delle tre variabili d'ambiente
Databricks con il Python SDK

Interagire con il workspace 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 il Python SDK

Passons à la pratique !

Databricks con il Python SDK

Preparing Video For Download...