Explorer les résultats de la requête dans les notebooks

Vous pouvez explorer les résultats de requêtes à l'aide de cellules SQL ou de cellules de code dans les notebooks BigQuery Colab Enterprise.

Dans ce tutoriel, vous allez interroger les données d'un ensemble de données public BigQuery et explorer les résultats de la requête dans un notebook.

Objectifs

  • Créer et exécuter une requête dans BigQuery
  • Explorer les résultats de la requête dans un notebook à l'aide de cellules SQL et de cellules de code

Coûts

Ce tutoriel utilise un ensemble de données disponible via le programme d'ensembles de données publicsGoogle Cloud . Google prend en charge le stockage de ces ensembles de données et fournit un accès public aux données. Des frais vous sont facturés pour les requêtes que vous effectuez sur les données. Pour en savoir plus, consultez la page décrivant les tarifs de BigQuery.

Avant de commencer

  1. Dans la console Google Cloud , sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud .

    Rôles requis pour sélectionner ou créer un projet

    • Sélectionnez un projet : la sélection d'un projet ne nécessite pas de rôle IAM spécifique. Vous pouvez sélectionner n'importe quel projet pour lequel un rôle vous a été attribué.
    • Créer un projet : pour créer un projet, vous devez disposer du rôle Créateur de projet (roles/resourcemanager.projectCreator), qui contient l'autorisation resourcemanager.projects.create. Découvrez comment attribuer des rôles.

    Accéder au sélecteur de projet

  2. Vérifiez que la facturation est activée pour votre projet Google Cloud .

  3. Activez l'API BigQuery.

    Rôles requis pour activer les API

    Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin), qui contient l'autorisation serviceusage.services.enable. Découvrez comment attribuer des rôles.

    Activer l'API

    BigQuery est automatiquement activé dans les nouveaux projets.

Définir la région par défaut des composants de code

Tous les nouveaux composants de code de votre projet Google Cloud utilisent une région par défaut. Une fois le composant créé, vous ne pouvez plus modifier sa région.

Pour définir la région par défaut des nouveaux composants de code :

  1. Accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le volet de gauche, cliquez sur Fichiers pour ouvrir l'explorateur de fichiers :

    Cliquez sur **Fichiers** pour ouvrir l'explorateur de fichiers.

  3. À côté du nom du projet, cliquez sur Afficher les actions du panneau de fichiers > Changer de région de code.

  4. Sélectionnez la région de code que vous souhaitez utiliser par défaut.

  5. Cliquez sur Enregistrer.

Pour obtenir la liste des régions compatibles, consultez Emplacements BigQuery Studio.

Autorisations requises

Pour créer et exécuter des notebooks, vous avez besoin des rôles IAM (Identity and Access Management) suivants :

Ouvrir les résultats de la requête dans un notebook

Vous pouvez exécuter une requête SQL, puis utiliser un notebook pour explorer les données. Cette approche est utile si vous souhaitez modifier les données dans BigQuery avant de les exploiter, ou si vous n'avez besoin que d'un sous-ensemble des champs de la table.

  1. Dans la console Google Cloud , accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le volet de gauche, cliquez sur Explorateur.

  3. Accédez au projet bigquery-public-data, cliquez sur Développer/réduire le nœud pour le développer, puis cliquez sur Ensembles de données. Un nouvel onglet s'ouvre dans le volet "Détails" et affiche la liste de tous les ensembles de données du projet.

  4. Dans la zone Filtre , sélectionnez ID de l'ensemble de données et saisissez ml_datasets.

    Champ "Filtrer" sur la page "Ensembles de données"

  5. Sur la page Ensembles de données, cliquez sur ml_datasets > penguins.

  6. Cliquez sur Requête.

  7. Ajoutez un astérisque (*) pour sélectionner les champs pour la requête générée, de sorte qu'elle se présente comme dans l'exemple suivant :

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
  8. Cliquez sur Exécuter.

  9. Dans la section Résultats de la requête, cliquez sur Ouvrir dans, puis sur Notebook.

Préparer le notebook en vue de son utilisation

Préparez le notebook pour l'utiliser en vous connectant à un environnement d'exécution et en définissant les valeurs par défaut de l'application.

  1. Dans l'en-tête du notebook, cliquez sur Connecter pour vous connecter à l'environnement d'exécution par défaut.

  2. Dans le bloc de code Configuration, cliquez sur Exécuter la cellule.

Explorer les données

  1. Cliquez sur Options d'insertion de cellule de code> Ajouter une cellule SQL.

    L'option "Ajouter une cellule SQL" du menu "Insérer une cellule de code"

  2. Saisissez la requête suivante dans la cellule SQL :

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
    
  3. Cliquez sur Exécuter la cellule.

    Les résultats de la requête s'affichent dans un DataFrame BigQuery.

  4. Vous pouvez également charger les résultats de la requête dans un DataFrame BigQuery à l'aide du job de requête que vous avez exécuté précédemment dans l'éditeur de requêtes. Pour ce faire :

    1. Accédez à la section Ensemble de résultats chargé à partir d'un job BigQuery en tant que DataFrame.

    2. Dans le bloc de code, cliquez sur Exécuter la cellule.

      Les résultats de la requête s'affichent dans un DataFrame BigQuery.

  5. Pour obtenir des métriques descriptives pour les données, procédez comme suit :

    1. Accédez à la section Afficher les statistiques descriptives à l'aide de describe().

    2. Dans le bloc de code, cliquez sur Exécuter la cellule.

      Les résultats s'affichent dans un DataFrame BigQuery.

  6. Facultatif : Utilisez d'autres fonctions ou packages Python pour explorer et analyser les données.

L'exemple de code suivant montre comment utiliser : bigframes.pandas pour analyser des données et bigframes.ml pour créer un modèle de régression linéaire à partir de données penguins dans un DataFrame BigQuery :

import bigframes.pandas as bpd

# Load data from BigQuery
query_or_table = "bigquery-public-data.ml_datasets.penguins"
bq_df = bpd.read_gbq(query_or_table)

# Inspect one of the columns (or series) of the DataFrame:
bq_df["body_mass_g"]

# Compute the mean of this series:
average_body_mass = bq_df["body_mass_g"].mean()
print(f"average_body_mass: {average_body_mass}")

# Find the heaviest species using the groupby operation to calculate the
# mean body_mass_g:
(
    bq_df["body_mass_g"]
    .groupby(by=bq_df["species"])
    .mean()
    .sort_values(ascending=False)
    .head(10)
)

# Create the Linear Regression model
from bigframes.ml.linear_model import LinearRegression

# Filter down to the data we want to analyze
adelie_data = bq_df[bq_df.species == "Adelie Penguin (Pygoscelis adeliae)"]

# Drop the columns we don't care about
adelie_data = adelie_data.drop(columns=["species"])

# Drop rows with nulls to get our training data
training_data = adelie_data.dropna()

# Pick feature columns and label column
X = training_data[
    [
        "island",
        "culmen_length_mm",
        "culmen_depth_mm",
        "flipper_length_mm",
        "sex",
    ]
]
y = training_data[["body_mass_g"]]

model = LinearRegression(fit_intercept=False)
model.fit(X, y)
model.score(X, y)

Effectuer un nettoyage

Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.

Le moyen le plus simple d'empêcher la facturation est de supprimer le projet Google Cloud que vous avez créé pour ce tutoriel.

  1. Dans la console Google Cloud , accédez à la page Gérer les ressources.

    Accéder à la page "Gérer les ressources"

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Étapes suivantes