Nawiązywanie połączenia z usługą Azure Databricks z poziomu języka Python lub języka R
Z tego artykułu dowiesz się, jak używać sterownika ODBC usługi Databricks do łączenia usługi Azure Databricks z językiem Python lub R. Po nawiązaniu połączenia możesz uzyskać dostęp do danych w usłudze Azure Databricks z poziomu klientów języka Python lub R. Możesz również użyć klientów do dalszej analizy danych.
Warunki wstępne
Musisz mieć obszar roboczy usługi Azure Databricks, klaster Spark i przykładowe dane skojarzone z klastrem. Jeśli nie masz jeszcze tych wymagań wstępnych, ukończ przewodnik Szybki start w Rozpoczynanie pracy.
Pobierz sterownik ODBC Databricks ze strony pobierania sterownika Databricks . Zainstaluj 64-bitową wersję sterownika.
Skonfiguruj osobisty token dostępu w usłudze Databricks. Aby uzyskać instrukcje, zobacz Zarządzanie tokenami.
Ustaw DSN
Nazwa źródła danych (DSN) zawiera informacje o określonym źródle danych. Sterownik ODBC wymaga tej nazwy DSN do nawiązania połączenia ze źródłem danych. W tej sekcji skonfigurujesz DSN, który może być używany ze sterownikiem ODBC Databricks w celu nawiązania połączenia z Azure Databricks za pomocą klientów takich jak Python lub R.
W obszarze roboczym Azure Databricks przejdź do klastra Databricks.
Na karcie Configuration kliknij kartę JDBC/ODBC i skopiuj wartości nazwy hosta serwera Server i ścieżki HTTP. Te wartości są potrzebne do wykonania kroków opisanych w tym artykule.
Na komputerze uruchom aplikację Źródła danych ODBC w wersji 64-bitowej.
Na karcie użytkownika DSN, kliknij Dodaj. W oknie dialogowym Tworzenie nowego źródła danych wybierz Simba Spark ODBC Driver, a następnie kliknij przycisk Zakończ.
W oknie dialogowym sterownika Simba Spark podaj następujące wartości:
Poniższa tabela zawiera informacje o wartościach, które należy podać w oknie dialogowym.
Pole Wartość nazwa źródła danych Podaj nazwę źródła danych. hostów Podaj wartość skopiowaną z obszaru roboczego usługi Databricks dla nazwy hosta serwera . Port Wprowadź 443. mechanizm>uwierzytelniania Wybierz nazwę użytkownika i hasło. nazwa użytkownika Wprowadź token. hasło Wprowadź wartość tokenu skopiowaną z obszaru roboczego usługi Databricks. Wykonaj następujące dodatkowe kroki w oknie dialogowym Konfiguracja dsN.
- Kliknij Opcje HTTP. W wyświetlonym oknie dialogowym wklej wartość ścieżki HTTP skopiowaną z obszaru roboczego usługi Databricks. Kliknij przycisk OK.
- Kliknij pozycję Opcje protokołu SSL. W wyświetlonym oknie dialogowym zaznacz pole wyboru Włącz SSL. Kliknij przycisk OK.
- Kliknij Test, aby przetestować połączenie z usługą Azure Databricks. Kliknij przycisk OK, aby zapisać konfigurację.
- W oknie dialogowym administrator źródła danych ODBC kliknij przycisk OK.
Masz teraz skonfigurowaną nazwę DSN. W następnych sekcjach użyjesz tej nazwy DSN do nawiązania połączenia z usługą Azure Databricks z poziomu języka Python lub języka R.
Nawiązywanie połączenia z poziomu języka R
Notatka
Ta sekcja zawiera informacje na temat sposobu integrowania klienta programu R Studio uruchomionego na pulpicie z usługą Azure Databricks. Aby uzyskać instrukcje dotyczące korzystania z programu R Studio w samym klastrze usługi Azure Databricks, zobacz R Studio w usłudze Azure Databricks.
W tej sekcji użyjesz środowiska IDE języka R do odwołowania się do danych dostępnych w usłudze Azure Databricks. Przed rozpoczęciem na komputerze musi być zainstalowana następująca instalacja.
- Środowisko IDE dla języka R. W tym artykule jest używany program RStudio for Desktop. Możesz go zainstalować z pobierania programu R Studio.
- Jeśli używasz programu RStudio for Desktop jako środowiska IDE, zainstaluj również klienta microsoft R z https://aka.ms/rclient/.
Otwórz program RStudio i wykonaj następujące czynności:
- Odwołaj się do pakietu
RODBC
. Dzięki temu można nawiązać połączenie z usługą Azure Databricks przy użyciu utworzonej wcześniej nazwy DSN. - Nawiąż połączenie za pomocą DSN.
- Uruchom zapytanie SQL dotyczące danych w usłudze Azure Databricks. W poniższym fragmencie kodu radio_sample_data to tabela, która już istnieje w usłudze Azure Databricks.
- Wykonaj pewne operacje na zapytaniu, aby zweryfikować dane wyjściowe.
Poniższy fragment kodu wykonuje następujące zadania:
# reference the 'RODBC' package
require(RODBC)
# establish a connection using the DSN you created earlier
conn <- odbcConnect("<ENTER DSN NAME HERE>")
# run a SQL query using the connection you created
res <- sqlQuery(conn, "SELECT * FROM radio_sample_data")
# print out the column names in the query output
names(res)
# print out the number of rows in the query output
nrow (res)
Nawiązywanie połączenia z poziomu języka Python
W tej sekcji użyjesz środowiska IDE języka Python (takiego jak IDLE), aby odwołać się do danych dostępnych w usłudze Azure Databricks. Przed rozpoczęciem wykonaj następujące wymagania wstępne:
Zainstaluj Pythona z tutaj. Zainstalowanie języka Python z tego linku powoduje również zainstalowanie środowiska IDLE.
W wierszu polecenia na komputerze zainstaluj pakiet
pyodbc
. Uruchom następujące polecenie:pip install pyodbc
Otwórz plik IDLE i wykonaj następujące czynności:
- Zaimportuj pakiet
pyodbc
. Dzięki temu można nawiązać połączenie z usługą Azure Databricks przy użyciu utworzonej wcześniej nazwy DSN. - Ustanów połączenie, korzystając z wcześniej utworzonego DSN.
- Uruchom zapytanie SQL przy użyciu utworzonego połączenia. W poniższym fragmencie kodu radio_sample_data to tabela, która już istnieje w usłudze Azure Databricks.
- Wykonaj operacje na zapytaniu, aby zweryfikować dane wyjściowe.
Poniższy fragment kodu wykonuje następujące zadania:
# import the `pyodbc` package:
import pyodbc
# establish a connection using the DSN you created earlier
conn = pyodbc.connect("DSN=<ENTER DSN NAME HERE>", autocommit=True)
# run a SQL query using the connection you created
cursor = conn.cursor()
cursor.execute("SELECT * FROM radio_sample_data")
# print the rows retrieved by the query.
for row in cursor.fetchall():
print(row)
Następne kroki
- Aby dowiedzieć się więcej o źródłach, z których można importować dane do usługi Azure Databricks, zobacz Źródła danych dla usługi Azure Databricks