Udostępnij za pośrednictwem


Połączenie do usługi 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.

Wymagania 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 na stronie Wprowadzenie.

  • Pobierz sterownik ODBC usługi Databricks ze strony pobierania sterownika usługi Databricks. Zainstaluj 64-bitową wersję sterownika.

  • Skonfiguruj osobisty token dostępu w usłudze Databricks. Aby uzyskać instrukcje, zobacz Zarządzanie tokenami.

Konfigurowanie nazwy 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 nazwę DSN, która może być używana ze sterownikiem ODBC usługi Databricks w celu nawiązania połączenia z usługą Azure Databricks z klientów, takich jak Python lub R.

  1. W obszarze roboczym usługi Azure Databricks przejdź do klastra usługi Databricks.

    Open Databricks cluster

  2. Na karcie Konfiguracja kliknij kartę JDBC/ODBC i skopiuj wartości nazwy hosta serwera i ścieżki HTTP. Te wartości są potrzebne do wykonania kroków opisanych w tym artykule.

    Get Databricks configuration

  3. Na komputerze uruchom 64-bitową aplikację ŹRÓDEŁ danych ODBC.

    Launch ODBC Data Sources app

  4. Na karcie User DSN (Nazwa DSN użytkownika) kliknij przycisk Add (Dodaj). W oknie dialogowym Tworzenie nowego źródła danych wybierz sterownik Simba Spark ODBC, a następnie kliknij przycisk Zakończ.

    Add ODBC data source

  5. W oknie dialogowym Sterownik ODBC Simba Spark podaj następujące wartości:

    Configure DSN

    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.
    Hostami Podaj wartość skopiowaną z obszaru roboczego usługi Databricks dla nazwy hosta serwera.
    Port Wprowadź wartość 443.
    Mechanizm uwierzytelniania> Wybierz pozycję Nazwa 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 pozycję Opcje PROTOKOŁU HTTP. W wyświetlonym oknie dialogowym wklej wartość ścieżki HTTP skopiowanej 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 protokół SSL . Kliknij przycisk OK.
    • Kliknij pozycję Testuj , aby przetestować połączenie z usługą Azure Databricks. Kliknij pozycję OK, aby zapisać konfigurację.
    • W oknie dialogowym Administracja istrator ź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.

Połączenie z języka R

Uwaga

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 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żna 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 programu https://aka.ms/rclient/.

Otwórz program RStudio i wykonaj następujące czynności:

  • Utwórz odwołanie 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.
  • Ustanów połączenie przy użyciu nazwy 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)

Połączenie z 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 język Python z tego miejsca. Zainstalowanie języka Python z tego linku powoduje również zainstalowanie środowiska IDLE.

  • W wierszu polecenia na komputerze zainstaluj pyodbc pakiet. Uruchom następujące polecenie:

    pip install pyodbc
    

Otwórz plik IDLE i wykonaj następujące czynności:

  • Zaimportuj pyodbc pakiet. 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 przy użyciu utworzonej wcześniej nazwy 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