Se connecter à Azure Databricks à partir de Python ou de R

Dans cet article, vous allez apprendre à utiliser le pilote ODBC Databricks pour connecter Azure Databricks avec le langage R ou Python. Une fois que vous avez établi la connexion, vous pouvez accéder aux données dans Azure Databricks à partir des clients Python ou R. Vous pouvez également utiliser les clients pour analyser les données de façon plus précise.

Prérequis

  • Vous devez disposer d’un espace de travail Azure Databricks, d’un cluster Spark et d’exemples de données associés à votre cluster. Si vous ne disposez pas déjà de ces prérequis, suivez le guide de démarrage rapide dans Démarrage.

  • Téléchargez le pilote ODBC Databricks à partir de la page de téléchargement du pilote Databricks. Installez la version 64 bits du pilote.

  • Configurez un jeton d’accès personnel dans Databricks. Pour obtenir des instructions, consultez Generate token (Générer un jeton).

Configurer un nom de source de données

Un nom de source de données contient les informations relatives à une source de données spécifique. Un pilote ODBC a besoin de ce nom de source de données pour se connecter à une source de données. Dans cette section, vous configurez un nom de source de données qui peut être utilisé avec le pilote ODBC Databricks pour se connecter à Azure Databricks à partir de clients comme Python ou R.

  1. Dans l’espace de travail Azure Databricks, accédez au cluster Databricks.

    Open Databricks cluster

  2. Dans l’onglet Configuration, cliquez sur l’onglet JDBC/ODBC (JDBC/ODBC) et copiez les valeurs de Server Hostname (Nom d’hôte du serveur) et HTTP Path (Chemin d’accès HTTP). Vous avez besoin de ces valeurs pour effectuer les étapes de cet article.

    Get Databricks configuration

  3. Sur votre ordinateur, démarrez l’application Sources de données ODBC 64 bits.

    Launch ODBC Data Sources app

  4. Dans l’onglet Nom DSN de l’utilisateur, cliquez sur Ajouter. Dans la boîte de dialogue Créer une nouvelle source de données, sélectionnez le Pilote ODBC Spark Simba, puis cliquez sur Terminer.

    Add ODBC data source

  5. Dans la boîte de dialogue Simba Spark ODBC Driver (Pilote ODBC Spark Simba), fournissez les valeurs suivantes :

    Configure DSN

    Le tableau suivant fournit des informations sur les valeurs à spécifier dans la boîte de dialogue.

    Champ Valeur
    Nom de source de données Indiquez un nom pour la source de données.
    Host(s) (Hôte(s)) Indiquez la valeur que vous avez copiée à partir de l’espace de travail Databricks pour Server hostname (Nom d’hôte du serveur).
    Port Entrez 443.
    Authentification>Mécanisme Sélectionnez Nom d’utilisateur et mot de passe.
    Nom d'utilisateur Entrez un jeton.
    Mot de passe Entrez la valeur de jeton que vous avez copiée à partir de l’espace de travail Databricks.

    Effectuez les étapes supplémentaires suivantes dans la boîte de dialogue de configuration du nom de source de données.

    • Cliquez sur HTTP Options (Options HHTP). Dans la boîte de dialogue qui s’ouvre, collez la valeur de HTTP Path (Chemin d’accès HTTP) que vous avez copiée à partir de l’espace de travail Databricks. Cliquez sur OK.
    • Cliquez sur SSL Options (Options SSL). Dans la boîte de dialogue qui s’ouvre, cochez la case Activer SSL. Cliquez sur OK.
    • Cliquez sur Tester pour tester la connexion à Azure Databricks. Cliquez sur OK pour enregistrer la configuration.
    • Dans la boîte de dialogue Administrateur de sources de données ODBC, cliquez sur OK.

Vous avez maintenant configuré votre nom de source de données. Dans les sections suivantes, vous utilisez ce nom de source de données pour vous connecter à Azure Databricks à partir de Python ou de R.

Se connecter à partir de R

Notes

Cette section fournit des informations sur la façon d’intégrer un client R Studio en cours d’exécution sur votre bureau avec Azure Databricks. Pour obtenir des instructions sur l’utilisation de R Studio au niveau du cluster Azure Databricks lui-même, consultez R Studio on Azure Databricks.

Dans cette section, vous utilisez un environnement de développement intégré de langage R pour référencer des données dans Azure Databricks. Avant de commencer, vous devez avoir les composants suivants installés sur l’ordinateur.

  • Un environnement de développement intégré pour le langage R. Cet article utilise RStudio pour le Bureau. Vous pouvez l’installer à partir du téléchargement RStudio.
  • Si vous utilisez RStudio pour le Bureau comme environnement de développement intégré, installez également Microsoft R Client depuis https://aka.ms/rclient/.

Ouvrez RStudio et procédez comme suit :

  • Référencez le package RODBC. Cela vous permet de vous connecter à Azure Databricks à l’aide du nom de source de données que vous avez créé précédemment.
  • Établissez une connexion à l’aide du nom de source de données.
  • Exécutez une requête SQL sur les données dans Azure Databricks. Dans l’extrait de code suivant, radio_sample_data est un tableau qui existe déjà dans Azure Databricks.
  • Effectuez certaines opérations sur la requête pour vérifier la sortie.

L’extrait de code suivant effectue ces tâches :

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

Se connecter à partir de Python

Dans cette section, vous utilisez un environnement de développement intégré Python (comme IDLE) pour référencer des données disponibles dans Azure Databricks. Avant de commencer, respectez les conditions préalables suivantes :

  • Installez Python à partir d’ici. L’installation de Python à partir de ce lien installe également IDLE.

  • À partir d’une invite de commandes sur l’ordinateur, installez le package pyodbc. Exécutez la commande suivante :

    pip install pyodbc
    

Ouvrez IDLE et procédez comme suit :

  • Importez le package pyodbc. Cela vous permet de vous connecter à Azure Databricks à l’aide du nom de source de données que vous avez créé précédemment.
  • Établissez une connexion à l’aide du nom de source de données que vous avez créé précédemment.
  • Exécutez une requête SQL à l’aide de la connexion que vous avez créée. Dans l’extrait de code suivant, radio_sample_data est un tableau qui existe déjà dans Azure Databricks.
  • Effectuez des opérations sur la requête pour vérifier la sortie.

L’extrait de code suivant effectue ces tâches :

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

Étapes suivantes

  • Pour en savoir plus sur les sources à partir desquelles vous pouvez importer des données dans Azure Databricks, consultez Spark Data Sources (Sources de données Spark)