Aller au contenu principal

Databricks Connect pour R

remarque

Cet article couvre l'intégration de sparklyr avec Databricks Connect pour Databricks Runtime 13.0 et versions ultérieures. Cette intégration n'est ni fournie par Databricks, ni directement prise en charge par Databricks.

Pour toute question, rendez-vous sur la Communauté Posit.

Pour signaler des problèmes, rendez-vous dans la section Problèmes du repository sparklyr sur GitHub.

Pour plus d’informations, consultez Databricks Connect v2 dans la documentation sparklyr.

Databricks Connect vous permet de connecter des IDEs populaires tels que RStudio Desktop, des serveurs Notebook et d'autres applications personnalisées aux clusters Databricks. See Databricks Connect.

remarque

Databricks Connect a une compatibilité limitée avec Apache Spark MLlib, car Spark MLlib utilise les RDD, tandis que Databricks Connect ne prend en charge que l’API DataFrame. Pour utiliser toutes les fonctions Spark MLlib de sparklyr, utilisez les Databricks Notebook ou la fonction db_repl du package brickster.

Cet article montre comment démarrer rapidement avec Databricks Connect pour R en utilisant sparklyr et RStudio Desktop.

Didacticiel

Dans le tutoriel suivant, vous créez un projet dans RStudio, installez et configurez Databricks Connect pour Databricks Runtime 13.3 LTS et versions ultérieures, et exécutez du code simple sur le compute de votre Databricks workspace depuis RStudio. Pour des informations supplémentaires sur ce tutoriel, consultez la section « Databricks Connect » de Spark Connect et Databricks Connect v2 sur le site web sparklyr.

Ce tutoriel utilise RStudio Desktop et Python 3.10. Si vous ne les avez pas déjà installés, installez R et RStudio Desktop et Python 3.10.

Exigences

Pour suivre ce didacticiel, vous devez satisfaire aux exigences suivantes :

  • Votre Databricks Workspace et cluster cible doivent répondre aux exigences de la configuration du compute pour Databricks Connect.
  • Vous devez avoir votre ID de cluster disponible. Pour obtenir votre ID de cluster, dans votre Workspace, cliquez sur Compute dans la barre latérale, puis sur le nom de votre cluster. Dans la barre d'adresse de votre navigateur web, copiez la chaîne de caractères entre clusters et configuration dans l'URL.

Étape 1 : Créez un jeton d'accès personnel

remarque

L'authentification Databricks Connect pour R ne prend actuellement en charge que les jetons d'accès personnels Databricks.

Ce didacticiel utilise l’ authentification par jeton d’accès personnel Databricks pour s’authentifier auprès de votre Workspace Databricks.

Si vous avez déjà un jeton d'accès personnel Databricks, passez à l'étape 2. Si vous ne savez pas si vous avez déjà un jeton d'accès personnel Databricks, vous pouvez suivre cette étape sans affecter les autres jetons d'accès personnels Databricks de votre compte d'utilisateur.

Pour créer un jeton d'accès personnel, suivez les étapes de Créer des jetons d'accès personnels pour les utilisateurs de Workspace.

Étape 2 : Créer le projet

  1. Start RStudio Desktop.
  2. Dans le menu principal, cliquez sur Fichier > Nouveau projet .
  3. Sélectionner Nouveau répertoire .
  4. Sélectionner Nouveau Projet .
  5. Pour Nom du répertoire et Créer le projet en tant que sous-répertoire de , saisissez le nom du nouveau répertoire du projet et l'emplacement de création de ce nouveau répertoire du projet.
  6. Sélectionnez Utiliser renv avec ce projet . Si vous êtes invité à installer une version mise à jour du package renv, cliquez sur Oui .
  7. Cliquez sur Créer un projet .

Créez le projet RStudio Desktop

Étape 3 : Ajouter le package Databricks Connect et d’autres dépendances

  1. Dans le menu principal de RStudio Desktop, cliquez sur Tools > Install Packages .

  2. Laissez Installer à partir de défini sur repository (CRAN) .

  3. Pour les **Packages**, saisissez la liste suivante de packages qui sont des prérequis pour le package Databricks Connect et ce tutoriel :

    sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
  4. Laissez Installer dans la bibliothèque défini sur votre environnement virtuel R.

  5. Assurez-vous que Installer les dépendances est sélectionné.

  6. Cliquez sur Installer .

Installer les dépendances du package Databricks Connect

  1. Lorsque vous êtes invité dans la vue Console ( Vue > Déplacer le focus vers la Console) à procéder à l'installation,Y saisissez. Les packages sparklyr et pysparklyr et leurs dépendances sont installés dans votre environnement virtuel R.

  2. Dans le volet Console , utilisez reticulate pour installer Python en exécutant la commande suivante. (Databricks Connect pour R nécessite l'installation préalable de reticulate et Python.) Dans la commande suivante, remplacez 3.10 par la version majeure et mineure de la version de Python qui est installée sur votre cluster Databricks. Pour trouver cette version majeure et mineure, consultez la section « Environnement système » des notes de publication pour la version de Databricks Runtime de votre cluster dans Versions et compatibilité des notes de publication de Databricks Runtime.

    reticulate::install_python(version = "3.10")
  3. Dans le volet Console , installez le package Databricks Connect en exécutant la commande suivante. Dans la commande suivante, remplacez 13.3 par la version de Databricks Runtime installée sur votre cluster Databricks. Pour trouver cette version, sur la page de détails de votre cluster dans votre Workspace Databricks, dans l'onglet **tab**, consultez la zone **Version de Databricks Runtime**.

    pysparklyr::install_databricks(version = "13.3")

    Si vous ne connaissez pas la version de Databricks Runtime de votre cluster ou si vous ne souhaitez pas la rechercher, vous pouvez exécuter la commande suivante à la place, et pysparklyr interrogera le cluster pour déterminer la version de Databricks Runtime correcte à utiliser :

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

    Si vous souhaitez que votre projet se connecte ultérieurement à un autre cluster doté de la même version de Databricks Runtime que celle que vous venez de spécifier, pysparklyr utilisera le même environnement Python. Si le nouveau cluster a une version différente de Databricks Runtime, vous devriez exécuter la commande pysparklyr::install_databricks à nouveau avec la nouvelle version de Databricks Runtime ou l’ID du cluster.

Étape 4 : Définir les variables d'environnement pour l'URL du workspace, le jeton d'accès et l'ID de cluster

Databricks ne vous recommande pas de coder en dur des valeurs sensibles ou modifiables telles que votre URL de workspace Databricks, votre jeton d'accès personnel Databricks ou votre ID de cluster Databricks dans vos scripts R. Au lieu de cela, stockez ces valeurs séparément, par exemple dans des variables d'environnement locales. Ce tutoriel utilise la prise en charge intégrée de RStudio Desktop pour le stockage des variables d’environnement dans un fichier .Renviron.

  1. Créez un fichier .Renviron pour stocker les variables d'environnement, si ce fichier n'existe pas déjà, puis ouvrez ce fichier pour le modifier : dans la Console RStudio Desktop, exécutez la commande suivante :

    usethis::edit_r_environ()
  2. Dans le fichier .Renviron qui apparaît ( Affichage > Déplacer le focus vers la source ), entrez le contenu suivant. Dans ce contenu, remplacez les espaces réservés suivants :

    • Remplacez <workspace-url> par votre URL de l'instance Workspace, par exemple https://dbc-a1b2345c-d6e7.cloud.databricks.com.
    • Remplacez <personal-access-token> par votre jeton d'accès personnel Databricks de l'étape 1.
    • Remplacez <cluster-id> par l'ID de votre cluster, conformément aux exigences de ce tutoriel.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
  3. Enregistrez le fichier .Renviron.

  4. Chargez les variables d'environnement dans R : dans le menu principal, cliquez sur **Session > Redémarrer R**.

Définissez les variables d&#39;environnement pour Databricks Connect.

Étape 5 : Ajoutez du code

  1. Dans le menu principal de RStudio Desktop, cliquez sur Fichier > Nouveau fichier > Script R .

  2. Saisissez le code suivant dans le fichier, puis enregistrez le fichier ( Fichier > Enregistrer ) sous le nom demo.R:

    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)

Étape 6 : Exécuter le code

  1. Sur le bureau RStudio, dans la barre d'outils du fichier demo.R, cliquez sur Source .

    Exécutez le projet RStudio Desktop

  2. Dans la Console , les cinq premières lignes de la table trips apparaissent.

  3. Dans la vue **Connexions** (**Affichage > Afficher les connexions**), vous pouvez explorer les catalogues, schémas, tables et vues disponibles.

    La vue Connexions pour le projet

Étape 7 : déboguer le code

  1. Dans le fichier demo.R, cliquez sur la gouttière à côté de print(trips, n = 5) pour définir un point d'arrêt.
  2. Dans la barre demo.R d’outils du fichier, cliquez sur **Source**.
  3. Lorsque le code s'arrête à un point d'arrêt, vous pouvez inspecter les variables dans la vue Environnement ( Afficher > Afficher l'environnement ).
  4. Dans le menu principal, cliquez sur **Débogage > Continuer**.
  5. Dans la Console , les cinq premières lignes de la table trips apparaissent.

Déboguer le projet RStudio Desktop