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


Vous pouvez explorer les résultats de requêtes BigQuery à l'aide de notebooks Colab Enterprise, au sein de BigQuery.

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

Coûts

Ce tutoriel utilise un ensemble de données disponible via le programme d'ensembles de données publics de Google 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Make sure that billing is enabled for your Google Cloud project.

  3. Enable the BigQuery API.

    Enable the API

    BigQuery est automatiquement activé dans les nouveaux projets.

Activer BigQuery Studio

Suivez les instructions de la page Activer BigQuery Studio pour la gestion des éléments pour enregistrer, partager et gérer des versions d'éléments de code tels que les notebooks.

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 champ Saisissez un terme à rechercher, saisissez bigquery-public-data.

    Si le projet ne s'affiche pas, saisissez bigquery dans le champ de recherche, puis cliquez sur Rechercher dans tous les projets pour faire correspondre la chaîne de recherche avec les projets existants.

  3. Sélectionnez bigquery-public-data > ml_datasets > penguins.

  4. Pour la table penguins (manchots), cliquez sur Afficher les actions, puis sur Requête.

  5. 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;
  6. Cliquez sur Exécuter.

  7. Dans le volet Résultats de requête, cliquez sur Explorer les données, puis sur Explorer avec le notebook Python.

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. Pour charger les données penguins dans un DataFrame BigQuery et afficher les résultats, cliquez sur Exécuter la cellule dans le bloc de code de la section Ensemble de résultats chargé à partir d'un job BigQuery en tant que DataFrame.
  2. Pour obtenir des métriques descriptives des données, cliquez sur Exécuter la cellule dans le bloc de code de la section Afficher les statistiques descriptives à l'aide de describe().
  3. 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 :

# 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 mais supprimez les ressources individuelles.

Le moyen le plus simple d'éviter la facturation consiste à supprimer le projet Google Cloud que vous avez créé pour ce tutoriel.

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Étapes suivantes