Utiliser le langage R avec BigQuery

Sur cette page, nous vous expliquons comment charger des données à partir de BigQuery dans un DataFrame R à l'aide d'un package R bigrquery.

Avant de commencer

Avant de commencer, créez une instance AI Platform Notebooks pour R.

Ouvrir un notebook JupyterLab

Pour ouvrir une instance AI Platform Notebooks, procédez comme suit :

  1. Accédez à la page AI Platform Notebooks de la console Google Cloud Platform.

    Accéder à la page "AI Platform Notebooks"

  2. Sélectionnez Open JupyterLab (Ouvrir JupyterLab) pour l'instance R que vous souhaitez ouvrir.

    Ouvrir JupyterLab

  3. Sélectionnez File -> New -> Notebook (Fichier -> Nouveau -> Notebook), puis sélectionnez le noyau R.

    Ajouter un notebook R

Installer et charger des packages R

Procédez comme suit pour installer et charger les packages R dont vous avez besoin.

  1. Dans la première cellule de code du notebook, saisissez la commande suivante :

    # Install the packages
    install.packages("tidyverse")
    install.packages("httpuv")
    install.packages("gargle")
    install.packages("bigrquery")
    
  2. Cliquez sur le bouton "Exécuter" pour exécuter la commande. R installe les packages.

    Bouton "Exécuter"

  3. Pour ajouter une cellule de code au notebook, cliquez sur le bouton "+" de ce dernier.

    Bouton "+"

  4. Dans la nouvelle cellule de code, ajoutez le code suivant et exécutez-le.

    # Load the packages
    library(tidyverse)
    library(httpuv)
    library(gargle)
    library(bigrquery)
    

Authentifier votre requête BigQuery

Utilisez la procédure décrite ci-dessous pour authentifier votre requête BigQuery et charger des données dans un DataFrame R. Pour authentifier votre requête BigQuery, employez l'une des ces deux méthodes : utilisez les identifiants de votre compte Google Cloud Platform ou une clé de compte de service. Découvrez les différences existant entre un compte utilisateur GCP et un compte de service.

Utiliser des identifiants GCP

Pour authentifier votre accès BigQuery à l'aide de vos identifiants GCP, procédez comme suit :

  1. Dans une nouvelle cellule de code, saisissez le code qui suit.

    # Provide authentication
    bq_auth(use_oob = TRUE)
    
  2. Exécutez le code pour authentifier votre accès à BigQuery.

Utiliser une clé de compte de service

Créer une clé de compte de service

Pour créer une clé de compte de service BigQuery, procédez comme suit :

  1. Accédez à la page Identifiants des API et des services de la console Google Cloud Platform.

    Accéder à la page "Identifiants des API et des services".

  2. Sélectionnez Create credentials (Créer des identifiants) > Service account key (Clé de compte de service).

    Créer un identifiant

  3. Dans le menu déroulant Service account (Compte de service), sélectionnez un identifiant existant disposant d'un accès BigQuery, ou sélectionnez New service account (Nouveau compte de service) pour en créer un.

    Pour créer un compte de service, saisissez un Service account name (Nom du compte de service). Dans le menu déroulant Role (Rôle), sélectionnez BigQuery, puis sélectionnez le rôle que vous souhaitez attribuer, par exemple "BigQuery Admin" (Administrateur BigQuery).

    Créer un compte de service

  4. Sélectionnez "JSON" comme "Key type" (Type de clé).

    Sélectionner JSON

  5. Cliquez sur Create (Créer). Le navigateur télécharge un fichier JSON contenant la clé du compte de service. Ce fichier permet d'accéder à vos ressources. Conservez-le en lieu sûr.

  6. Cliquez sur Fermer pour fermer le message Clé privée enregistrée sur votre ordinateur.

Authentifier la clé de votre compte de service BigQuery

Pour authentifier votre accès BigQuery via la clé de votre compte de service, procédez comme suit :

  1. Dans votre notebook JupyterLab, cliquez sur le bouton Upload Files (Télécharger des fichiers).

    Bouton "Importer des fichiers"

  2. Accédez au fichier JSON que vous avez créé, sélectionnez-le, puis cliquez sur Open (Ouvrir) pour l'importer.

  3. Dans une nouvelle cellule de code, saisissez le code qui suit. Remplacez path-name.json par le chemin d'accès au fichier JSON de la clé de compte de service de votre instance de notebook.

    Pour copier le chemin d'accès au fichier JSON, cliquez avec le bouton droit (Cmd + clic sur Mac) sur le nom du fichier dans l'explorateur de fichiers JupyterLab, puis sélectionnez Copy Path (Copier le chemin d'accès).

    # Provide authentication through the JSON service account key
    bq_auth(path="path-name.json")
    
  4. Exécutez le code pour authentifier votre accès à BigQuery.

Charger des données à partir de BigQuery

Procédez comme suit pour charger des données BigQuery dans un DataFrame à l'aide du package R bigrquery.

  1. Dans une nouvelle cellule de code, saisissez la commande qui suit. Remplacez project-id par l'ID de votre projet GCP.

    Pour obtenir votre ID de projet, cliquez sur la flèche du menu déroulant à côté du nom de votre projet dans la console Google Cloud Platform.

    # Store the project id
    projectid = "project-id"
    
    # Set your query
    sql <- "SELECT * FROM `bigquery-public-data.usa_names.usa_1910_current` LIMIT 10"
    
    # Run the query and store the data in a dataframe
    df <- query_exec(sql, projectid, use_legacy_sql = FALSE)
    
    # Print the query result
    df
    
  2. Exécutez la cellule pour afficher 10 lignes de données à partir de l'un des ensembles de données publics de BigQuery.

Étape suivante

Consultez la documentation sur bigrquery pour apprendre à utiliser les données BigQuery dans les notebooks R.

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

AI Platform Notebooks
Besoin d'aide ? Consultez notre page d'assistance.