Interroger un ensemble de données public avec les bibliothèques clientes BigQuery
Découvrez comment interroger un ensemble de données public avec les bibliothèques clientes BigQuery.
Pour obtenir des instructions détaillées sur cette tâche directement dans la consoleGoogle Cloud , sélectionnez le langage de programmation de votre choix :
C#
Go
Java
Node.js
PHP
Python
Ruby
Avant de commencer
-
Créez ou sélectionnez 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'autorisationresourcemanager.projects.create. Découvrez comment attribuer des rôles.
-
Créez un projet Google Cloud :
gcloud projects create PROJECT_ID
Remplacez
PROJECT_IDpar le nom du projet Google Cloud que vous créez. -
Sélectionnez le projet Google Cloud que vous avez créé :
gcloud config set project PROJECT_ID
Remplacez
PROJECT_IDpar le nom de votre projet Google Cloud .
-
Indiquez si vous souhaitez utiliser le bac à sable BigQuery sans frais, ou bien activer la facturation pour votre projet Google Cloud .
Si vous n'activez pas la facturation pour un projet, vous travaillez automatiquement dans le bac à sable BigQuery. Ce bac à sable vous permet d'apprendre à utiliser BigQuery avec un ensemble limité de fonctionnalités sans frais. Si vous ne prévoyez pas d'utiliser votre projet au-delà de ce document, nous vous recommandons d'utiliser le bac à sable BigQuery.
-
Attribuez des rôles à votre compte utilisateur. Exécutez la commande suivante une fois pour chacun des rôles IAM suivants :
roles/serviceusage.serviceUsageAdmin, roles/bigquery.jobUsergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Remplacez les éléments suivants :
PROJECT_ID: ID de votre projetUSER_IDENTIFIER: identifiant de votre compte d'utilisateur. Par exemple,myemail@example.com.ROLE: rôle IAM que vous accordez à votre compte utilisateur.
-
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'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.gcloud services enable bigquery
Pour les nouveaux projets, l'API BigQuery est activée automatiquement.
-
Dans la console Google Cloud , activez Cloud Shell.
Activez votre projet Google Cloud dans Cloud Shell :
gcloud config set project PROJECT_IDRemplacez PROJECT_ID par le projet que vous avez sélectionné pour ce tutoriel.
Le résultat ressemble à ce qui suit :
Updated property [core/project].
Interroger un ensemble de données public
Sélectionnez l'un des langages suivants :
C#
Dans Cloud Shell, créez un projet C# et le fichier associé :
dotnet new console -n BigQueryCsharpDemo
Le résultat ressemble à ce qui suit : Plusieurs lignes sont omises pour simplifier le résultat.
Welcome to .NET 6.0! --------------------- SDK Version: 6.0.407 ... The template "Console App" was created successfully. ...
Cette commande crée un projet C# nommé
BigQueryCsharpDemoet un fichier intituléProgram.cs.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace BigQueryCsharpDemo
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd BigQueryCsharpDemo
Installez la bibliothèque cliente BigQuery pour C# :
dotnet add package Google.Cloud.BigQuery.V2
Le résultat ressemble à ce qui suit : Plusieurs lignes sont omises pour simplifier la sortie.
Determining projects to restore... Writing /tmp/tmpF7EKSd.tmp ... info : Writing assets file to disk. ...
Définissez la variable
GOOGLE_PROJECT_IDsur la valeurGOOGLE_CLOUD_PROJECTet exportez-la :export GOOGLE_PROJECT_ID=$GOOGLE_CLOUD_PROJECT
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERYCSHARPDEMO.Cliquez sur le fichier
Program.cspour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, remplacez le contenu du fichier par le code suivant :Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
Program.cs. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.dotnet runLe résultat ressemble à ce qui suit :
Query Results: ------------ https://stackoverflow.com/questions/35159967: 170023 views https://stackoverflow.com/questions/22879669: 142581 views https://stackoverflow.com/questions/10604135: 132406 views https://stackoverflow.com/questions/44564887: 128781 views https://stackoverflow.com/questions/27060396: 127008 views https://stackoverflow.com/questions/12482637: 120766 views https://stackoverflow.com/questions/20673986: 115720 views https://stackoverflow.com/questions/39109817: 108368 views https://stackoverflow.com/questions/11057219: 105175 views https://stackoverflow.com/questions/43195143: 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour C#.
Go
Dans Cloud Shell, créez un projet Go et le fichier associé :
mkdir bigquery-go-quickstart \ && touch \ bigquery-go-quickstart/app.go
Cette commande crée un projet Go nommé
bigquery-go-quickstartet un fichier nomméapp.go.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-go-quickstart
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd bigquery-go-quickstart
Créez un fichier
go.mod:go mod init quickstart
Le résultat ressemble à ce qui suit :
go: creating new go.mod: module quickstart go: to add module requirements and sums: go mod tidyInstallez la bibliothèque cliente BigQuery pour Go :
go get cloud.google.com/go/bigquery
Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.
go: downloading cloud.google.com/go/bigquery v1.49.0 go: downloading cloud.google.com/go v0.110.0 ... go: added cloud.google.com/go/bigquery v1.49.0 go: added cloud.google.com/go v0.110.0
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-GO-QUICKSTART.Cliquez sur le fichier
app.gopour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichierapp.go:Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
app.go. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.go run app.go
Le résultat ressemble à ce qui suit :
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour Go.
Java
Dans Cloud Shell, créez un projet Java à l'aide d'Apache Maven :
mvn archetype:generate \ -DgroupId=com.google.app \ -DartifactId=bigquery-java-quickstart \ -DinteractiveMode=false
Cette commande crée un projet Maven nommé
bigquery-java-quickstart.Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.
[INFO] Scanning for projects... ... [INFO] Building Maven Stub Project (No POM) 1 ... [INFO] BUILD SUCCESS ...
Outre Maven, vous pouvez aussi utiliser de nombreux autres systèmes de gestion des dépendances. Pour en savoir plus, découvrez comment configurer un environnement de développement Java à utiliser avec les bibliothèques clientes.
Renommez le fichier
App.javaque Maven a créé par défaut :mv \ bigquery-java-quickstart/src/main/java/com/google/app/App.java \ bigquery-java-quickstart/src/main/java/com/google/app/SimpleApp.java
Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-java-quickstart
Si vous êtes invité à synchroniser la configuration ou le chemin d'accès aux classes Java, cliquez sur Toujours.
Si vous n'y êtes pas invité et que vous rencontrez une erreur liée au chemin d'accès aux classes lors de ce tutoriel, procédez comme suit :
- Cliquez sur Fichier > Préférences > Ouvrir les paramètres (interface utilisateur).
- Cliquez sur Extensions > Java.
- Faites défiler la page jusqu'à Configuration : mettre à jour la configuration de compilation, puis sélectionnez Automatique.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-JAVA-QUICKSTART.Cliquez sur le fichier
pom.xmlpour l'ouvrir.Dans la balise
<dependencies>, ajoutez la dépendance suivante après celles pouvant déjà y figurer. Ne remplacez aucune dépendance existante.<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-bigquery</artifactId> </dependency>Sur la ligne qui suit le tag de fermeture (
</dependencies>), ajoutez le code suivant :<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>26.1.5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>Dans le volet Explorateur, dans votre projet
BIGQUERY-JAVA-QUICKSTART, cliquez sur src > main/java/com/google/app > SimpleApp.java. Le fichier s'ouvre.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflow, conservez la première ligne du fichier (package com.google.app;) et remplacez le reste de son contenu par le code suivant :La requête renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues.
Effectuez un clic droit sur SimpleApp.java, puis cliquez sur Exécuter Java. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.
Le résultat ressemble à ce qui suit :
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour Java.
Node.js
Dans Cloud Shell, créez un projet Node.js et le fichier associé :
mkdir bigquery-node-quickstart \ && touch \ bigquery-node-quickstart/app.js
Cette commande crée un projet Node.js nommé
bigquery-node-quickstartet un fichier intituléapp.js.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-node-quickstart
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd bigquery-node-quickstart
Installez la bibliothèque cliente BigQuery pour Node.js :
npm install @google-cloud/bigquery
Le résultat ressemble à ce qui suit :
added 63 packages in 2s
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-NODE-QUICKSTART.Cliquez sur le fichier
app.jspour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichierapp.js:Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
app.js. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.node app.jsLe résultat ressemble à ce qui suit :
Query Results: url: https://stackoverflow.com/questions/35159967, 170023 views url: https://stackoverflow.com/questions/22879669, 142581 views url: https://stackoverflow.com/questions/10604135, 132406 views url: https://stackoverflow.com/questions/44564887, 128781 views url: https://stackoverflow.com/questions/27060396, 127008 views url: https://stackoverflow.com/questions/12482637, 120766 views url: https://stackoverflow.com/questions/20673986, 115720 views url: https://stackoverflow.com/questions/39109817, 108368 views url: https://stackoverflow.com/questions/11057219, 105175 views url: https://stackoverflow.com/questions/43195143, 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour Node.js.
PHP
Dans Cloud Shell, créez un projet PHP et le fichier associé :
mkdir bigquery-php-quickstart \ && touch \ bigquery-php-quickstart/app.php
Cette commande crée un projet PHP nommé
bigquery-php-quickstartet un fichier intituléapp.php.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-php-quickstart
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd bigquery-php-quickstart
Installez la bibliothèque cliente BigQuery pour PHP :
composer require google/cloud-bigquery
Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.
Running composer update google/cloud-bigquery Loading composer repositories with package information Updating dependencies ... No security vulnerability advisories found Using version ^1.24 for google/cloud-bigquery
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-PHP-QUICKSTART.Cliquez sur le fichier
app.phppour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichierapp.php:Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
app.php. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.php app.phpLe résultat ressemble à ce qui suit :
--- Row 1 --- url: https://stackoverflow.com/questions/35159967, 170023 views --- Row 2 --- url: https://stackoverflow.com/questions/22879669, 142581 views --- Row 3 --- url: https://stackoverflow.com/questions/10604135, 132406 views --- Row 4 --- url: https://stackoverflow.com/questions/44564887, 128781 views --- Row 5 --- url: https://stackoverflow.com/questions/27060396, 127008 views --- Row 6 --- url: https://stackoverflow.com/questions/12482637, 120766 views --- Row 7 --- url: https://stackoverflow.com/questions/20673986, 115720 views --- Row 8 --- url: https://stackoverflow.com/questions/39109817, 108368 views --- Row 9 --- url: https://stackoverflow.com/questions/11057219, 105175 views --- Row 10 --- url: https://stackoverflow.com/questions/43195143, 101878 views Found 10 row(s)
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour PHP.
Python
Dans Cloud Shell, créez un projet Python et le fichier associé :
mkdir bigquery-python-quickstart \ && touch \ bigquery-python-quickstart/app.py
Cette commande crée un projet Python nommé
bigquery-python-quickstartet un fichier intituléapp.py.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-python-quickstart
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd bigquery-python-quickstart
Installez la bibliothèque cliente BigQuery pour Python :
pip install --upgrade google-cloud-bigquery
Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.
Installing collected packages: google-cloud-bigquery ... Successfully installed google-cloud-bigquery-3.9.0 ...
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-PYTHON-QUICKSTART.Cliquez sur le fichier
app.pypour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichierapp.py:Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
app.py. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.python app.pyLe résultat ressemble à ce qui suit :
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour Python.
Ruby
Dans Cloud Shell, créez un projet Ruby et le fichier associé :
mkdir bigquery-ruby-quickstart \ && touch \ bigquery-ruby-quickstart/app.rb
Cette commande crée un projet Ruby nommé
bigquery-ruby-quickstartet un fichier intituléapp.rb.Ouvrez l'éditeur Cloud Shell :
cloudshell workspace bigquery-ruby-quickstart
Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.
Ouvrez le répertoire de votre projet :
cd bigquery-ruby-quickstart
Installez la bibliothèque cliente BigQuery pour Ruby :
gem install google-cloud-bigquery
Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.
23 gems installed
Cliquez sur Ouvrir l'éditeur.
Dans le volet Explorateur, localisez votre projet
BIGQUERY-RUBY-QUICKSTART.Cliquez sur le fichier
app.rbpour l'ouvrir.Pour créer une requête sur l'ensemble de données
bigquery-public-data.stackoverflowqui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichierapp.rb:Cliquez sur Ouvrir le terminal.
Dans le terminal, exécutez le script
app.rb. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.ruby app.rbLe résultat ressemble à ce qui suit :
https://stackoverflow.com/questions/35159967: 170023 views https://stackoverflow.com/questions/22879669: 142581 views https://stackoverflow.com/questions/10604135: 132406 views https://stackoverflow.com/questions/44564887: 128781 views https://stackoverflow.com/questions/27060396: 127008 views https://stackoverflow.com/questions/12482637: 120766 views https://stackoverflow.com/questions/20673986: 115720 views https://stackoverflow.com/questions/39109817: 108368 views https://stackoverflow.com/questions/11057219: 105175 views https://stackoverflow.com/questions/43195143: 101878 views
Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour Ruby.
Effectuer un nettoyage
Pour éviter que des frais ne soient facturés sur votre compte Google Cloud , supprimez votre projet Google Cloud ou les ressources que vous avez créées dans ce tutoriel.
Supprimer le projet
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 console Google Cloud , 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 sur Arrêter pour supprimer le projet.
Supprimer les ressources
Si vous avez utilisé un projet existant, supprimez les ressources que vous avez créées :
C#
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
BigQueryCsharpDemoque vous avez créé :rm -R BigQueryCsharpDemo
L'option
-Rsupprime tous les éléments d'un dossier.
Go
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-go-quickstartque vous avez créé :rm -R bigquery-go-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
Java
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-java-quickstartque vous avez créé :rm -R bigquery-java-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
Node.js
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-node-quickstartque vous avez créé :rm -R bigquery-node-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
PHP
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-php-quickstartque vous avez créé :rm -R bigquery-php-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
Python
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-python-quickstartque vous avez créé :rm -R bigquery-python-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
Ruby
Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :
cd ..
Supprimez le dossier
bigquery-ruby-quickstartque vous avez créé :rm -R bigquery-ruby-quickstart
L'option
-Rsupprime tous les éléments d'un dossier.
Étapes suivantes
- Découvrez comment utiliser les bibliothèques clientes BigQuery.
- Découvrez les ensembles de données publics BigQuery.
- Apprendre à charger des données dans BigQuery
- En savoir plus sur l'interrogation des données dans BigQuery
- Consulter les notes de version de BigQuery
- Découvrez les tarifs de BigQuery.
- En savoir plus sur les quotas et limites BigQuery