Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Notatka
W tym artykule opisano usługę Databricks Connect dla środowiska Databricks Runtime 13.3 LTS lub nowszego.
W tym artykule opisano sposób używania programu Databricks Utilities z usługą Databricks Connect dla języka Python. Usługa Databricks Connect umożliwia łączenie popularnych środowisk programistycznych (IDE), serwerów notebooków i aplikacji niestandardowych z klastrami Azure Databricks. Zobacz Co to jest usługa Databricks Connect?.
Przed rozpoczęciem korzystania z usługi Databricks Connect należy skonfigurować klienta Usługi Databricks Connect.
Aby zapoznać się z wersją artykułu w języku Scala, przeczytaj Databricks Utilities with Databricks Connect for Scala.
Dostępne opcje narzędzi Databricks
Użyjesz usługi Databricks Connect, aby uzyskać dostęp do narzędzi usługi Databricks w następujący sposób:
- Użyj zmiennej klasy
WorkspaceClientdbutils, aby uzyskać dostęp do narzędzi Databricks Utilities. KlasaWorkspaceClientnależy do zestawu SDK usługi Databricks dla języka Python i jest uwzględniona w usłudze Databricks Connect. - Użyj
dbutils.fs, aby uzyskać dostęp do narzędzia Databricks Utilities fs. - Użyj
dbutils.secrets, aby uzyskać dostęp do narzędzia Databricks Utilities Secrets.
Żadne funkcje narzędzi Databricks, poza wymienionymi wcześniej, nie są dostępne za pośrednictwem dbutils.
Napiwek
Możesz również użyć dołączonego zestawu SDK usługi Databricks dla języka Python, aby uzyskać dostęp do dowolnego dostępnego interfejsu API REST usługi Databricks, a nie tylko poprzednich interfejsów API narzędzi usługi Databricks. Zobacz databricks-sdk na stronie PyPI.
Zainicjuj WorkspaceClient
Aby zainicjować WorkspaceClient, należy podać wystarczającą ilość danych, aby uwierzytelnić pakiet SDK Databricks z obszarem roboczym. Możesz na przykład:
Zakoduj trwale adres URL obszaru roboczego i token dostępu bezpośrednio w kodzie, a następnie zainicjuj
WorkspaceClientw następujący sposób. Mimo że ta opcja jest obsługiwana, usługa Databricks nie zaleca tej opcji, ponieważ może uwidaczniać poufne informacje, takie jak tokeny dostępu, jeśli kod jest zaewidencjonowany w kontroli wersji lub w inny sposób udostępniony:from databricks.sdk import WorkspaceClient w = WorkspaceClient(host = f"https://{retrieve_workspace_instance_name()}", token = retrieve_token())Utwórz lub określ profil konfiguracji , który zawiera pola
hostitoken, a następnie zainicjujWorkspaceClientw następujący sposób:from databricks.sdk import WorkspaceClient w = WorkspaceClient(profile = "<profile-name>")Ustaw zmienne środowiskowe
DATABRICKS_HOSTiDATABRICKS_TOKENw taki sam sposób, jak dla usługi Databricks Connect, a następnie zainicjujWorkspaceClientw następujący sposób:from databricks.sdk import WorkspaceClient w = WorkspaceClient()
Zestaw SDK usługi Databricks dla języka Python nie rozpoznaje zmiennej środowiskowej SPARK_REMOTE dla usługi Databricks Connect.
Aby uzyskać dodatkowe opcje uwierzytelniania usługi Azure Databricks dla zestawu SDK usługi Databricks dla języka Python, a także jak zainicjować AccountClient w zestawach SDK usługi Databricks w celu uzyskania dostępu do dostępnych interfejsów API REST usługi Databricks na poziomie konta zamiast na poziomie obszaru roboczego, zobacz databricks-sdk na platformie PyPI.
Przykład: tworzenie pliku w woluminie
W poniższym przykładzie pokazano, jak używać zestawu SDK usługi Databricks dla języka Python do automatyzowania narzędzi usługi Databricks. W tym przykładzie tworzony jest plik o nazwie zzz_hello.txt w ścieżce woluminu Unity Catalog w obszarze roboczym, następnie odczytywane są dane z pliku, a na końcu plik jest usuwany. W tym przykładzie przyjęto założenie, że zmienne środowiskowe DATABRICKS_HOST i DATABRICKS_TOKEN zostały już ustawione:
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)
Zobacz również Interakcja z dbutils w dokumentacji SDK Databricks dla Pythona.