Databricks Connect per R
Nota
Questo articolo illustra sparklyr
l'integrazione con Databricks Connect per Databricks Runtime 13.0 e versioni superiori. Questa integrazione non è fornita né da Databricks né direttamente supportata da Databricks.
Per domande, visitare la Posit Community.
Per segnalare i problemi, andare alla sezione Segnalazioni del sparklyr
repository in GitHub.
Per altre informazioni, consultare Databricks Connect v2 nella sparklyr
documentazione.
Questo articolo illustra come iniziare rapidamente a usare Databricks Connect usando R, sparklyr
e RStudio Desktop.
- Per la versione Python di questo articolo, consultare Databricks Connect per Python.
- Per la versione Scala di questo articolo, consultare Databricks Connect per Scala.
Databricks Connect consente di connettere gli IDE più diffusi, come RStudio Desktop, server notebook e altre applicazioni personalizzate ai cluster Azure Databricks. Consultare Cos’è Databricks Connect?.
Esercitazione
Questa esercitazione usa RStudio Desktop e Python 3.10. Se non sono già installati, installare R e RStudio Desktop e Python 3.10.
Per informazioni supplementari su questa esercitazione, consultare la sezione "Databricks Connect" di Spark Connect e Databricks Connect v2 nel sparklyr
sito Web.
Requisiti
Per completare questa esercitazione, è necessario soddisfare i requisiti seguenti:
- L'area di lavoro e il cluster di Azure Databricks di destinazione devono soddisfare i requisiti per la configurazione del cluster per Databricks Connect.
- È necessario disporre dell'ID cluster disponibile. Per ottenere l'ID cluster, nell'area di lavoro fare clic su Compute sulla barra laterale e quindi sul nome del cluster. Nella barra degli indirizzi del Web browser copiare la stringa di caratteri tra
clusters
econfiguration
nell'URL.
Step 1: Creare un token di accesso personale
Nota
Databricks SDK per R supporta solo l'autenticazione del token di accesso personale di Azure Databricks.
Questa esercitazione usa l'autenticazione del token di accesso personale di Azure Databricks per l'autenticazione con l'area di lavoro di Azure Databricks.
Se si ha già un token di accesso personale di Azure Databricks, passare al Passo 2. Se non si è certi di avere già un token di accesso personale di Azure Databricks, è possibile seguire questo passaggio senza influire sugli altri token di accesso personali di Azure Databricks nell'account utente.
Per creare un token di accesso personale:
- Nell'area di lavoro di Azure Databricks, fare clic sul nome utente di Azure Databricks nella barra superiore, quindi selezionare Impostazioni nell'elenco a discesa.
- Fare clic su Sviluppatore.
- Accanto a Token di accesso fare clic su Gestisci.
- Fare clic su Generare nuovi token.
- (Facoltativo) Immettere un commento che consente di identificare questo token in futuro e modificare la durata predefinita del token di 90 giorni. Per creare un token senza durata (scelta non consigliata), lasciare vuota la casella Durata (giorni).
- Fare clic su Genera.
- Copiare il token visualizzato in un percorso sicuro e quindi fare clic su Fine.
Nota
Assicurarsi di salvare il token copiato in un percorso sicuro. Non condividere il token copiato con altri utenti. Se si perde il token copiato, non è possibile rigenerare lo stesso esatto token. È invece necessario ripetere questa procedura per creare un nuovo token. Se si perde il token copiato o si ritiene che il token sia stato compromesso, Databricks consiglia vivamente di eliminare immediatamente il token dall'area di lavoro facendo clic sull'icona del cestino (Revoca) accanto al token nella pagina Token di accesso.
Se non è possibile creare o usare un token di accesso personale nell'area di lavoro, questo potrebbe essere dovuto al fatto che l'amministratore dell'area di lavoro ha disabilitato i token o non ha concesso l'autorizzazione per creare o usare token. Consultare l'amministratore dell'area di lavoro o i seguenti argomenti:
Step 2: Creare il progetto
- Avviare RStudio Desktop.
- Dal menu principale, fare click su File > Nuovo progetto.
- Selezionare Nuova Directory.
- Selezionare Nuovo progetto.
- Per Nome della directory e Crea progetto come sottodirectory di , immettere il nome della nuova directory del progetto e dove creare questa nuova directory del progetto.
- Selezionare Usa renv con questo progetto. Se viene richiesto di installare una versione aggiornata del
renv
pacchetto, fare clic su Sì. - Fare clic su Crea progetto.
Step 3: Aggiungere il pacchetto Databricks Connect e altre dipendenze
Nel menu principale di RStudio Desktop fare clic su Strumenti > Installa pacchetti.
Lasciare Installa da impostato su Repository (CRAN).
Per Pacchetti immettere l'elenco seguente di pacchetti che sono prerequisiti per il pacchetto Databricks Connect e questa esercitazione:
sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
Lasciare Installa nella libreria impostato sul proprio ambiente virtuale R.
Assicurarsi che l'opzione Installa dipendenze sia selezionata.
Fare clic su Installa.
Quando viene chiesto, nel riquadro Console (Visualizza > Sposta stato attivo nella console) per procedere con l'installazione, immettere
Y
. I pacchettisparklyr
epysparklyr
le relative dipendenze sono installati nell'ambiente virtuale R.Nel riquadro Console usare
reticulate
per installare Python eseguendo il seguente comando. (Databricks Connect per R richiede che prima vengano installatireticulate
e Python.) Nel seguente comando sostituire3.10
con la versione principale e secondaria della versione di Python installata nel cluster Azure Databricks. Per trovare questa versione principale e secondaria, consultare la sezione "Ambiente di sistema" delle note sulla versione per la versione di Databricks Runtime del cluster in Versioni e compatibilità delle note sulla versione di Databricks Runtime.reticulate::install_python(version = "3.10")
Nel riquadro Console installare il pacchetto Databricks Connect eseguendo il comando seguente. Nel seguente comando sostituire
13.3
con la versione di Databricks Runtime installata nel cluster Azure Databricks. Per trovare questa versione, nella pagina dei dettagli del cluster nell'area di lavoro di Azure Databricks, nella scheda Configurazione consultare la casella Versione di Databricks Runtime.pysparklyr::install_databricks(version = "13.3")
Se non si conosce la versione di Databricks Runtime per il cluster o non si vuole cercarla, è invece possibile eseguire il comando seguente ed
pysparklyr
eseguire una query sul cluster per determinare la versione corretta di Databricks Runtime da usare:pysparklyr::install_databricks(cluster_id = "<cluster-id>")
Se si vuole che il progetto si connetta in un secondo momento a un cluster diverso con la stessa versione di Databricks Runtime rispetto a quella appena specificata,
pysparklyr
userà lo stesso ambiente Python. Se il nuovo cluster ha una versione diversa di Databricks Runtime, è necessario eseguire di nuovo il comandopysparklyr::install_databricks
con la nuova versione di Databricks Runtime o l'ID cluster.
Step 4: Impostare le variabili d’ambiente per l'URL dell'area di lavoro, il token di accesso e l'ID cluster
Databricks non consiglia di impostare come hardcoded valori sensibili o di modifica, ad esempio l'URL dell'area di lavoro di Azure Databricks, il token di accesso personale di Azure Databricks o l'ID cluster di Azure Databricks agli script R. Archiviare invece questi valori separatamente, ad esempio nelle variabili di ambiente locali. Questa esercitazione usa il supporto predefinito di RStudio Desktop per l'archiviazione delle variabili di ambiente in un .Renviron
file.
Se non esiste già, creare un file
.Renviron
per archiviare le variabili d’ambiente, quindi aprire il file per la modifica: nella Console di RStudio Desktop eseguire il seguente comando:usethis::edit_r_environ()
Nel file
.Renviron
che appare (Visualizza > Sposta Focus sulla Sorgente) immettere il contenuto seguente. Assicurarsi di sostituire i seguenti segnaposto nel codice:- Sostituire
<workspace-url>
con l'URL per area di lavoro, ad esempiohttps://adb-1234567890123456.7.azuredatabricks.net
. - Sostituire
<personal-access-token>
con il token di accesso personale di Azure Databricks dello Step 1. - Sostituire
<cluster-id>
con l'ID cluster in base ai requisiti di questa esercitazione.
DATABRICKS_HOST=<workspace-url> DATABRICKS_TOKEN=<personal-access-token> DATABRICKS_CLUSTER_ID=<cluster-id>
- Sostituire
Salvare il file
.Renviron
.Caricare le variabili d’ambiente in R: nel menu principale fare clic su Sessione > riavvio R.
Step 5: Aggiungere codice
Nel menu principale di RStudio Desktop fare clic su File > Nuovo file > R Script.
Immettere il seguente codice nel file e quindi salvare il file (File > Save) come
demo.R
:library(sparklyr) library(dplyr) library(dbplyr) sc <- sparklyr::spark_connect( master = Sys.getenv("DATABRICKS_HOST"), cluster_id = Sys.getenv("DATABRICKS_CLUSTER_ID"), token = Sys.getenv("DATABRICKS_TOKEN"), method = "databricks_connect", envname = "r-reticulate" ) trips <- dplyr::tbl( sc, dbplyr::in_catalog("samples", "nyctaxi", "trips") ) print(trips, n = 5)
Step 6: Eseguire il codice
Sulla barra degli strumenti
demo.R
del file di RStudio Desktop fare clic su Sorgente.Nella Console vengono visualizzate le prime cinque righe della
trips
tabella.Nella schermata Connessioni (Visualizza > Mostra connessioni) è possibile esplorare i cataloghi, gli schemi, le tabelle e le viste disponibili.
Step 7: Eseguire il debug del codice
- Nel file
demo.R
fare clic sulla barra accanto aprint(trips, n = 5)
per impostare un punto di interruzione. - Nella barra degli strumenti del file
demo.R
fare clic su Sorgente. - Quando il codice viene sospeso in esecuzione nel punto di interruzione, è possibile esaminare la variabile nella vista Ambiente (Visualizza > Mostra ambiente).
- Dal menu principale scegliere Debug > Continua.
- Nella Console vengono visualizzate le prime cinque righe della
trips
tabella.