Essayer BigQuery DataFrames
BigQuery DataFrames apporte l'analyse Python et le machine learning (ML) évolutifs à BigQuery. Les calculs s'exécutent dans BigQuery avec un traitement côté serveur, ce qui vous permet d'analyser et de modéliser de grands ensembles de données sans être limité par la mémoire locale ou celle du notebook. Vous pouvez utiliser une syntaxe semblable à celle de pandas (bigframes.pandas) et de BigQuery ML (bigframes.bigquery) sans écrire de code SQL.
Utilisez ce guide de démarrage rapide pour effectuer les tâches d'analyse et de ML suivantes à l'aide de l' API BigQuery DataFrames dans un notebook BigQuery :
- Créez un DataFrame sur l'ensemble de données public
bigquery-public-data.ml_datasets.penguins. - Calculez la masse moyenne d'un pingouin.
- Nettoyez et préparez un sous-ensemble des données sur les pingouins pour l'entraînement.
- Entraînez un
modèle de régression linéaire
à l'aide de
bigframes.bigquery.ml.create_model. - Évaluez
le modèle à l'aide de
bigframes.bigquery.ml.evaluate.
Avant de commencer
- Connectez-vous à votre Google Cloud compte. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Vérifiez que la facturation est activée pour votre Google Cloud projet.
Vérifiez que l'API BigQuery est activée.
Si vous avez créé un nouveau projet, l'API BigQuery est automatiquement activée.
Autorisations requises
Pour créer et exécuter des notebooks, vous avez besoin des rôles IAM (Identity and Access Management) suivants :
- Utilisateur BigQuery (
roles/bigquery.user) - Utilisateur de l'environnement d'exécution de notebook (
roles/aiplatform.notebookRuntimeUser) - Créateur de code (
roles/dataform.codeCreator)
Créer un notebook
Suivez les instructions de la section Créer un notebook à partir de l'éditeur BigQuery pour créer un notebook.
Essayer BigQuery DataFrames
Essayez BigQuery DataFrames en procédant comme suit :
- Créez une nouvelle cellule de code dans le notebook.
Ajoutez le code suivant à la cellule de code :
import bigframes.pandas as bpd # Set BigQuery DataFrames options # Note: The project option is not required in all environments. # On BigQuery Studio, the project ID is automatically detected. bpd.options.bigquery.project = your_gcp_project_id # Use "partial" ordering mode to generate more efficient queries, but the # order of the rows in DataFrames may not be deterministic if you have not # explictly sorted it. Some operations that depend on the order, such as # head() will not function until you explictly order the DataFrame. Set the # ordering mode to "strict" (default) for more pandas compatibility. bpd.options.bigquery.ordering_mode = "partial" # Create a DataFrame from a BigQuery table query_or_table = "bigquery-public-data.ml_datasets.penguins" df = bpd.read_gbq(query_or_table) # Efficiently preview the results using the .peek() method. df.peek()Modifiez la ligne
bpd.options.bigquery.project = your_gcp_project_idpour spécifier l'ID de votre Google Cloud projet. Exemple :bpd.options.bigquery.project = "myProjectID".Exécutez la cellule de code.
Le code renvoie un objet
DataFramecontenant des données sur les pingouins.Créez une cellule de code dans le notebook et ajoutez le code suivant :
# Use the DataFrame just as you would a pandas DataFrame, but calculations # happen in the BigQuery query engine instead of the local system. average_body_mass = df["body_mass_g"].mean() print(f"average_body_mass: {average_body_mass}")Exécutez la cellule de code.
Le code calcule la masse moyenne des pingouins et l'affiche dans la Google Cloud console.
Créez une cellule de code dans le notebook et ajoutez le code suivant :
import bigframes.bigquery as bbq from google.cloud import bigquery # Ensure a dataset exists to store the model client = bigquery.Client(project=bpd.options.bigquery.project) client.create_dataset("bq_quickstart", exists_ok=True) # Filter down to the Adelie Penguin species adelie_data = df[df.species == "Adelie Penguin (Pygoscelis adeliae)"] # Drop the columns that are not needed adelie_data = adelie_data.drop(columns=["species"]) # Drop rows with nulls to get the training data training_data = adelie_data.dropna() # Train a linear regression model model_name = f"{bpd.options.bigquery.project}.bq_quickstart.penguin_weight" model_metadata = bbq.ml.create_model( model_name, replace=True, options={"model_type": "LINEAR_REG"}, training_data=training_data.rename(columns={"body_mass_g": "label"}), ) # Evaluate the model evaluation = bbq.ml.evaluate(model_name) print(evaluation)Exécutez la cellule de code.
Le code entraîne le modèle de régression linéaire directement dans BigQuery et renvoie les métriques d'évaluation du modèle.
Libérer de l'espace
Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.
Pour supprimer le projet :
- Dans la Google Cloud console, accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez Arrêter pour supprimer le projet.
Étape suivante
- Continuez à en savoir plus sur BigQuery DataFrames.
- Découvrez comment visualiser des graphiques à l'aide de BigQuery DataFrames.
- Découvrez comment utiliser un notebook BigQuery DataFrames.