Freigeben über


Databricks Connect für R

Hinweis

In diesem Artikel wird die Integration von sparklyr mit Databricks Connect für Databricks Runtime 13.0 und höher beschrieben. Diese Integration wird weder von Databricks bereitgestellt noch direkt von Databricks unterstützt.

Falls Sie Fragen haben, wenden Sie sich an die Posit-Community.

Um Probleme zu melden, navigieren Sie zum Abschnitt Probleme des sparklyr-Repositorys auf GitHub.

Weitere Informationen finden Sie in der Dokumentation zu sparklyr unterDatabricks Connect v2.

In diesem Artikel werden die ersten Schritte mit Databricks Connect unter Verwendung von R, sparklyr und RStudio Desktop veranschaulicht.

Mit Databricks Connect können Sie beliebte IDEs wie RStudio Desktop, Notebookserver und andere benutzerdefinierte Anwendungen mit Azure Databricks-Clustern verbinden. Weitere Informationen finden Sie unter Was ist Databricks Connect?.

Lernprogramm

In diesem Tutorial werden RStudio Desktop und Python 3.10 verwendet. Wenn sie noch nicht installiert sind, installieren Sie R und RStudio Desktop sowie Python 3.10.

Weitere Informationen zu diesem Tutorial finden Sie im Abschnitt „Databricks Connect“ unter Spark Connect und Databricks Connect v2 auf der sparklyr-Website.

Anforderungen

Um dieses Tutorial abzuschließen, müssen Sie die folgenden Anforderungen erfüllen:

  • Ihr Azure Databricks-Zielarbeitsbereich und -Zielcluster müssen die Anforderungen für die Clusterkonfiguration für Databricks Connect erfüllen.
  • Sie müssen ihre Cluster-ID verfügbar haben. Um Ihre Cluster-ID abzurufen, wählen Sie in Ihrem Arbeitsbereich auf der Randleiste Compute und dann den Namen Ihres Clusters aus. Kopieren Sie in der Adressleiste Ihres Webbrowsers die Zeichenfolge zwischen clusters und configuration in der URL.

Schritt 1: Erstellen eines persönlichen Zugriffstokens

Hinweis

Für die Authentifizierung mit Databricks Connect für R werden derzeit nur persönliche Azure Databricks-Zugriffstoken unterstützt.

In diesem Tutorial werden die Authentifizierung mit persönlichem Zugriffstoken von Azure Databricks für die Authentifizierung bei Ihrem Azure Databricks-Arbeitsbereich verwendet.

Wenn Sie bereits über ein persönliches Azure Databricks-Zugriffstoken verfügen, fahren Sie direkt mit zu Schritt 2 fort. Wenn Sie nicht sicher sind, ob Sie bereits über ein persönliches Azure Databricks-Zugriffstoken verfügen, können Sie diesen Schritt ausführen, ohne dass andere persönliche Azure Databricks-Zugriffstoken in Ihrem Benutzerkonto betroffen sind.

So erstellen Sie ein persönliches Zugriffstoken

  1. Wählen Sie in Ihrem Azure Databricks-Arbeitsbereich in der oberen Leiste Ihren Azure Databricks-Benutzernamen und dann im Dropdownmenü die Option Einstellungen aus.
  2. Klicken Sie auf Entwickler.
  3. Klicken Sie neben Zugriffstoken auf Verwalten.
  4. Klicken Sie auf Neues Token generieren.
  5. (Optional) Geben Sie einen Kommentar ein, durch den Sie dieses Token in Zukunft identifizieren können, und ändern Sie die standardmäßige Lebensdauer des Tokens von 90 Tagen. Wenn Sie ein Token ohne Gültigkeitsdauer erstellen möchten (nicht empfohlen), lassen Sie das Feld Lebensdauer (Tage) leer.
  6. Klicken Sie auf Generate (Generieren) .
  7. Kopieren Sie das angezeigte Token an einen sicheren Speicherort, und klicken Sie auf Fertig.

Hinweis

Achten Sie darauf, den kopierten Token an einem sicheren Ort zu speichern. Geben Sie das kopierte Token nicht an andere Personen weiter. Wenn Sie das kopierte Token verlieren, können Sie das gleiche Token nicht erneut generieren. Stattdessen müssen Sie erneut das Verfahren zum Erstellen eines neuen Tokens durchlaufen. Wenn Sie das kopierte Token verlieren oder glauben, dass das Token kompromittiert wurde, empfiehlt Databricks dringend, dass Sie das Token sofort aus Ihrem Arbeitsbereich löschen. Klicken Sie hierzu auf der Seite Zugriffstoken auf das Papierkorbsymbol (Widerrufen) neben dem Token.

Wenn Sie in Ihrem Arbeitsbereich keine Token erstellen oder verwenden können, liegt dies möglicherweise daran, dass Ihr Arbeitsbereichsadministrator Token deaktiviert hat oder Ihnen keine Berechtigung zum Erstellen oder Verwenden von Token erteilt hat. Wenden Sie sich an Ihren Arbeitsbereichsadministrator oder lesen Sie die folgenden Themen:

Schritt 2: Erstellen des Projekts

  1. Starten Sie RStudio Desktop.
  2. Klicken Sie im Hauptmenü auf Datei > Neues Projekt.
  3. Wählen Sie Neues Verzeichnis aus.
  4. Wählen Sie auf Neues Projekt aus.
  5. Geben Sie für Verzeichnisname den Verzeichnisnamen des neuen Projekts und unter Projekt als Unterverzeichnis erstellen von den Speicherort ein, an dem dieses neue Projektverzeichnis erstellt werden soll.
  6. Wählen Sie Für dieses Projekt renv verwenden aus. Wenn Sie aufgefordert werden, eine aktualisierte Version des Pakets renv zu installieren, wählen Sie Ja aus.
  7. Klicken Sie auf Projekt erstellen.

Erstellen des RStudio Desktop-Projekts

Schritt 3: Hinzufügen des Databricks Connect-Pakets und anderer Abhängigkeiten

  1. Wählen Sie im Hauptmenü von RStudio Desktop Extras > Pakete installieren aus.

  2. Behalten Sie für Installieren von die Einstellung Repository (CRAN) bei.

  3. Geben Sie unter Pakete die folgende Paketliste ein. Dabei handelt es sich um die Voraussetzungen für das Databricks Connect-Paket und dieses Tutorial:

    sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
    
  4. Behalten Sie für In Bibliothek installieren Ihre virtuelle R-Umgebung bei.

  5. Stellen Sie sicher, dass Abhängigkeiten installieren aktiviert ist.

  6. Klicken Sie auf Installieren.

Installation der Abhängigkeiten des Databricks Connect-Pakets

  1. Wenn Sie in der Konsolenansicht (Ansicht > Fokus auf Konsole verschieben) aufgefordert werden, mit der Installation fortzufahren, geben Sie Y ein. Die Pakete sparklyr und pysparklyr und ihre Abhängigkeiten werden in Ihrer virtuellen R-Umgebung installiert.

  2. Verwenden Sie im Konsolenbereich reticulate, um Python zu installieren, indem Sie den folgenden Befehl ausführen. (Für Databricks Connect für R müssen zunächst reticulate und Python installiert werden.) Ersetzen Sie im folgenden Befehl 3.10 durch die Haupt- und Nebenversion der Python-Version, die in Ihrem Azure Databricks-Cluster installiert ist. Informationen zur Haupt- und Nebenversion finden Sie im Abschnitt „Systemumgebung“ der Versionshinweise für die Databricks Runtime-Version Ihres Clusters unter Versionshinweise zu Databricks Runtime-Versionen und -Kompatibilität.

    reticulate::install_python(version = "3.10")
    
  3. Installieren Sie im Konsolenbereich das Databricks Connect-Paket, indem Sie den folgenden Befehl ausführen. Ersetzen Sie im folgenden Befehl 13.3 durch die Databricks Runtime-Version, die in Ihrem Azure Databricks-Cluster installiert ist. Informationen zu dieser Version finden Sie auf der Detailseite Ihres Clusters im Azure Databricks-Arbeitsbereich auf der Registerkarte Konfiguration im Feld Databricks Runtime-Version.

    pysparklyr::install_databricks(version = "13.3")
    

    Wenn Sie die Databricks Runtime-Version für Ihren Cluster nicht kennen oder sie nicht nachschlagen möchten, können Sie stattdessen den folgenden Befehl ausführen. pysparklyr fragt den Cluster ab, um die zu verwendende Databricks Runtime-Version zu ermitteln:

    pysparklyr::install_databricks(cluster_id = "<cluster-id>")
    

    Wenn Sie Ihr Projekt später mit einem anderen Cluster verbinden möchten, der dieselbe Databricks Runtime-Version aufweist wie die, die Sie gerade angegeben haben, verwendet pysparklyr dieselbe Python-Umgebung. Wenn der neue Cluster über eine andere Databricks Runtime-Version verfügt, sollten Sie den Befehl pysparklyr::install_databricks erneut mit der neuen Databricks Runtime-Version oder Cluster-ID ausführen.

Schritt 4: Festlegen von Umgebungsvariablen für Arbeitsbereich-URL, Zugriffstoken und Cluster-ID

Databricks rät davon ab, vertrauliche oder veränderliche Werte wie die Azure Databricks-Arbeitsbereichs-URL, persönliche Azure Databricks-Zugriffstoken oder die Azure Databricks-Cluster-ID in Ihre R-Skripts hartzucodieren. Speichern Sie diese Werte stattdessen separat, z. B. in lokalen Umgebungsvariablen. In diesem Tutorial wird die integrierte Unterstützung von RStudio Desktop zum Speichern von Umgebungsvariablen in einer .Renviron-Datei verwendet.

  1. Erstellen Sie eine .Renviron-Datei zum Speichern der Umgebungsvariablen (sofern diese Datei noch nicht vorhanden ist), und öffnen Sie dann diese Datei zur Bearbeitung. Führen Sie an der RStudio Desktop-Konsole den folgenden Befehl aus:

    usethis::edit_r_environ()
    
  2. Geben Sie in der angezeigten .Renviron-Datei (Ansicht > Fokus auf Quelle verschieben) den folgenden Inhalt ein. Ersetzen Sie in diesem Inhalt die folgenden Platzhalter:

    • Ersetzen Sie <workspace-url> durch Ihre arbeitsbereichsspezifische URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net.
    • Ersetzen Sie <personal-access-token> durch Ihr persönliches Azure Databricks-Zugriffstoken aus Schritt 1.
    • Ersetzen Sie <cluster-id> durch die Cluster-ID aus den Voraussetzungen dieses Tutorials.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
    
  3. Speichern Sie die Datei .Renviron.

  4. Laden Sie die Umgebungsvariablen in R, indem Sie im Hauptmenü Sitzung > R neu starten auswählen.

Festlegen der Umgebungsvariablen für Databricks Connect

Schritt 5: Hinzufügen von Code

  1. Wählen Sie im Hauptmenü von RStudio Desktop Datei > Neue Datei > R-Skript aus.

  2. Geben Sie den folgenden Code in die Datei ein, und speichern Sie sie (Datei > Speichern) unter 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)
    

Schritt 6: Ausführen des Codes

  1. Wählen Sie in RStudio Desktop auf der Symbolleiste für die Datei demo.R die Option Quelle aus.

    Ausführen des RStudio Desktop-Projekts

  2. In der Konsole werden die ersten fünf Zeilen der Tabelle trips angezeigt.

  3. In der Ansicht Verbindungen (Ansicht > Verbindungen anzeigen) können Sie die verfügbaren Kataloge, Schemas, Tabellen und Sichten erkunden.

    Die Ansicht „Verbindungen“ für das Projekt

Schritt 7: Debuggen des Codes

  1. Wählen Sie in der Datei demo.R den Bundsteg neben print(trips, n = 5) aus, um einen Breakpoint festzulegen.
  2. Wählen Sie auf der Symbolleiste für die Datei demo.R die Option Quelle aus.
  3. Wenn der Code am Breakpoint angehalten wird, können Sie die Variable in der Ansicht Umgebung (Ansicht > Umgebung anzeigen) überprüfen.
  4. Wählen Sie im Hauptmenü Debuggen > Fortsetzen aus.
  5. In der Konsole werden die ersten fünf Zeilen der Tabelle trips angezeigt.

Debuggen des RStudio Desktop-Projekts