Répertorier les ensembles de données
Ce document explique comment répertorier des ensembles de données dans BigQuery et obtenir des informations à leur sujet.
Avant de commencer
Attribuez aux utilisateurs des rôles IAM (Identity and Access Management) incluant les autorisations nécessaires pour effectuer l'ensemble des tâches du présent document.
Rôle requis
Pour obtenir l'autorisation dont vous avez besoin pour répertorier des ensembles de données ou obtenir des informations sur ceux-ci, demandez à votre administrateur de vous attribuer le rôle IAM "Lecteur de métadonnées BigQuery" (roles/bigquery.metadataViewer
) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ce rôle prédéfini contient l'autorisation bigquery.datasets.get
, qui est requise pour répertorier les ensembles de données ou obtenir des informations les concernant.
Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Lorsque vous appliquez le rôle roles/bigquery.metadataViewer
au niveau du projet ou de l'organisation, vous pouvez répertorier tous les ensembles de données du projet.
Répertorier des ensembles de données
Sélectionnez l'une des options suivantes :
Console
Dans le menu de navigation, cliquez sur Espace de travail SQL.
Dans le panneau Explorateur, développez un nom de projet pour afficher les ensembles de données qu'il contient ou utilisez le champ de recherche pour effectuer une recherche par nom d'ensemble de données.
SQL
Interrogez la vue INFORMATION_SCHEMA.SCHEMATA
:
Dans Google Cloud Console, accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez l'instruction suivante :
SELECT schema_name FROM PROJECT_ID.INFORMATION_SCHEMA.SCHEMATA;
Remplacez PROJECT_ID par l'ID du projet pour lequel vous souhaitez répertorier les ensembles de données disponibles.
Cliquez sur
Exécuter.
Pour en savoir plus sur l'exécution des requêtes, consultez la page Exécuter des requêtes interactives.
bq
Exécutez la commande bq ls
pour répertorier les ensembles de données par ID. Vous pouvez contrôler le résultat à l'aide de l'option --format
. Si vous répertoriez un ensemble de données dans un projet autre que votre projet par défaut, ajoutez l'option --project_id
à la commande.
Pour répertorier tous les ensembles de données d'un projet, y compris les ensembles de données anonymes, utilisez l'option --all
ou le raccourci -a
.
Pour répertorier tous les ensembles de données d'un projet, à l'exception des ensembles de données anonymes, utilisez l'option --datasets
ou le raccourci -d
. Cette option est facultative. Par défaut, les ensembles de données anonymes ne sont pas répertoriés.
Les options supplémentaires comprennent les éléments suivants :
--filter
: permet de répertorier les ensembles de données qui correspondent à l'expression de filtre. Utilise une liste de clés de libellés et de valeurs séparées par des espaces au formatlabels.key:value
. Pour en savoir plus sur le filtrage des ensembles de données à l'aide de libellés, consultez la page Filtrer des ressources à l'aide de libellés.--max_results
ou-n
: entier indiquant le nombre maximal de résultats. La valeur par défaut est50
.
bq ls --filter labels.key:value \ --max_results integer \ --format=prettyjson \ --project_id project_id
Remplacez les éléments suivants :
- key:value : clé et valeur de libellé
- integer : entier représentant le nombre d'ensembles de données à lister
- project_id : nom de votre projet
Exemples :
Saisissez la commande suivante pour répertorier les ensembles de données dans votre projet par défaut. L'élément --
format
est défini sur "pretty" pour renvoyer une table au format de base.
bq ls --format=pretty
Saisissez la commande suivante pour répertorier les ensembles de données dans myotherproject
. L'élément --format
est défini sur prettyjson
pour renvoyer les résultats détaillés au format JSON.
bq ls --format=prettyjson --project_id myotherproject
Saisissez la commande suivante pour répertorier tous les ensembles de données, y compris les ensembles de données anonymes, dans votre projet par défaut. Dans le résultat, les ensembles de données anonymes commencent par un trait de soulignement.
bq ls -a
Saisissez la commande suivante pour renvoyer plus de résultats que la sortie par défaut, correspondant à 50 ensembles de données dans votre projet par défaut.
bq ls --max_results 60
Saisissez la commande suivante pour répertorier les ensembles de données de votre projet par défaut avec le libellé org:dev
.
bq ls --filter labels.org:dev
API
Pour répertorier les ensembles de données à l'aide de l'API, appelez la méthode API datasets.list
.
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour C#.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour PHP.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Ruby.
Obtenir des informations sur les ensembles de données
Sélectionnez l'une des options suivantes :
Console
Dans le panneau Explorateur, développez votre projet et sélectionnez un ensemble de données.
Développez l'option
Actions puis cliquez sur Ouvrir. La description et les détails s'affichent dans le panneau de détails. Les tables d'un ensemble de données sont répertoriées avec le nom de l'ensemble de données dans le panneau Explorateur.
Par défaut, les ensembles de données anonymes sont masqués dans la console Google Cloud. Pour afficher des informations sur des ensembles de données anonymes, utilisez l'outil de ligne de commande bq
ou l'API.
SQL
Interrogez la vue INFORMATION_SCHEMA.SCHEMATA
:
Dans Google Cloud Console, accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez l'instruction suivante :
SELECT * EXCEPT (schema_owner) FROM `PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA;
Remplacez PROJECT_ID par l'ID du projet pour lequel vous souhaitez répertorier les ensembles de données disponibles.
Cliquez sur
Exécuter.
Pour en savoir plus sur l'exécution des requêtes, consultez la page Exécuter des requêtes interactives.
Vous pouvez également interroger la vue INFORMATION_SCHEMA.SCHEMATA_OPTIONS
.
SELECT * FROM [PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA;
Remplacez les éléments suivants :
-
PROJECT_ID
(facultatif) : ID de votre projet Cloud. Si non spécifié, le projet par défaut est utilisé. -
REGION
: tout nom d'emplacement d'ensemble de données. Par exemple,region-us
.
bq
Exécutez la commande bq show
. L'option --format
peut être utilisée pour contrôler le résultat. Si vous souhaitez obtenir des informations sur un ensemble de données dans un projet autre que celui par défaut, ajoutez l'ID du projet au nom de l'ensemble de données, en respectant le format suivant : project_id:dataset
.
Pour afficher des informations sur un ensemble de données anonyme, exécutez la commande bq ls --all
pour répertorier tous les ensembles de données, puis utilisez le nom de l'ensemble de données anonyme dans la commande bq show
.
bq show --format=prettyjson project_id:dataset
Remplacez les éléments suivants :
- project_id est le nom de votre projet.
- dataset est le nom de l'ensemble de données.
Exemples :
Saisissez la commande suivante pour afficher des informations sur mydataset
dans votre projet par défaut :
bq show --format=prettyjson mydataset
Saisissez la commande suivante pour afficher des informations sur mydataset
dans myotherproject
.
bq show --format=prettyjson myotherproject:mydataset
Saisissez la commande suivante pour afficher des informations sur un ensemble de données anonyme _1234abcd56efgh78ijkl1234
dans votre projet par défaut :
bq show --format=prettyjson _1234abcd56efgh78ijkl1234
API
Appelez la méthode datasets.get
et définissez tous les paramètres pertinents.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Étapes suivantes
- Pour en savoir plus sur la création des ensembles de données, consultez la page Créer des ensembles de données.
- Pour en savoir plus sur l'attribution de contrôles d'accès aux ensembles de données, consultez la page Contrôler l'accès aux ensembles de données.
- Pour en savoir plus sur la modification des propriétés d'un ensemble de données, consultez la page Mettre à jour les propriétés d'un ensemble de données.
- Pour savoir comment créer et gérer des libellés, consultez la page sur la création et la gestion des libellés.
- Pour obtenir une présentation de
INFORMATION_SCHEMA
, consultez la page Présentation de BigQueryINFORMATION_SCHEMA
.