Charger et interroger des données avec l'outil bq
Découvrez comment créer un ensemble de données, charger des exemples de données et interroger des tables à l'aide de l'outil de ligne de commande bq.
Pour obtenir des instructions détaillées sur cette tâche directement dans la console Google Cloud , cliquez sur Visite guidée :
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
Vérifiez que l'API BigQuery est activée.
Si vous avez créé un nouveau projet, l'API BigQuery est automatiquement activée.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Téléchargez les données de l'Administration de la sécurité sociale des États-Unis en ouvrant l'URL suivante dans un nouvel onglet du navigateur :
https://www.ssa.gov/OACT/babynames/names.zip
Extrayez le fichier.
Pour en savoir plus sur le schéma de l'ensemble de données, consultez le fichier
NationalReadMe.pdf
que vous avez extrait.Pour voir à quoi ressemblent les données, ouvrez le fichier
yob2024.txt
. Ce fichier contient des valeurs séparées par une virgule spécifiant le prénom, le genre attribué à la naissance et le nombre d'enfants portant ce prénom. Le fichier ne comporte pas de ligne d'en-tête.Déplacez le fichier vers votre répertoire de travail.
Si vous utilisez Cloud Shell, cliquez sur
> Importer. Cliquez sur Sélectionner des fichiers, choisissez le fichier Plus yob2024.txt
, puis cliquez sur Importer.Si vous utilisez un shell local, copiez ou déplacez le fichier
yob2024.txt
dans le répertoire dans lequel vous exécutez l'outil bq.
Si vous avez lancé Cloud Shell à partir de la documentation, saisissez la commande suivante pour définir l'ID de votre projet. Cela vous évite de devoir spécifier l'ID du projet dans chaque commande CLI.
gcloud config set project PROJECT_ID
Remplacez PROJECT_ID par l'ID du projet.
Saisissez la commande suivante pour créer un ensemble de données nommé
babynames
:bq mk --dataset babynames
Le résultat ressemble à ce qui suit :
Dataset 'babynames' successfully created.
Vérifiez que l'ensemble de données
babynames
apparaît désormais dans votre projet :bq ls --datasets=true
Le résultat ressemble à ce qui suit :
datasetId ------------- babynames
Dans l'ensemble de données
babynames
, chargez le fichier sourceyob2024.txt
dans une nouvelle table nomméenames2024
:bq load babynames.names2024 yob2024.txt name:string,assigned_sex_at_birth:string,count:integer
Le résultat ressemble à ce qui suit :
Upload complete. Waiting on bqjob_r3c045d7cbe5ca6d2_0000018292f0815f_1 ... (1s) Current status: DONE
Vérifiez que la table
names2024
apparaît désormais dans l'ensemble de donnéesbabynames
:bq ls --format=pretty babynames
Le résultat renvoyé ressemble à ceci : Certaines colonnes sont omises pour simplifier la sortie.
+-----------+-------+ | tableId | Type | +-----------+-------+ | names2024 | TABLE | +-----------+-------+
Vérifiez que le schéma de votre nouvelle table
names2024
estname: string
,assigned_sex_at_birth: string
etcount: integer
:bq show babynames.names2024
Le résultat renvoyé ressemble à ceci : Certaines colonnes sont omises pour simplifier la sortie.
Last modified Schema Total Rows Total Bytes ----------------- ------------------------------- ------------ ------------ 14 Mar 17:16:45 |- name: string 31904 607494 |- assigned_sex_at_birth: string |- count: integer
Déterminez les prénoms de filles les plus populaires dans les données :
bq query \ 'SELECT name, count FROM babynames.names2024 WHERE assigned_sex_at_birth = "F" ORDER BY count DESC LIMIT 5'
Le résultat ressemble à ce qui suit :
+-----------+-------+ | name | count | +-----------+-------+ | Olivia | 14718 | | Emma | 13485 | | Amelia | 12740 | | Charlotte | 12552 | | Mia | 12113 | +-----------+-------+
Déterminez les prénoms de garçons les moins populaires dans les données :
bq query \ 'SELECT name, count FROM babynames.names2024 WHERE assigned_sex_at_birth = "M" ORDER BY count ASC LIMIT 5'
Le résultat ressemble à ce qui suit :
+---------+-------+ | name | count | +---------+-------+ | Aaran | 5 | | Aadiv | 5 | | Aadarsh | 5 | | Aarash | 5 | | Aadrik | 5 | +---------+-------+
Le nombre minimal est cinq, car les données sources omettent les prénoms pour lesquels moins de cinq occurrences sont comptabilisées.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Supprimez l'ensemble de données
babynames
:bq rm --recursive=true babynames
L'option
--recursive
supprime toutes les tables de l'ensemble de données, y compris la tablenames2024
.Le résultat ressemble à ce qui suit :
rm: remove dataset 'myproject:babynames'? (y/N)
Pour confirmer la commande de suppression, saisissez
y
.- En savoir plus sur l'utilisation de l'outil bq.
- Découvrir le bac à sable BigQuery
- En savoir plus sur le chargement de données dans BigQuery
- En savoir plus sur l'interrogation des données dans BigQuery
Si vous n'activez pas la facturation pour le projet Google Cloud que vous utilisez dans ce tutoriel, vous chargerez et interrogerez les données dans le bac à sable BigQuery. Le bac à sable BigQuery vous permet d'apprendre à utiliser BigQuery avec un ensemble limité de fonctionnalités offertes.
Télécharger le fichier contenant les données sources
Le fichier que vous téléchargez contient environ 7 Mo de données correspondant aux prénoms populaires donnés aux bébés. Il provient de l'Administration de la sécurité sociale des États-Unis.
Pour en savoir plus sur les données, consultez les informations générales sur les prénoms populaires de l'Administration de la sécurité sociale.
Créer un ensemble de données
Charger des données dans une table
Interroger les données de la table
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre compte Google Cloud , supprimez le projet Google Cloud qui les contient.
Supprimer le projet
Si vous avez utilisé le bac à sable BigQuery pour interroger l'ensemble de données public, la facturation n'est pas activée pour votre projet. Vous n'avez donc pas besoin de le supprimer.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 :
Supprimer les ressources
Si vous avez utilisé un projet existant, supprimez les ressources que vous avez créées :