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.
Uwaga / Notatka
Ten artykuł dotyczy programu Databricks Connect 15.4 LTS i nowszych wersji.
W tym artykule opisano sposób tworzenia projektu w środowisku IDE, konfigurowania środowiska wirtualnego, instalowania programu Databricks Connect dla języka Python i uruchamiania kodu na bezserwerowych obliczeniach w obszarze roboczym usługi Databricks.
W tym samouczku używane są języki Python 3.12 i Databricks Connect 16.4 LTS. Aby korzystać z innych wersji języka Python usługi Databricks Connect, muszą być one zgodne. Zobacz macierz obsługi wersji.
Wymagania
Aby ukończyć ten samouczek, należy spełnić następujące wymagania:
- Obszar roboczy, środowisko lokalne i obliczenia spełniają wymagania programu Databricks Connect dla języka Python. Zobacz Wymagania dotyczące użycia usługi Databricks Connect.
- Przetwarzanie bezserwerowe jest włączone w obszarze roboczym. Zobacz Połącz się z bezserwerową chmurą obliczeniową.
- Masz zainstalowany język Python 3.12.
- Masz zainstalowane środowisko IDE, takie jak Visual Studio Code.
- Interfejs wiersza polecenia usługi Databricks jest zainstalowany na komputerze lokalnym. Zobacz Instalowanie lub aktualizowanie interfejsu wiersza poleceń Databricks.
Krok 1. Konfigurowanie uwierzytelniania usługi Databricks
W tym samouczku używane jest uwierzytelnianie użytkownika do komputera usługi Databricks OAuth (U2M) i profil konfiguracji usługi Databricks do uwierzytelniania w obszarze roboczym usługi Databricks.
Użyj Databricks CLI, aby lokalnie zainicjować zarządzanie tokenami OAuth, uruchamiając następujące polecenie dla każdego docelowego obszaru roboczego. W poniższym poleceniu zastąp
<workspace-url>ciąg adresem URL wystąpienia obszaru roboczego usługi Databricks, na przykładhttps://dbc-a1b2345c-d6e7.cloud.databricks.com.databricks auth login --host <workspace-url>Interfejs wiersza polecenia usługi Databricks monituje o zapisanie informacji wprowadzonych jako profil konfiguracji usługi Databricks. Naciśnij
Enter, aby zaakceptować sugerowaną nazwę profilu lub wprowadź nazwę nowego lub istniejącego profilu. Usługa Databricks zaleca używanie jakoDEFAULTnazwy profilu.W przeglądarce internetowej wykonaj instrukcje na ekranie, aby zalogować się do obszaru roboczego usługi Databricks.
Krok 2. Tworzenie nowego środowiska wirtualnego języka Python
Utwórz folder projektu i otwórz go w środowisku IDE. Na przykład w menu głównym programu Visual Studio Code kliknij pozycję Otwórz plik>Otwórz folder>.
Otwórz okno terminalu w folderze głównym folderu projektu. Na przykład w menu głównym programu Visual Studio Code kliknij pozycję Wyświetl>terminal.
Utwórz środowisko wirtualne dla projektu o nazwie
venvw katalogu głównym folderu projektu, uruchamiając następujące polecenie w terminalu:python3.12 -m venv .venvAktywowanie środowiska wirtualnego:
# Linux/Mac source .venv/bin/activate# Windows .venv\Scripts\activate
Krok 3. Instalowanie programu Databricks Connect
Zainstaluj program Databricks Connect. Aby uzyskać informacje o najnowszej wydanej wersji programu Databricks Connect 16.4, zobacz Databricks Connect for Databricks Runtime 16.4.
pip install "databricks-connect==16.4.*"
Krok 4. Dodawanie kodu i uruchamianie
Dodawanie nowego pliku
main.pyjęzyka Python do projektuWprowadź następujący kod w pliku, zastępując symbol zastępczy
<profile-name>nazwą profilu konfiguracji z kroku 1, a następnie zapisz plik. Domyślna nazwa profilu konfiguracji toDEFAULT.from databricks.connect import DatabricksSession spark = DatabricksSession.builder.serverless().profile("<profile-name>").getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)Uruchom kod przy użyciu następującego polecenia:
python3 main.pyZwracane są pięć wierszy tabeli:
+--------------------+---------------------+-------------+-----------+---------+-----------+ |tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip| +--------------------+---------------------+-------------+-----------+----------+-----------+ | 2016-02-16 22:40:45| 2016-02-16 22:59:25| 5.35| 18.5| 10003| 11238| | 2016-02-05 16:06:44| 2016-02-05 16:26:03| 6.5| 21.5| 10282| 10001| | 2016-02-08 07:39:25| 2016-02-08 07:44:14| 0.9| 5.5| 10119| 10003| | 2016-02-29 22:25:33| 2016-02-29 22:38:09| 3.5| 13.5| 10001| 11222| | 2016-02-03 17:21:02| 2016-02-03 17:23:24| 0.3| 3.5| 10028| 10028| +--------------------+---------------------+-------------+-----------+----------+-----------+
Pomyślnie uruchomiono pierwsze zapytanie dotyczące bezserwerowych obliczeń usługi Databricks przy użyciu usługi Databricks Connect ze środowiska IDE.
Krok 5. Przygotowanie kodu do produkcji
W przypadku scenariuszy produkcyjnych należy unikać używania specyfikacji obliczeniowych w konstruktorze sesji platformy Spark. Jeśli na przykład wdrożysz kod w klastrze klasycznym: Standard lub Dedicated przy użyciu interfejsu .serverless() API w konstruktorze sesji platformy Spark, zostanie utworzona nowa bezserwerowa sesja platformy Spark przy użyciu klasycznego klastra jako klienta.
Aby kod był elastyczny i gotowy do produkcji, sesja platformy Spark nie powinna zawierać żadnych parametrów.
spark = DatabricksSession.builder.getOrCreate()
Jednak po uruchomieniu tego kodu w usłudze Databricks jest używana domyślna globalna sesja platformy Spark obliczeń usługi Databricks.
Aby włączyć przetwarzanie bezserwerowe w środowisku IDE, użyj domyślnego DatabricksSession.builder profilu konfiguracji, który jest wybierany w przypadku, gdy nie określono parametrów:
Utwórz profil konfiguracji o nazwie
DEFAULTprzy użyciu instrukcji z kroku 1.Użyj edytora
.databrickscfgtekstów, aby otworzyć plik, który znajduje się w:Folder
$HOMEgłówny użytkownika w systemach Unix, Linux lub macOS:~/.databrickscfglubFolder
%USERPROFILE%(strona główna użytkownika) w systemie Windows. Na przykład dla systemu macOS:nano ~/.databrickscfg
Dodaj
serverless_compute_id = autodoDEFAULTprofilu:[DEFAULT] host = https://my-workspace.cloud.databricks.com auth_type = databricks-cli serverless_compute_id = autoZapisz zmiany i zamknij edytor.
Zmodyfikuj kod, aby używał ogólnej sesji platformy Spark i uruchom go:
from databricks.connect import DatabricksSession spark = DatabricksSession.builder.getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)python3 main.py
Kod gotowy do środowiska produkcyjnego został pomyślnie uruchomiony na bezserwerowych obliczeniach usługi Databricks przy użyciu programu Databricks Connect ze środowiska IDE przy użyciu profilu konfiguracji DEFAULT.
Wskazówka
Możesz również użyć zmiennych środowiskowych, aby ustawić połączenie z określonym środowiskiem obliczeniowym usługi Databricks:
- Bezserwerowe:
DATABRICKS_SERVERLESS_COMPUTE_ID=auto - Klasyczny:
DATABRICKS_CLUSTER_ID=<your_cluster_id>