Afficher des libellés

Cette page explique comment afficher les libellés de vos ressources BigQuery.

Aperçu

Vous pouvez afficher les libellés de plusieurs façons :

  • En utilisant la console GCP ou l'interface utilisateur Web classique de BigQuery
  • En utilisant la commande bq show de l'outil de ligne de commande
  • En appelant les méthodes d'API datasets.get ou tables.get
  • En utilisant les bibliothèques clientes

Comme les vues sont traitées comme des ressources de table, la méthode tables.get vous permet d'obtenir des informations à la fois sur les étiquettes de vue et de table.

Autorisations requises

Les autorisations requises pour afficher des étiquettes dépendent du type de ressource auquel vous accédez.

Autorisations d'ensemble de données

Pour obtenir des informations sur un ensemble de données, vous devez au minimum disposer des autorisations bigquery.datasets.get. Les rôles Cloud IAM prédéfinis suivants incluent des autorisations bigquery.datasets.get :

  • bigquery.user
  • bigquery.metadataViewer
  • bigquery.dataViewer
  • bigquery.dataOwner
  • bigquery.dataEditor
  • bigquery.admin

En outre, si un utilisateur possède des autorisations bigquery.datasets.create, lorsqu'il crée un ensemble de données, il obtient également le rôle bigquery.dataOwner qui lui permet d'y accéder. L'accès bigquery.dataOwner permet à l'utilisateur d'obtenir des informations sur un ensemble de données.

Pour en savoir plus sur les rôles et les autorisations Cloud IAM dans BigQuery, consultez la page Rôles et autorisations prédéfinis.

Autorisations relatives aux tables et aux vues

Pour obtenir des informations sur les tables ou les vues, vous devez au minimum disposer des autorisations bigquery.tables.get. Tous les rôles IAM prédéfinis incluent les autorisations bigquery.tables.get, à l'exception de bigquery.user et bigquery.jobUser.

En outre, si un utilisateur possède des autorisations bigquery.datasets.create, lorsqu'il crée un ensemble de données, il obtient également le rôle bigquery.dataOwner qui lui permet d'y accéder. L'accès bigquery.dataOwner donne à l'utilisateur la possibilité d'obtenir des informations sur les tables et les vues d'un ensemble de données.

Pour en savoir plus sur les rôles et les autorisations Cloud IAM dans BigQuery, consultez la page Rôles et autorisations prédéfinis.

Autorisations relatives aux tâches

Pour obtenir des données et métadonnées sur les tâches, vous devez au minimum disposer des autorisations bigquery.jobs.get. Le rôle Cloud IAM prédéfini suivant inclut les autorisations bigquery.jobs.get :

  • bigquery.admin

Si vous accordez à un compte le rôle bigquery.admin, l'utilisateur pourra afficher toutes les données de tâche du projet, indépendamment de l'utilisateur ayant envoyé la tâche.

Les rôles suivants disposent des autorisations bigquery.jobs.get pour les tâches créées par vos utilisateurs. Ces utilisateurs ne sont autorisés à afficher les données de tâches que pour les tâches qu'ils envoient :

  • bigquery.user
  • bigquery.jobUser

Pour en savoir plus sur les rôles et les autorisations Cloud IAM dans BigQuery, consultez la page Contrôle des accès.

Afficher des libellés d'ensemble de données, de table et de vue

Pour afficher les étiquettes d'une ressource, procédez comme suit :

Console

  1. Dans la console GCP, sélectionnez un ensemble de données, une table ou une vue. Vous ne pouvez pas afficher les libellés d'une tâche dans la console GCP.

  2. Pour les ensembles de données, la page des détails correspondante s'ouvre automatiquement. Pour les tables et les vues, cliquez sur Details (Détails) pour ouvrir la page des détails. Les informations sur les étiquettes apparaissent dans la table d'informations de la ressource.

    Détails de la table

UI classique

  1. Dans l'interface utilisateur Web, sélectionnez un ensemble de données, une table ou une vue. Vous ne pouvez pas afficher les libellés d'une tâche dans l'interface utilisateur Web classique.

  2. Dans le cas des ensembles de données, la page Détails de l'ensemble de données s'ouvre automatiquement. Pour les tables et les vues, cliquez sur Détails pour ouvrir la page des détails. Les informations sur les étiquettes apparaissent dans la table d'informations de la ressource.

CLI

Exécutez la commande bq show en spécifiant l'ID de ressource. Vous pouvez contrôler le format de sortie à l'aide du paramètre --format. Si la ressource se trouve dans un projet autre que celui par défaut, ajoutez l'ID du projet en utilisant le format suivant : [PROJECT_ID]:[DATASET]. Pour améliorer la lisibilité de la sortie, vous pouvez définir le paramètre --format sur pretty.

bq show --format=pretty [RESOURCE_ID]

[RESOURCE_ID] est un ensemble de données, une table, une vue ou une tâche valide.

Exemples :

Saisissez la commande suivante pour afficher les libellés associés à mydataset dans votre projet par défaut :

bq show --format=pretty mydataset

La sortie ressemble à ceci :

+-----------------+--------------------------------------------------------+---------------------+
|  Last modified  |                          ACLs                          |       Labels        |
+-----------------+--------------------------------------------------------+---------------------+
| 11 Jul 19:34:34 | Owners:                                                | department:shipping |
|                 |   projectOwners,                                       |                     |
|                 | Writers:                                               |                     |
|                 |   projectWriters                                       |                     |
|                 | Readers:                                               |                     |
|                 |   projectReaders                                       |                     |
+-----------------+--------------------------------------------------------+---------------------+

Saisissez la commande ci-dessous pour afficher les étiquettes associées à mydataset.mytable. L'ensemble de données mydataset se trouve dans myotherproject, et non dans votre projet par défaut.

bq show --format=pretty myotherproject:mydataset.mytable

Pour une table en cluster, le résultat ressemble à ce qui suit :

+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+
|  Last modified  |            Schema            | Total Rows | Total Bytes |   Expiration    |               Time Partitioning                | Clustered Fields | Labels  |
+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+
| 25 Jun 19:28:14 | |- timestamp: timestamp      | 0          | 0           | 25 Jul 19:28:14 | DAY (field: timestamp, expirationMs: 86400000) | customer_id      | org:dev |
|                 | |- customer_id: string       |            |             |                 |                                                |                  |         |
|                 | |- transaction_amount: float |            |             |                 |                                                |                  |         |
+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+

API

Appelez la méthode datasets.get ou tables.get. La réponse inclut tous les libellés associés à cette ressource.

Vous pouvez également utiliser datasets.list pour afficher les libellés de plusieurs ensembles de données ou tables.list pour afficher les libellés de plusieurs tables et vues.

Comme les vues sont traitées comme des ressources de table, les méthodes tables.get et tables.list vous permettent d'obtenir des informations à la fois sur les étiquettes de vue et de table.

Go

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Go décrite dans le 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 Go.

// To run this sample, you will need to create (or reuse) a context and
// an instance of the bigquery client.  For example:
// import "cloud.google.com/go/bigquery"
// ctx := context.Background()
// client, err := bigquery.NewClient(ctx, "your-project-id")
meta, err := client.Dataset(datasetID).Metadata(ctx)
if err != nil {
	return err
}
fmt.Fprintf(w, "Dataset %s labels:\n", datasetID)
if len(meta.Labels) == 0 {
	fmt.Fprintln(w, "Dataset has no labels defined.")
	return nil
}
for k, v := range meta.Labels {
	fmt.Fprintf(w, "\t%s:%s\n", k, v)
}

Python

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Python décrite dans le guide de démarrage rapide de BigQuery relatif à l'utilisation des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API BigQuery Python.

# from google.cloud import bigquery
# client = bigquery.Client()
# dataset_id = 'my_dataset'

dataset_ref = client.dataset(dataset_id)
dataset = client.get_dataset(dataset_ref)  # API request

# View dataset labels
print("Dataset ID: {}".format(dataset_id))
print("Labels:")
if dataset.labels:
    for label, value in dataset.labels.items():
        print("\t{}: {}".format(label, value))
else:
    print("\tDataset has no labels defined.")

Afficher les libellés d'une tâche

Une fois la tâche de requête envoyée, les libellés n'apparaissent pas dans l'UI Web de BigQuery. Pour afficher les libellés d'une tâche, exécutez la commande bq show -j [JOB_ID] ou utilisez l'API ou les bibliothèques clientes.

Console

Vous ne pouvez pas afficher les libellés d'une tâche à l'aide de la console GCP.

UI classique

Vous ne pouvez pas afficher les étiquettes d'une tâche à l'aide de l'UI Web classique de BigQuery.

CLI

Pour afficher les libellés d'une tâche de requête à l'aide de l'outil de ligne de commande bq, saisissez la commande bq show -j avec l'ID de la tâche de requête. Vous pouvez utiliser l'indicateur --format pour contrôler le résultat. Par exemple, si l'ID de votre tâche de requête correspond à bqjob_r1234d57f78901_000023746d4q12_1, saisissez la commande suivante :

bq show -j --format=pretty bqjob_r1234d57f78901_000023746d4q12_1

Le résultat doit se présenter sous la forme suivante :

+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+
| Job Type |  State  |   Start Time    | Duration |    User Email     | Bytes Processed | Bytes Billed |        Labels        |
+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+
| query    | SUCCESS | 03 Dec 15:00:41 | 0:00:00  | email@example.com | 255             | 10485760     | department:shipping  |
|          |         |                 |          |                   |                 |              | costcenter:logistics |
+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+

API

Appelez la méthode jobs.get. La réponse inclut tous les libellés associés à cette ressource.

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Besoin d'aide ? Consultez notre page d'assistance.