Condividi tramite


Connettersi ad Azure Databricks da Python o R

Questo articolo illustra come usare il driver ODBC di Databricks per connettere Azure Databricks con python o linguaggio R. Dopo aver stabilito la connessione, è possibile accedere ai dati in Azure Databricks dai client Python o R. È anche possibile usare i client per analizzare ulteriormente i dati.

Prerequisiti

  • È necessario avere un'area di lavoro di Azure Databricks, un cluster Spark e dati di esempio associati al cluster. Se questi prerequisiti non sono già disponibili, completare la guida introduttiva in Introduzione.

  • Scarica il driver ODBC di Databricks dalla pagina di download dei driver di Databricks. Installare la versione a 64 bit del driver.

  • Configurare un token di accesso personale in Databricks. Per istruzioni, vedere Gestione dei token.

Configurare un DSN

Un nome origine dati (DSN) contiene le informazioni su un'origine dati specifica. Un driver ODBC richiede questo DSN per connettersi a un'origine dati. In questa sezione viene configurato un DSN che può essere usato con il driver ODBC di Databricks per connettersi ad Azure Databricks da client come Python o R.

  1. Dall'area di lavoro di Azure Databricks passare al cluster Databricks.

    Apri il cluster di Databricks Apri il cluster di Databricks

  2. Nella scheda Configurazione, fare clic sulla scheda JDBC/ODBC e copiare i valori per Server Hostname e Percorso HTTP. Questi valori sono necessari per completare i passaggi descritti in questo articolo.

    ottieni configurazione di Databricks

  3. Sul tuo computer, avvia l'applicazione Origini dati ODBC a 64 bit.

    Avvia l'app Origini Dati ODBC

  4. Nella scheda DSN utente, fare clic su Aggiungi. Nella finestra di dialogo Crea nuova origine dati, selezionare il driver ODBC Simba Spark, e quindi fare clic su Fine.

    Aggiungere un'origine dati ODBC

  5. Nella finestra di dialogo driver ODBC Spark di Simba , specificare i valori seguenti:

    Configurare DSN

    Nella tabella seguente vengono fornite informazioni sui valori da fornire nella finestra di dialogo.

    Campo Valore
    nome origine dati Specificare un nome per l'origine dati.
    host Specificare il valore copiato dall'area di lavoro Databricks per il nome host del server .
    porta Immettere 443.
    meccanismo di autenticazione> Selezionare Nome utente e password.
    nome utente Immettere token.
    password Immettere il valore del token copiato dall'area di lavoro di Databricks.

    Eseguire i passaggi aggiuntivi seguenti nella finestra di dialogo di installazione del DSN.

    • Fare clic su Opzioni HTTP. Nella finestra di dialogo visualizzata incollare il valore per percorso HTTP copiato dall'area di lavoro di Databricks. Fare clic su OK.
    • Fare clic su Opzioni SSL. Nella finestra di dialogo visualizzata selezionare la casella di controllo Abilita SSL. Fare clic su OK.
    • Fare clic su Test per testare la connessione ad Azure Databricks. Fare clic su OK per salvare la configurazione.
    • Nella finestra di dialogo Amministratore origine dati ODBC, fare clic su OK.

Ora il tuo DSN è stato configurato. Nelle sezioni successive si usa questo DSN per connettersi ad Azure Databricks da Python o R.

Connettersi da R

Nota

Questa sezione fornisce informazioni su come integrare un client R Studio in esecuzione sul desktop con Azure Databricks. Per istruzioni su come usare R Studio nel cluster Azure Databricks stesso, vedere R Studio in Azure Databricks.

In questa sezione si usa un IDE del linguaggio R per fare riferimento ai dati disponibili in Azure Databricks. Prima di iniziare, è necessario che nel computer sia installato quanto segue.

  • IDE per il linguaggio R. Questo articolo usa RStudio per Desktop. È possibile installarlo da R Studio scaricare.
  • Se usi RStudio Desktop come IDE, installa anche Microsoft R Client da https://aka.ms/rclient/.

Aprire RStudio e seguire questa procedura:

  • Fare riferimento al pacchetto RODBC. In questo modo è possibile connettersi ad Azure Databricks usando il DSN creato in precedenza.
  • Stabilire una connessione usando il DSN.
  • Eseguire una query SQL sui dati in Azure Databricks. Nel frammento di codice seguente radio_sample_data è una tabella già esistente in Azure Databricks.
  • Eseguire alcune operazioni sulla query per verificare l'output.

Il frammento di codice seguente esegue queste attività:

# 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)

Connettersi da Python

In questa sezione si usa un IDE Python (ad esempio IDLE) per fare riferimento ai dati disponibili in Azure Databricks. Prima di iniziare, completare i prerequisiti seguenti:

  • Installare Python da qui. L'installazione di Python da questo collegamento installa anche IDLE.

  • Da un prompt dei comandi nel computer installare il pacchetto pyodbc. Eseguire il comando seguente:

    pip install pyodbc
    

Aprire IDLE ed eseguire la procedura seguente:

  • Importare il pacchetto pyodbc. In questo modo è possibile connettersi ad Azure Databricks usando il DSN creato in precedenza.
  • Stabilire una connessione usando il DSN creato in precedenza.
  • Esegui una query SQL usando la connessione creata. Nel frammento di codice seguente radio_sample_data è una tabella già esistente in Azure Databricks.
  • Eseguire operazioni sulla query per verificare l'output.

Il frammento di codice seguente esegue queste attività:

# 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)

Passaggi successivi