Databricks Utilities med Databricks Connect för Python
Kommentar
Den här artikeln beskriver Databricks Connect för Databricks Runtime 13.3 LTS och senare.
Den här artikeln beskriver hur du använder Databricks Utilities med Databricks Connect för Python. Med Databricks Connect kan du ansluta populära IDE:er, notebook-servrar och anpassade program till Azure Databricks-kluster. Se Vad är Databricks Connect?. Scala-versionen av den här artikeln finns i Databricks Utilities with Databricks Connect for Scala (Databricks Utilities with Databricks Connect for Scala).
Kommentar
Innan du börjar använda Databricks Connect måste du konfigurera Databricks Connect-klienten.
Du använder Databricks Connect för att få åtkomst till Databricks Utilities på följande sätt:
WorkspaceClient
Använd klassensdbutils
variabel för att komma åt Databricks Utilities. KlassenWorkspaceClient
tillhör Databricks SDK för Python och ingår i Databricks Connect.- Använd
dbutils.fs
för att komma åt verktyget Databricks Utilities fs . - Använd
dbutils.secrets
för att komma åt verktyget Databricks Utilities-hemligheter. - Inga andra databricks-verktygsfunktioner än de föregående verktygen är tillgängliga via
dbutils
.
Dricks
Du kan också använda den inkluderade Databricks SDK för Python för att få åtkomst till alla tillgängliga Databricks REST-API:er, inte bara de föregående API:erna för Databricks Utilities. Se databricks-sdk på PyPI.
Om du vill initiera WorkspaceClient
måste du ange tillräckligt med information för att autentisera en Databricks SDK med arbetsytan. Du kan till exempel:
Hårdkoda arbetsytans URL och din åtkomsttoken direkt i koden och initiera
WorkspaceClient
sedan på följande sätt. Även om det här alternativet stöds rekommenderar Databricks inte det här alternativet eftersom det kan exponera känslig information, till exempel åtkomsttoken, om koden är incheckad i versionskontroll eller på annat sätt delas:from databricks.sdk import WorkspaceClient w = WorkspaceClient(host = f"https://{retrieve_workspace_instance_name()}", token = retrieve_token())
Skapa eller ange en konfigurationsprofil som innehåller fälten
host
ochtoken
och initiera sedan följandeWorkspaceClient
:from databricks.sdk import WorkspaceClient w = WorkspaceClient(profile = "<profile-name>")
Ange miljövariablerna
DATABRICKS_HOST
ochDATABRICKS_TOKEN
på samma sätt som du anger dem för Databricks Connect och initieraWorkspaceClient
sedan på följande sätt:from databricks.sdk import WorkspaceClient w = WorkspaceClient()
Databricks SDK för Python känner inte igen SPARK_REMOTE
miljövariabeln för Databricks Connect.
Ytterligare autentiseringsalternativ för Azure Databricks för Databricks SDK för Python samt hur du initierar AccountClient
i Databricks SDK:er för att komma åt tillgängliga Databricks REST-API:er på kontonivå i stället för på arbetsytans nivå finns i databricks-sdk på PyPI.
I följande exempel visas hur du använder Databricks SDK för Python för att automatisera Databricks Utilities. Det här exemplet skapar en fil med namnet zzz_hello.txt
i en Unity Catalog-volymsökväg på arbetsytan, läser data från filen och tar sedan bort filen. Det här exemplet förutsätter att miljövariablerna DATABRICKS_HOST
och DATABRICKS_TOKEN
redan har angetts:
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)
Se även Interaktion med dbutils i dokumentationen för Databricks SDK för Python.