Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dieser Artikel behandelt Databricks Connect für Databricks Runtime Version 13.3 LTS und höher.
In diesem Artikel wird beschrieben, wie Sie Databricks Utilities mit Databricks Connect für Python verwenden. Mit Databricks Connect können Sie beliebte IDEs, Notebookserver und benutzerdefinierte Anwendungen mit Azure Databricks-Clustern verbinden. Weitere Informationen finden Sie unter Was ist Databricks Connect?.
Bevor Sie beginnen, Databricks Connect zu verwenden, müssen Sie den Databricks Connect-Client einrichten.
Die Scala-Version dieses Artikels finden Sie unter Databricks Utilities mit Databricks Connect für Scala.
Verfügbare Databricks-Dienstprogramme
Sie verwenden Databricks Connect für den Zugriff auf Databricks Utilities wie folgt:
- Verwenden Sie die Variable der
WorkspaceClientKlassedbutils, um auf Databricks Utilities zuzugreifen. DieWorkspaceClientKlasse gehört zum Databricks SDK für Python und ist in Databricks Connect enthalten. - Verwenden Sie
dbutils.fs, um auf das Dienstprogramm Databricks Utilities fs zuzugreifen. - Verwenden Sie
dbutils.secrets, um auf die Geheimnisfunktion von Databricks Utilities zuzugreifen.
Keine Databricks Utilities-Funktionalität außer den vorherigen Dienstprogrammen ist über dbutils verfügbar.
Tipp
Sie können auch das enthaltene Databricks SDK für Python verwenden, um auf alle verfügbaren Databricks-REST-API zuzugreifen, nicht nur die vorherigen Databricks Utilities-APIs. Siehe databricks-sdk auf PyPI.
Initialisieren des WorkspaceClient
Zum Initialisieren WorkspaceClient müssen Sie genügend Informationen bereitstellen, um ein Databricks SDK mit dem Arbeitsbereich zu authentifizieren. Beispielsweise können Sie folgende Aktionen ausführen:
Hartcodieren Sie die Arbeitsbereichs-URL und Ihr Zugriffstoken direkt in Ihrem Code, und initialisieren Sie
WorkspaceClientdann wie folgt. Obwohl diese Option unterstützt wird, empfiehlt Databricks diese Option nicht, da sie vertrauliche Informationen wie Zugriffstoken verfügbar machen kann, wenn Ihr Code in die Versionssteuerung eingecheckt oder anderweitig freigegeben wird:from databricks.sdk import WorkspaceClient w = WorkspaceClient(host = f"https://{retrieve_workspace_instance_name()}", token = retrieve_token())Erstellen Sie oder geben Sie ein Konfigurationsprofil an, das die Felder
hostundtokenenthält, und initialisieren Sie dann dasWorkspaceClientwie folgt:from databricks.sdk import WorkspaceClient w = WorkspaceClient(profile = "<profile-name>")Legen Sie die Umgebungsvariablen
DATABRICKS_HOSTundDATABRICKS_TOKENauf die gleiche Weise fest, wie Sie sie für Databricks Connect festlegen, und initialisieren SieWorkspaceClientdann wie folgt:from databricks.sdk import WorkspaceClient w = WorkspaceClient()
Das Databricks SDK für Python erkennt die SPARK_REMOTE Umgebungsvariable für Databricks Connect nicht.
Weitere Azure Databricks-Authentifizierungsoptionen für das Databricks SDK für Python sowie die Initialisierung AccountClient innerhalb der Databricks-SDKs für den Zugriff auf verfügbare Databricks-REST-APIs auf Kontoebene statt auf Arbeitsbereichsebene finden Sie unter databricks-sdk auf PyPI.
Beispiel: Erstellen einer Datei in einem Volume
Das folgende Beispiel zeigt, wie Sie das Databricks SDK für Python verwenden, um Databricks Utilities zu automatisieren. In diesem Beispiel wird eine Datei erstellt, die im Pfad eines Unity-Katalogvolumes innerhalb des Arbeitsbereichs benannt zzz_hello.txt ist, die Daten aus der Datei liest und dann die Datei löscht. In diesem Beispiel wird davon ausgegangen, dass die Umgebungsvariablen DATABRICKS_HOST und DATABRICKS_TOKEN bereits festgelegt wurden.
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)
Siehe auch Interaktion mit dbutils im Databricks SDK für Python-Dokumentation.