Ajouter des libellés à des ressources

Cette page explique comment ajouter des libellés à vos ressources BigQuery.

Ajouter des libellés d'ensemble de données

Vous pouvez attribuer un libellé à un ensemble de données BigQuery lors de sa création en utilisant la commande bq mk de l'outil de ligne de commande ou en appelant la méthode d'API datasets.insert. Actuellement, il est impossible d'ajouter un libellé à un ensemble de données lorsque ce dernier est créé via Cloud Console ou l'UI Web classique de BigQuery.

Cette page explique comment ajouter un libellé à un ensemble de données une fois celui-ci créé. Pour en savoir plus sur l'ajout d'un libellé lors de la création d'un ensemble de données, consultez la section Créer un ensemble de données.

Vous pouvez ajouter un libellé à un ensemble de données BigQuery après sa création de l'une des manières suivantes :

  • En utilisant Cloud Console ou l'interface utilisateur Web classique de BigQuery
  • En utilisant la commande bq update de l'outil de ligne de commande
  • En appelant la méthode d'API datasets.patch
  • En utilisant les bibliothèques clientes

Lorsque vous ajoutez un libellé à un ensemble de données, celui-ci ne se propage pas aux ressources de l'ensemble de données. Les libellés d'ensemble de données ne sont pas hérités par les tables ou les vues. Lorsque vous ajoutez un libellé à un ensemble de données, celui-ci est inclus dans vos données de facturation du stockage. Toutefois, les libellés de l'ensemble de données ne s'afficheront pas dans vos données de facturation associées aux tâches.

Autorisations requises

Pour ajouter un libellé à un ensemble de données, vous devez au minimum disposer des autorisations bigquery.datasets.update. Les rôles Cloud IAM prédéfinis suivants incluent des autorisations bigquery.datasets.update :

  • bigquery.dataOwner
  • bigquery.admin

En outre, si un utilisateur possède les autorisations bigquery.datasets.create, il obtient également un accès bigquery.dataOwner à l'ensemble de données qu'il crée. L'accès correspondant au rôle bigquery.dataOwner donne à l'utilisateur la possibilité d'ajouter des libellés à ses ensembles 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.

Ajouter un libellé à un ensemble de données

Pour ajouter un libellé à un ensemble de données une fois celui-ci créé, procédez comme suit :

Console

  1. Dans Cloud Console, sélectionnez l'ensemble de données.

  2. Sur la page des détails de l'ensemble de données, cliquez sur l'icône en forme de crayon située à droite de Labels (Libellés).

    Icône en forme de crayon pour modifier un libellé

  3. Dans la boîte de dialogue Modifier les étiquettes, effectuez les opérations suivantes :

    • Cliquez sur Add label (Ajouter un libellé).
    • Saisissez une clé et une valeur pour ajouter un libellé. Pour attribuer des libellés supplémentaires, cliquez sur Add label (Ajouter un libellé). Chaque clé ne peut être utilisée qu'une seule fois par ensemble de données, mais vous pouvez exploiter la même clé pour plusieurs ensembles de données au sein d'un même projet.
    • Modifiez les clés ou valeurs existantes pour mettre à jour un libellé.
    • Cliquez sur Mettre à jour pour enregistrer vos modifications.

UI classique

  1. Dans l'UI Web de BigQuery, sélectionnez l'ensemble de données.

  2. Sur la page Dataset Details (Détails de l'ensemble de données), cliquez sur le bouton Edit (Modifier) situé à droite du champ Labels (Libellés).

    Modifier des étiquettes

  3. Dans la boîte de dialogue Edit Labels (Modifier les libellés) :

    • Saisissez une clé et une valeur pour ajouter un libellé. Pour attribuer des libellés supplémentaires, cliquez sur Add Label (Ajouter un libellé). Chaque clé ne peut être utilisée qu'une seule fois par ensemble de données, mais vous pouvez exploiter la même clé pour plusieurs ensembles de données au sein d'un même projet.
    • Modifiez les clés ou valeurs existantes pour mettre à jour un libellé.
    • Cliquez sur OK.

      Nouveau libellé

CLI

Pour ajouter un libellé à un ensemble de données existant, exécutez la commande bq update avec l'option set_label. Répétez l'option pour ajouter plusieurs libellés.

Si l'ensemble de données se trouve dans un projet autre que votre projet par défaut, ajoutez l'ID du projet au nom de l'ensemble de données en respectant le format suivant : project_id:dataset.

bq update --set_label key:value project_id:dataset

Où :

  • key:value correspond à une paire clé/valeur pour un libellé que vous souhaitez ajouter. La clé doit être unique.
  • project_id est l'ID du projet.
  • dataset correspond à l'ensemble de données auquel vous ajoutez des libellés.

Exemples :

Pour ajouter un libellé permettant de surveiller tout un service, saisissez la commande bq update et spécifiez department comme clé de libellé. Si vous souhaitez par exemple attribuer le libellé department:shipping à mydataset dans votre projet par défaut, saisissez la commande suivante :

    bq update --set_label department:shipping mydataset

Pour attribuer plusieurs libellés à un ensemble de données, répétez l'option set_label et spécifiez une clé unique pour chaque libellé. Si vous souhaitez par exemple ajouter des libellés department:shipping et cost_center:logistics à mydataset dans votre projet par défaut, saisissez la commande suivante :

    bq update \
    --set_label department:shipping \
    --set_label cost_center:logistics \
    mydataset

API

Pour ajouter un libellé à un ensemble de données existant, appelez la méthode datasets.patch et renseignez la propriété labels de la ressource d'ensemble de données.

Étant donné que la méthode datasets.update remplace l'intégralité de la ressource d'ensemble de données, la méthode datasets.patch est préférable.

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 sur 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")
ds := client.Dataset(datasetID)
meta, err := ds.Metadata(ctx)
if err != nil {
	return err
}

update := bigquery.DatasetMetadataToUpdate{}
update.SetLabel("color", "green")
if _, err := ds.Update(ctx, update, meta.ETag); err != nil {
	return err
}

Java

Cet exemple permet d'envoyer une requête à l'API BigQuery à l'aide de la bibliothèque cliente HTTP Google pour Java.

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Java 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 sur l'API BigQuery Java.

static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
static final JsonFactory JSON_FACTORY = new JacksonFactory();

public static class Dataset {
  @Key private Map<String, String> labels;

  public Map<String, String> getLabels() {
    return this.labels;
  }

  public Dataset addLabel(String key, String value) {
    if (this.labels == null) {
      this.labels = new HashMap<>();
    }
    this.labels.put(key, value);
    return this;
  }
}

/**
 * Add or modify a label on a dataset.
 *
 * <p>See <a href="https://cloud.google.com/bigquery/docs/labeling-datasets">the BigQuery
 * documentation</a>.
 */
public static void labelDataset(
    String projectId, String datasetId, String labelKey, String labelValue) throws IOException {

  // Authenticate requests using Google Application Default credentials.
  GoogleCredential credential = GoogleCredential.getApplicationDefault();
  credential = credential.createScoped(Arrays.asList("https://www.googleapis.com/auth/bigquery"));

  // Get a new access token.
  // Note that access tokens have an expiration. You can reuse a token rather than requesting a
  // new one if it is not yet expired.
  credential.refreshToken();
  String accessToken = credential.getAccessToken();

  // Set the content of the request.
  Dataset dataset = new Dataset();
  dataset.addLabel(labelKey, labelValue);
  HttpContent content = new JsonHttpContent(JSON_FACTORY, dataset);

  // Send the request to the BigQuery API.
  String urlFormat =
      "https://www.googleapis.com/bigquery/v2/projects/%s/datasets/%s"
          + "?fields=labels&access_token=%s";
  GenericUrl url = new GenericUrl(String.format(urlFormat, projectId, datasetId, accessToken));
  HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory();
  HttpRequest request = requestFactory.buildPostRequest(url, content);
  request.setParser(JSON_FACTORY.createJsonObjectParser());

  // Workaround for transports which do not support PATCH requests.
  // See: http://stackoverflow.com/a/32503192/101923
  request.setHeaders(new HttpHeaders().set("X-HTTP-Method-Override", "PATCH"));
  HttpResponse response = request.execute();

  // Check for errors.
  if (response.getStatusCode() != 200) {
    throw new RuntimeException(response.getStatusMessage());
  }

  Dataset responseDataset = response.parseAs(Dataset.class);
  System.out.printf(
      "Updated label \"%s\" with value \"%s\"\n",
      labelKey, responseDataset.getLabels().get(labelKey));
}

Node.js

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Node.js 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 sur l'API BigQuery Node.js.

// Import the Google Cloud client library
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();

async function labelDataset() {
  // Updates a label on a dataset.

  /**
   * TODO(developer): Uncomment the following lines before running the sample
   */
  // const datasetId = "my_dataset";

  // Retrieve current dataset metadata.
  const dataset = bigquery.dataset(datasetId);
  const [metadata] = await dataset.getMetadata();

  // Add label to dataset metadata
  metadata.labels = {color: 'green'};
  const [apiResponse] = await dataset.setMetadata(metadata);

  console.log(`${datasetId} labels:`);
  console.log(apiResponse.labels);
}

Python

Avant d'essayer cet exemple, suivez les instructions de configuration de Python décrites 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 sur l'API BigQuery Python.

# from google.cloud import bigquery
# client = bigquery.Client()
# dataset_ref = client.dataset('my_dataset')
# dataset = client.get_dataset(dataset_ref)  # API request

assert dataset.labels == {}
labels = {"color": "green"}
dataset.labels = labels

dataset = client.update_dataset(dataset, ["labels"])  # API request

assert dataset.labels == labels

Ajouter des libellés à une table ou à une vue

Vous pouvez attribuer un libellé à une table ou à une vue lors de sa création de l'une des manières suivantes :

  • En utilisant la commande bq mk de l'outil de ligne de commande
  • En appelant la méthode d'API tables.insert

Cette page explique comment ajouter un libellé à une table ou à une vue existante. Pour en savoir plus sur l'ajout d'un libellé lors de la création d'une table ou d'une vue, consultez les sections Créer une table et Créer une vue.

Vous pouvez ajouter un libellé après la création d'une table ou d'une vue de l'une des manières suivantes :

  • En utilisant Cloud Console ou l'interface utilisateur Web classique de BigQuery
  • En utilisant la commande bq update de l'outil de ligne de commande
  • En appelant la méthode d'API tables.patch
  • En utilisant les bibliothèques clientes

Comme les vues sont traitées comme des ressources de table, la méthode tables.patch permet de modifier à la fois des vues et des tables.

Autorisations requises

Pour ajouter un libellé à une table ou une vue existante, vous devez au minimum disposer des autorisations bigquery.tables.update et bigquery.tables.get. Les rôles Cloud IAM prédéfinis suivants incluent les autorisations bigquery.tables.update et bigquery.tables.get :

  • bigquery.dataEditor
  • bigquery.dataOwner
  • bigquery.admin

En outre, si un utilisateur possède les autorisations bigquery.datasets.create, il obtient également un accès bigquery.dataOwner à l'ensemble de données qu'il crée. L'accès correspondant au rôle bigquery.dataOwner donne à l'utilisateur la possibilité d'ajouter des libellés aux tables et vues contenues dans ses ensembles 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.

Ajouter un libellé à une table ou à une vue

Pour ajouter un libellé à une table ou à une vue existante, procédez comme suit :

Console

  1. Dans Cloud Console, sélectionnez la table ou la vue.

  2. Cliquez sur l'onglet Détails.

    Détails de la table

  3. Cliquez sur l'icône en forme de crayon située à droite de Labels (Libellés).

    Icône en forme de crayon pour modifier un libellé

  4. Dans la boîte de dialogue Modifier les libellés, effectuez les opérations suivantes :

    • Cliquez sur Add label (Ajouter un libellé).
    • Saisissez une clé et une valeur pour ajouter un libellé. Pour attribuer des libellés supplémentaires, cliquez sur Add label (Ajouter un libellé). Chaque clé ne peut être utilisée qu'une seule fois par ensemble de données, mais vous pouvez exploiter la même clé pour plusieurs ensembles de données au sein d'un même projet.
    • Modifiez les clés ou valeurs existantes pour mettre à jour un libellé.
    • Cliquez sur Mettre à jour pour enregistrer vos modifications.

LDD

Les instructions LDD (langage de définition de données) vous permettent de créer et de modifier des tables et des vues à l'aide de la syntaxe de requête SQL standard.

En savoir plus sur l'utilisation des instructions de langage de définition de données

Pour ajouter un libellé à l'aide d'une instruction LDD dans Cloud Console, procédez comme suit :

  1. Cliquez sur Saisir une nouvelle requête.

  2. Saisissez votre instruction LDD dans la zone de texte Query editor (Éditeur de requête).

     ALTER TABLE mydataset.mytable
     SET OPTIONS (
       labels=[("department", "shipping"), ("cost_center", "logistics")]
     )
     

  3. Cliquez sur Run query.

UI classique

  1. Dans l'UI Web de BigQuery, sélectionnez la table ou la vue.

  2. Sur la page des détails, cliquez sur le bouton Edit (Modifier) à droite du champ Libellés. L'exemple ci-dessous vous montre les détails d'une table.

    Modifier des étiquettes

  3. Dans la boîte de dialogue Edit Labels (Modifier les libellés) :

    • Saisissez une clé et une valeur pour ajouter un libellé. Pour attribuer des libellés supplémentaires, cliquez sur Add Label (Ajouter un libellé). Chaque clé ne peut être utilisée qu'une seule fois par table ou par vue, mais vous pouvez exploiter la même clé pour plusieurs tables ou vues au sein de différents ensembles de données.
    • Cliquez sur OK.

      Nouveau libellé

CLI

Pour ajouter un libellé à une table ou à une vue existante, exécutez la commande bq update avec l'option set_label. Répétez l'option pour ajouter plusieurs libellés.

Si la table ou la vue se trouve 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.

bq update \
--set_label key:value \
project_id:dataset.table_or_view

Où :

  • key:value correspond à une paire clé/valeur pour un libellé que vous souhaitez ajouter. La clé doit être unique.
  • project_id est l'ID du projet.
  • dataset correspond à l'ensemble de données contenant la table ou la vue à laquelle vous ajoutez un libellé.
  • table_or_view est le nom de la table ou de la vue à laquelle vous ajoutez un libellé.

Exemples :

Pour ajouter un libellé de table permettant de surveiller tout un service, saisissez la commande bq update et spécifiez department comme clé de libellé. Si vous souhaitez par exemple attribuer le libellé department:shipping à mytable dans votre projet par défaut, saisissez la commande suivante :

    bq update --set_label department:shipping mydataset.mytable

Pour ajouter un libellé de vue permettant de surveiller tout un service, saisissez la commande bq update et spécifiez department comme clé de libellé. Si vous souhaitez par exemple attribuer le libellé department:shipping à myview dans votre projet par défaut, saisissez la commande suivante :

    bq update --set_label department:shipping mydataset.myview

Pour attribuer plusieurs libellés à une table ou à une vue, répétez l'option set_label et spécifiez une clé unique pour chaque libellé. Si vous souhaitez par exemple attribuer les libellés department:shipping et cost_center:logistics à mytable dans votre projet par défaut, saisissez la commande suivante :

    bq update \
    --set_label department:shipping \
    --set_label cost_center:logistics \
    mydataset.mytable

API

Pour ajouter un libellé à une table ou à une vue existante, appelez la méthode tables.patch et renseignez la propriété labels de la ressource de table.

Comme les vues sont traitées comme des ressources de table, la méthode tables.patch permet de modifier à la fois des vues et des tables.

En outre, étant donné que la méthode tables.update remplace l'intégralité de la ressource d'ensemble de données, la méthode tables.patch est préférable.

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 sur 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")
tbl := client.Dataset(datasetID).Table(tableID)
meta, err := tbl.Metadata(ctx)
if err != nil {
	return err
}

update := bigquery.TableMetadataToUpdate{}
update.SetLabel("color", "green")
if _, err := tbl.Update(ctx, update, meta.ETag); err != nil {
	return err
}

Java

Cet exemple permet d'envoyer une requête à l'API BigQuery à l'aide de la bibliothèque cliente HTTP Google pour Java.

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Java 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 sur l'API BigQuery Java.

public static class Table {
  @Key private Map<String, String> labels;

  public Map<String, String> getLabels() {
    return this.labels;
  }

  public Table addLabel(String key, String value) {
    if (this.labels == null) {
      this.labels = new HashMap<>();
    }
    this.labels.put(key, value);
    return this;
  }
}

/**
 * Add or modify a label on a table.
 *
 * <p>See <a href="https://cloud.google.com/bigquery/docs/labeling-datasets">the BigQuery
 * documentation</a>.
 */
public static void labelTable(
    String projectId,
    String datasetId,
    String tableId,
    String labelKey,
    String labelValue)
    throws IOException {

  // Authenticate requests using Google Application Default credentials.
  GoogleCredential credential = GoogleCredential.getApplicationDefault();
  credential = credential.createScoped(Arrays.asList("https://www.googleapis.com/auth/bigquery"));

  // Get a new access token.
  // Note that access tokens have an expiration. You can reuse a token rather than requesting a
  // new one if it is not yet expired.
  credential.refreshToken();
  String accessToken = credential.getAccessToken();

  // Set the content of the request.
  Table table = new Table();
  table.addLabel(labelKey, labelValue);
  HttpContent content = new JsonHttpContent(JSON_FACTORY, table);

  // Send the request to the BigQuery API.
  String urlFormat =
      "https://www.googleapis.com/bigquery/v2/projects/%s/datasets/%s/tables/%s"
          + "?fields=labels&access_token=%s";
  GenericUrl url =
      new GenericUrl(String.format(urlFormat, projectId, datasetId, tableId, accessToken));
  HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory();
  HttpRequest request = requestFactory.buildPostRequest(url, content);
  request.setParser(JSON_FACTORY.createJsonObjectParser());

  // Workaround for transports which do not support PATCH requests.
  // See: http://stackoverflow.com/a/32503192/101923
  request.setHeaders(new HttpHeaders().set("X-HTTP-Method-Override", "PATCH"));
  HttpResponse response = request.execute();

  // Check for errors.
  if (response.getStatusCode() != 200) {
    throw new RuntimeException(response.getStatusMessage());
  }

  Table responseTable = response.parseAs(Table.class);
  System.out.printf(
      "Updated label \"%s\" with value \"%s\"\n",
      labelKey, responseTable.getLabels().get(labelKey));
}

Node.js

Avant d'essayer l'exemple ci-dessous, suivez la procédure de configuration pour Node.js 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 sur l'API BigQuery Node.js.

// Import the Google Cloud client library
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();

async function labelTable() {
  // Adds a label to an existing table.

  /**
   * TODO(developer): Uncomment the following lines before running the sample.
   */
  // const datasetId = 'my_dataset';
  // const tableId = 'my_table';

  const dataset = bigquery.dataset(datasetId);
  const [table] = await dataset.table(tableId).get();

  // Retrieve current table metadata
  const [metadata] = await table.getMetadata();

  // Add label to table metadata
  metadata.labels = {color: 'green'};
  const [apiResponse] = await table.setMetadata(metadata);

  console.log(`${tableId} labels:`);
  console.log(apiResponse.labels);
}

Python

Avant d'essayer cet exemple, suivez les instructions de configuration de Python décrites 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 sur l'API BigQuery Python.

# from google.cloud import bigquery
# client = bigquery.Client()
# table_ref = client.dataset('my_dataset').table('my_table')
# table = client.get_table(table_ref)  # API request

assert table.labels == {}
labels = {"color": "green"}
table.labels = labels

table = client.update_table(table, ["labels"])  # API request

assert table.labels == labels

Ajouter des libellés à une tâche

Vous pouvez attribuer des libellés à des tâches de requêtes via la ligne de commande en utilisant l'option --label de l'outil de ligne de commande. Ce dernier n'accepte l'ajout de libellés que pour les tâches de requêtes.

Vous pouvez également ajouter un libellé à une tâche envoyée via l'API en spécifiant la propriété labels dans la configuration de la tâche lorsque vous appelez la méthode jobs.insert. L'API peut être utilisée pour ajouter des libellés à tout type de tâche.

Vous ne pouvez pas ajouter de libellés à des tâches en attente, en cours ou terminées (ni mettre à jour les libellés).

Lorsque vous ajoutez un libellé à une tâche, celui-ci est inclus dans vos données de facturation.

Autorisations requises

Aucune autorisation particulière n'est requise pour ajouter un libellé à une tâche. Si vous disposez d'autorisations bigquery.jobs.create, vous pouvez ajouter un libellé à votre tâche lorsque vous l'envoyez.

Pour exécuter une tâche, vous devez au minimum disposer des autorisations bigquery.jobs.create. Les autorisations bigquery.jobs.create sont requises pour les tâches qui sont automatiquement créées par BigQuery, et celles que vous exécutez de manière automatisée.

Les rôles Cloud IAM prédéfinis suivants incluent les autorisations bigquery.jobs.create :

  • bigquery.user
  • bigquery.jobUser
  • bigquery.admin

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.

Ajouter un libellé à une tâche

Pour ajouter un libellé à une tâche, procédez comme suit :

Console

L'ajout de libellés aux tâches n'est pas possible via Cloud Console.

UI classique

L'ajout de libellés aux tâches n'est pas possible via l'UI Web classique de BigQuery.

CLI

Pour ajouter un libellé à une tâche de requête, exécutez la commande bq query avec l'option --label. Répétez l'option pour ajouter plusieurs libellés. L'option --nouse_legacy_sql indique que votre requête utilise la syntaxe SQL standard.

bq query --label key:value --nouse_legacy_sql 'query'

Où :

  • key:value correspond à une paire clé/valeur pour un libellé que vous souhaitez ajouter à la tâche de requête. La clé doit être unique. Pour ajouter plusieurs libellés à une tâche de requête, répétez l'option --label et spécifiez une clé unique pour chaque libellé.
  • query est une requête valide en syntaxe SQL standard.

Exemples :

Pour ajouter un libellé à une tâche de requête, saisissez la commande suivante :

    bq query \
    --label department:shipping \
    --nouse_legacy_sql \
    'SELECT
       column1, column2
     FROM
       `mydataset.mytable`'

Pour ajouter plusieurs libellés à une tâche de requête, répétez l'option --label et spécifiez une clé unique pour chaque libellé. Si vous souhaitez par exemple ajouter des libellés department:shipping et cost_center:logistics à une tâche de requête, saisissez la commande suivante :

    bq query \
    --label department:shipping \
    --label cost_center:logistics \
    --nouse_legacy_sql \
    'SELECT
       column1, column2
     FROM
       `mydataset.mytable`'

API

Pour ajouter un libellé à une tâche, appelez la méthode jobs.insert et renseignez la propriété labels de la configuration de tâche. Vous pouvez utiliser l'API pour ajouter des libellés à tout type de tâche.

Ajouter un tag

Un libellé qui comporte une clé avec une valeur vide fait office de tag. Vous pouvez créer un libellé sans valeur ou bien transformer un libellé existant en tag.

Les tags peuvent s'avérer utiles lorsque vous attribuez des libellés à une ressource, mais n'avez pas besoin d'utiliser le format clé:valeur. Par exemple, si vous disposez d'une table qui contient des données de test utilisées par plusieurs groupes (assistance, développement, etc.), vous pouvez lui attribuer le tag test_data pour l'identifier.

Pour ajouter un tag, procédez comme suit :

Console

  1. Dans Cloud Console, sélectionnez la ressource concernée (ensemble de données, table ou vue).

  2. Pour les ensembles de données, la page des détails correspondante s'ouvre automatiquement. Pour les tables et les vues, cliquez sur Détails pour ouvrir la page des détails.

    Détails de la table

  3. Sur la page des détails, cliquez sur l'icône en forme de crayon située à droite de Labels (Libellés).

    Icône en forme de crayon pour modifier un libellé

  4. Dans la boîte de dialogue Modifier les étiquettes, effectuez les opérations suivantes :

    • Cliquez sur Ajouter une étiquette.
    • Saisissez une nouvelle clé et laissez la valeur vide. Pour attribuer des tags supplémentaires, cliquez sur Add label (Ajouter un libellé) et répétez l'opération.
    • Cliquez sur Mettre à jour pour enregistrer vos modifications.

LDD

Les instructions LDD (langage de définition de données) vous permettent de créer et de modifier des tables et des vues à l'aide de la syntaxe de requête SQL standard.

En savoir plus sur l'utilisation des instructions de langage de définition de données

Pour ajouter un tag à l'aide d'une instruction LDD dans Cloud Console, procédez comme suit :

  1. Cliquez sur Saisir une nouvelle requête.

  2. Saisissez votre instruction LDD dans la zone de texte Query editor (Éditeur de requête).

     ALTER TABLE mydataset.mytable
     SET OPTIONS (
       labels=[("tag1", ""), ("tag2", "")]
     )
     

  3. Cliquez sur Exécuter la requête.

UI classique

  1. Dans l'UI Web, sélectionnez la ressource concernée (ensemble de données, table ou vue).

  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.

  3. Sur la page des détails, cliquez sur le bouton Edit (Modifier) à droite du champ Labels (Libellés).

  4. Dans la boîte de dialogue Edit Labels (Modifier les libellés) :

    • Saisissez une nouvelle clé et laissez la valeur vide. Pour attribuer des tags supplémentaires, cliquez sur Add Label (Ajouter un libellé).
    • Cliquez sur OK.

      Ajouter un tag

CLI

Pour ajouter un tag à une ressource existante, exécutez la commande bq update avec l'option set_label. Spécifiez la clé, suivie du caractère deux-points, mais ne renseignez pas la valeur.

bq update --set_label key: resource_id

Où :

  • key est la clé de libellé que vous souhaitez utiliser en tant que tag.
  • resource_id est un nom valide d'ensemble de données, de table ou de vue. Si la ressource se trouve dans un projet autre que celui par défaut, ajoutez l'ID du projet en respectant le format suivant : project_id:dataset.

Exemples :

Saisissez la commande suivante pour créer un tag test_data pour mydataset.mytable. mydataset se trouve dans votre projet par défaut.

bq update --set_label test_data: mydataset

API

Appelez la méthode datasets.patch ou tables.patch, puis ajoutez des libellés ayant pour valeur une chaîne vide ("") dans la ressource d'ensemble de données ou la ressource de table. Vous pouvez transformer des libellés existants en tags en remplaçant leurs valeurs par une chaîne vide.

Comme les vues sont traitées comme des ressources de table, la méthode tables.patch permet de modifier à la fois des vues et des tables. En outre, étant donné que la méthode tables.update remplace l'intégralité de la ressource d'ensemble de données, la méthode tables.patch est préférable.

Étapes suivantes

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

Envoyer des commentaires concernant…

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