Créer et gérer des tables

Cette page explique comment créer et effectuer des opérations sur Bigtable à l'aide de la console Google Cloud, de la Google Cloud CLI CLI cbt pour en savoir plus.

La CLI cbt prend en charge plusieurs commandes qui ne sont pas décrites sur cette page. Pour obtenir la liste complète des commandes, consultez la documentation de référence sur cbt.

Vous pouvez également créer et gérer des tables de manière automatisée avec les bibliothèques clientes ou les API de service Cloud Bigtable.

Pour savoir comment créer et gérer des vues autorisées d'une table, consultez la section Vues autorisées.

Avant de commencer

Si vous envisagez d'utiliser vos tables à l'aide d'outils de ligne de commande, suivez la procédure décrite dans cette section.

  1. Installer gcloud CLI

  2. Facultatif : Si vous prévoyez d'utiliser la CLI cbt, suivez les instructions de la section Installer la CLI cbt, y compris l'étape de création d'un fichier .cbtrc.

    Les instructions concernant la CLI cbt décrites sur cette page supposent que vous avez défini l'ID de projet et l'ID d'instance dans votre fichier .cbtrc. Vous pouvez également utiliser la Les options -project et -instance pour définir ces valeurs chaque fois que vous exécutez une CLI cbt .

Créer une table

Lorsque vous créez une table, vous n'avez pas besoin de spécifier les familles de colonnes qui doivent y être utilisées. Vous pourrez en ajouter ou en supprimer ultérieurement.

Console

Pour créer une table dans une instance, procédez comme suit :

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

  4. Saisissez un ID de table.

  5. Ajouter des familles de colonnes (facultatif)

    Vous pouvez ajouter des colonnes maintenant ou ultérieurement. Une table doit comporter au moins une famille de colonnes pour que vous puissiez y écrire des données. Une table doit comporter au moins une famille de colonnes pour que vous puissiez y écrire des données ou en lire un flux de modifications.

  6. Facultatif: activez un flux de modifications pour la table. Avant d'activer un flux de modifications, assurez-vous de comprendre les implications, y compris les coûts de stockage accrus et les exigences d'utilisation des profils d'application. Pour en savoir plus, consultez la section Présentation des flux de modifications.

    1. Sélectionnez Activer le flux de modifications.

    2. Dans le champ Délai d'expiration, saisissez un nombre compris entre 1 et 7 spécifier le nombre de jours pendant lesquels les données du flux de modifications doivent et conservés.

    3. Cliquez sur Créer.

  7. Facultatif : Si vous ne souhaitez pas que Bigtable crée une sauvegarde quotidienne de la table, décochez la case à côté de Activer la sauvegarde automatique. Pour en savoir plus, consultez la section Utiliser les alertes backup (Preview).

  8. Cliquez sur Créer une table.

gcloud

Pour créer une table, exécutez la commande suivante. Pour obtenir la liste complète des options, consultez gcloud bigtable instances tables create.

gcloud bigtable instances tables create TABLE_ID \
    --instance=INSTANCE_ID \
    --project=PROJECT_ID \
    --column-families=COLUMN-FAMILIES

Remplacez les éléments suivants :

  • TABLE_ID : ID unique pour la nouvelle table.
  • INSTANCE_ID : ID de l'instance
  • PROJECT_ID : projet qui contiendra la nouvelle table.
  • COLUMN-FAMILIES : liste de noms de familles de colonnes, séparés par des virgules. Vous pourrez en ajouter d'autres ultérieurement.

Facultatif :

  • Pour protéger la table contre la suppression, ajoutez --deletion-protection à la commande. Si vous n'appliquez pas ce paramètre, le tableau peuvent être supprimées. Vous pouvez également autoriser explicitement la suppression de la table en ajoutant --no-deletion-protection.

  • Pour activer un flux de modifications pour la table, spécifiez une durée de conservation pour les données du flux de modifications. Avant d'activer un flux de modifications, assurez-vous que vous comprenez les conséquences, y compris l'augmentation des coûts de stockage et les exigences d'utilisation du profil d'application. Pour en savoir plus, consultez la section Présentation des flux de modifications.

    --change-stream-retention-period=RETENTION_PERIOD
    

    Remplacez RETENTION_PERIOD par la durée pendant laquelle Bigtable doit conserver les données des flux de modifications pour la table. La période doit être comprise entre un et sept jours. Les unités acceptées sont les jours (d), heures (h), minutes (m) et secondes (s). Exemples: 48h ou 6d

  • Pour autoriser Bigtable à créer une sauvegarde quotidienne de votre table, activez la sauvegarde automatique (bêta) :

    gcloud bigtable instances tables create TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --column-families=COLUMN-FAMILIES \
        --enable-automated-backup
    

cbt

Utilisez la commande suivante, en remplaçant TABLE_NAME par le nom de votre table. Vous ne pouvez pas utiliser la CLI cbt pour créer une table avec un flux de modifications activé.

cbt createtable TABLE_ID

Facultatif : Pour créer une colonne agrégée, procédez comme suit : famille dans le tableau, ajoutez le nom de la famille de colonnes avec le type d'agrégation. L'exemple suivant crée une famille de colonnes agrégative avec une stratégie de récupération de mémoire de never.

cbt createtable TABLE_ID families=FAMILY_NAME:never:TYPE

Remplacez les éléments suivants :

  • TABLE_ID : ID unique pour la nouvelle table.
  • FAMILY_NAME : liste de familles de colonnes séparées par une virgule noms. Vous pourrez en ajouter d'autres ultérieurement.
  • TYPE : type d'agrégation. Doit être intsum, intmin, intmax ou inthll.

Pour plus d'options, consultez la section Créer un tableau dans le CLI cbt référence.

Si vous avez supprimé une table par erreur, n'essayez pas de créer manuellement la table supprimée. Exécutez la commande gcloud CLI bigtable instances tables undelete pour récupérer la table.

Facultatif : Diviser la table en fonction d'une clé de ligne

Pour optimiser les performances, Bigtable divise en permanence les tables sur plusieurs nœuds, répartit de manière uniforme la quantité de données stockées sur chaque nœud et sépare, dans la mesure du possible, les lignes fréquemment consultées. Ce le processus en cours est automatique.

Lorsque vous créez une table, vous pouvez spécifier des divisions initiales. Bigtable divise la table au niveau des clés de ligne que vous fournissez. Si les espaces de clés sont trop volumineux, Bigtable divise davantage la table. La les fractionnements initiaux sont conservés pendant environ 24 heures après la création de la table terminé. Vous pouvez fournir jusqu'à 100 clés de ligne dans lesquelles les divisions initiales doivent se produisent.

Par exemple, vous pouvez désigner des lignes spécifiques pour pré-diviser votre table si vous êtes sur le point d'y écrire de nombreuses lignes.

Cette division préalable de la table n'est pas indispensable, mais elle présente des avantages, car elle fournit à Bigtable des informations sur l'endroit susceptible d'être impacté par la charge et le volume de données lors de la création de la table. La division préalable épargne à Bigtable la division des tables et le rééquilibrage de la charge concomitant à l'arrivée des données.

Console

Vous ne pouvez pas effectuer une division préalable des lignes lorsque vous créez une table à l'aide de Google Cloud Console.

gcloud

Pour diviser une table par clé de ligne, exécutez la commande suivante. Pour obtenir la liste complète des options, consultez gcloud bigtable instances tables create.

gcloud bigtable instances tables create TABLE_ID\
    --instance=INSTANCE_ID \
    --project=PROJECT_ID \
    --column-families=COLUMN-FAMILIES \
    --splits=SPLITS

Remplacez les éléments suivants :

  • TABLE_ID : ID unique pour la nouvelle table.
  • INSTANCE_ID : ID de l'instance
  • PROJECT_ID : projet qui contiendra la nouvelle table.
  • COLUMN-FAMILIES : liste de noms de familles de colonnes, séparés par des virgules. Vous pourrez ajouter d'autres familles de colonnes ultérieurement.
  • SPLITS: clés de ligne dans lesquelles la table doit se trouver initialement (par exemple, 10,20).

cbt

Pour effectuer une division préalable d'une table en fonction de la clé de ligne, utilisez la syntaxe suivante pour créer la table. Remplacez [TABLE_NAME] par le nom de la table et [SPLITS] par une liste de préfixes de clés de ligne séparés par une virgule à utiliser pour les divisions préalables.

```
cbt createtable [TABLE_NAME] splits=[SPLITS]
```

Par exemple, pour effectuer une division préalable de la table my-table au niveau des clés de ligne commençant par 10 et 20 :

```
cbt createtable my-table splits=10,20
```

Modifier les familles de colonnes d'une table

Vous pouvez ajouter des familles de colonnes à une table existante. Si le tableau ne contient pas protection contre la suppression activée, vous pouvez supprimer les familles de colonnes de la table.

Ajouter des familles de colonnes

Console

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

  4. Cliquez sur Modifier pour la table que vous souhaitez modifier.

  5. Pour chaque famille de colonnes que vous souhaitez ajouter, procédez comme suit :

    1. Cliquez sur Ajouter une famille de colonnes.
    2. Fournissez un identifiant unique pour la famille de colonnes.
    3. Définissez la stratégie de récupération de mémoire pour la famille de colonnes.
    4. Cliquez sur OK.
    5. Cliquez sur Enregistrer.

gcloud

Vous ne pouvez pas ajouter de familles de colonnes à une table à l'aide de la gcloud CLI.

cbt

Pour ajouter une famille de colonnes à une table, utilisez la commande suivante :

cbt createfamily TABLE_ID FAMILY_NAME

Par exemple, pour ajouter les familles de colonnes cf1 et cf2 à la table my-table :

cbt createfamily my-table cf1
cbt createfamily my-table cf2

Facultatif : Pour ajouter une famille de colonnes agrégatives à la table, ajoutez le type d'agrégation au nom de la famille de colonnes. Les éléments suivants : crée une table comportant une famille de colonnes agrégées avec une récupération de mémoire règle never.

cbt createfamily TABLE_ID FAMILY_NAME:never:TYPE

Remplacez les éléments suivants :

  • TABLE_ID : ID de la table
  • FAMILY_NAME : liste de noms de familles de colonnes, séparés par des virgules. Vous pourrez en ajouter d'autres ultérieurement.
  • TYPE: type d'agrégation. Doit être intsum, intmin, intmax ou inthll.

Supprimer des familles de colonnes

Vous pouvez supprimer des familles de colonnes dans une table pour laquelle la protection contre la suppression n'est pas activée.

Console

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

  4. Cliquez sur Modifier pour la table que vous souhaitez modifier.

  5. Pour chaque famille de colonnes que vous souhaitez supprimer, procédez comme suit :

    1. Passez la souris sur la ligne de la famille de colonnes que vous souhaitez supprimer.
    2. Cliquez sur .
  6. Cliquez sur Enregistrer.

  7. Pour confirmer que vous comprenez que la suppression d'une famille de colonnes est définitive et que toutes les données de la famille de colonnes seront supprimées, saisissez "Supprimer les familles de colonnes" dans le champ de texte.

  8. Cliquez sur Confirmer.

gcloud

Vous ne pouvez pas utiliser la CLI gcloud pour supprimer des familles de colonnes d'une table.

cbt

Pour supprimer une famille de colonnes d'une table, utilisez la commande suivante, en remplaçant [TABLE_NAME] par le nom de la table et [FAMILY_NAME] par le nom de la famille de colonnes :

cbt deletefamily [TABLE_NAME] [FAMILY_NAME]

Par exemple, pour supprimer la famille de colonnes cf2 de la table my-table :

cbt deletefamily my-table cf2

Afficher la liste des tables

Console

Pour afficher la liste de tables dans une instance :

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

    • Cliquez sur la flèche en regard de l'ID de la table pour développer la liste des réplications de la table.
    • Cliquez sur Afficher les métriques à côté du nom d'une table pour afficher les données de surveillance de la table en question.

gcloud

Pour afficher la liste des tables, exécutez la commande gcloud bigtable instances tables list.

gcloud bigtable instances tables list --instances=INSTANCE_IDS

Remplacez les éléments suivants :

  • INSTANCE_IDS : liste d'ID d'instance séparés par une virgule.

cbt

Pour afficher la liste des tables, exécutez la commande suivante :

    cbt ls INSTANCE_ID

Remplacez les éléments suivants :

  • INSTANCE_ID : identifiant permanent de l'instance.

C++

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez les identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

namespace cbt = ::google::cloud::bigtable;
namespace cbta = ::google::cloud::bigtable_admin;
using ::google::cloud::StreamRange;
[](cbta::BigtableTableAdminClient admin, std::string const& project_id,
   std::string const& instance_id) {
  std::string instance_name = cbt::InstanceName(project_id, instance_id);

  google::bigtable::admin::v2::ListTablesRequest r;
  r.set_parent(instance_name);
  r.set_view(google::bigtable::admin::v2::Table::NAME_ONLY);

  StreamRange<google::bigtable::admin::v2::Table> tables =
      admin.ListTables(std::move(r));
  for (auto& table : tables) {
    if (!table) throw std::move(table).status();
    std::cout << table->name() << "\n";
  }
}

C#

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez les identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

// Lists tables in intance.
// Initialize request argument(s).
ListTablesRequest request = new ListTablesRequest
{
    ParentAsInstanceName = s_instanceName
};
try
{
    // Make the request.
    PagedEnumerable<ListTablesResponse, Table> response = bigtableTableAdminClient.ListTables(request);

}
catch (Exception ex)
{
    Console.WriteLine($"Error listing tables {ex.Message}");
}

Java

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

// Lists tables in the current instance.
try {
  List<String> tableIds = adminClient.listTables();
  for (String tableId : tableIds) {
    System.out.println(tableId);
  }
} catch (NotFoundException e) {
  System.err.println("Failed to list tables from a non-existent instance: " + e.getMessage());
}

Node.js

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

// List tables in current project
const [tables] = await instance.getTables();
tables.forEach(table => {
  console.log(table.id);
});

PHP

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

use Google\Cloud\Bigtable\Admin\V2\Client\BigtableInstanceAdminClient;
use Google\Cloud\Bigtable\Admin\V2\Client\BigtableTableAdminClient;
use Google\Cloud\Bigtable\Admin\V2\ListTablesRequest;

/**
 * List tables in an instance
 *
 * @param string $projectId The Google Cloud project ID
 * @param string $instanceId The ID of the Bigtable instance
 */
function list_tables(
    string $projectId,
    string $instanceId
): void {
    $instanceAdminClient = new BigtableInstanceAdminClient();
    $tableAdminClient = new BigtableTableAdminClient();

    $instanceName = $instanceAdminClient->instanceName($projectId, $instanceId);

    printf('Listing Tables:' . PHP_EOL);
    $listTablesRequest = (new ListTablesRequest())
        ->setParent($instanceName);
    $tables = $tableAdminClient->listTables($listTablesRequest)->iterateAllElements();
    $tables = iterator_to_array($tables);
    if (empty($tables)) {
        print('No table exists.' . PHP_EOL);
        return;
    }
    foreach ($tables as $table) {
        print($table->getName() . PHP_EOL);
    }
}

Python

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez la section Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez les identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

tables = instance.list_tables()
print("Listing tables in current project...")
if tables != []:
    for tbl in tables:
        print(tbl.table_id)
else:
    print("No table exists in current project...")

Ruby

Pour savoir comment installer et utiliser la bibliothèque cliente pour Bigtable, consultez Bibliothèques clientes Bigtable.

Pour vous authentifier auprès de Bigtable, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

# instance_id = "my-instance"
bigtable.tables(instance_id).all.each do |t|
  puts "Table: #{t.name}"
end

Afficher les informations d'une table

Console

Pour afficher des informations sur une table, procédez comme suit :

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance. Pour chaque table, la console Google Cloud affiche le nombre de clusters sur lesquels la table est stockée, son état, son utilisation du stockage et les identifiants de toutes les sauvegardes actuelles de la table.

  4. Pour afficher les noms des familles de colonnes de la table, cliquez sur . Pour fermer le volet Modifier la table, cliquez sur Annuler.

  5. Pour afficher des détails supplémentaires sur la table, y compris les métriques au niveau de la table et l'état de la réplication, cliquez sur le nom de la table.

gcloud

Pour afficher des informations sur une table, exécutez la commande gcloud bigtable instances tables describe.

gcloud bigtable instances tables describe TABLE_ID \
    --instance=INSTANCE_ID

Remplacez les éléments suivants :

  • TABLE_ID : ID unique de la table
  • INSTANCE_ID: ID de l'instance.

cbt

Vous pouvez utiliser CLI cbt pour obtenir la liste des familles de colonnes existantes tableau.

Utilisez la commande suivante en remplaçant [TABLE_NAME] par le nom de la table :

cbt ls [TABLE_NAME]

Définir des stratégies de récupération de mémoire

Une stratégie de récupération de mémoire indique à Bigtable quelles données conserver et quelles données marquer pour suppression. Les règles de récupération de mémoire sont définies au niveau de la famille de colonnes. Vous pouvez les définir lors de la création de la table ou ultérieurement.

Lorsque vous créez une famille de colonnes, vous pouvez spécifier le nombre de cellules que vous souhaitez conserver dans chaque colonne de cette famille. Si vous ne définissez pas ce paramètre, Bigtable utilise l'un des paramètres par défaut suivants :

  • Si vous créez la famille de colonnes avec le client Cloud Bigtable HBase pour Java, de l'interface système HBase, ou d'un autre outil qui utilise le client HBase pour Java, Bigtable ne conserve qu'une seule cellule pour chaque intersection de ligne/colonne dans la famille de colonnes. Ce paramètre par défaut est conforme à HBase.

  • Si vous créez la famille de colonnes à l'aide de la console Google Cloud, toute autre bibliothèque cliente CLI cbt , Bigtable conserve une liaison infinie le nombre de cellules dans chaque colonne.

Consultez la page Configurer des stratégies de récupération de mémoire pour obtenir des instructions détaillées sur l'affichage, la définition et la mise à jour des stratégies de récupération de mémoire.

Sauvegarder et restaurer une table

Pour savoir comment sauvegarder et restaurer une table à partir d'une sauvegarde, consultez la page Gérer des sauvegardes.

Si vous avez activé la sauvegarde automatique lors de la création d'une table, vous pouvez modifier configuration de sauvegarde automatisée pour une table afin d'activer ou de désactiver l'automatisation ou définissez une durée de conservation maximale 90 jours à compter de la création de la sauvegarde. Pour en savoir plus, consultez Utiliser la sauvegarde automatique.

Activer, désactiver ou configurer un flux de modifications

Pour obtenir des instructions sur les tâches suivantes, consultez Configurez un flux de modifications.

  • Activer un flux de modifications sur une table existante
  • Désactivation d'un flux de modifications
  • Mettre à jour la durée de conservation d'un flux de modifications

Supprimer une table

La suppression d'une table supprime également toutes les vues autorisées de la table. Vous ne pouvez pas supprimer une table si la protection contre la suppression est activée pour certaines de ses vues autorisées.

Console

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

  4. Cliquez sur pour la table que vous souhaitez supprimer.

  5. Cliquez sur Supprimer.

  6. Pour confirmer que vous reconnaissez que cette action supprimera la table de tous les clusters de l'instance et que vous ne disposez que de sept jours pour annuler la suppression de la table, saisissez son ID dans la zone de texte.

  7. Cliquez sur Supprimer.

gcloud

  1. Pour supprimer des tables, exécutez la commande gcloud bigtable instances tables delete.

    gcloud bigtable instances tables delete --instance=INSTANCE_ID
    

    Remplacez les éléments suivants :

    • INSTANCE_ID: ID de l'instance.
  2. Dans le terminal, saisissez y pour confirmer la suppression de la table.

cbt

Pour supprimer une table, utilisez la commande suivante, en remplaçant [TABLE_NAME] par le nom de la table :

cbt deletetable [TABLE_NAME]

Annulez la suppression d'une table.

Si vous supprimez accidentellement une table, vous pouvez utiliser la commande bigtable instances tables undelete de gcloud CLI pour annuler la suppression de la table ou la récupérer. N'essayez pas de créer manuellement la table supprimée.

Pour annuler la suppression d'une table, exécutez la commande suivante dans le terminal:

gcloud bigtable instances tables undelete TABLE_ID --instance=INSTANCE_ID

Remplacez les éléments suivants :

  • TABLE_ID: identifiant unique de la table.
  • INSTANCE_ID : ID de l'instance

Les limites suivantes s'appliquent :

  • La possibilité d'annuler la suppression d'une table est disponible environ sept jours à compter de la date de suppression de la table.
  • Vous ne pouvez pas annuler la suppression d'une table à l'aide de la console Google Cloud, les bibliothèques clientes Cloud Bigtable, ou CLI cbt pour en savoir plus.
  • Vous ne pouvez pas annuler la suppression d'une table d'une instance qui a été supprimée.
  • Vous ne pouvez pas annuler la suppression d'une table sur laquelle CMEK est activé.
  • Les liaisons de stratégie IAM précises qu'une table possède avant la suppression ne sont pas restaurées lorsque la table est annulée.

Vous pouvez éventuellement vérifier l'état de l'opération undelete dans les journaux d'audit.

Modifier la protection contre la suppression

Vous pouvez activer ou désactiver la protection contre la suppression d'une table si vous êtes un principal dans un rôle qui inclut l'autorisation bigtable.tables.update, comme roles/bigtable.admin. La protection contre la suppression empêche la suppression de la table, toutes les familles de colonnes de la table et l'instance qui contient la table.

L'activation de la protection contre la suppression pour une table ne l'active pas pour les vues autorisées du tableau. De même, la désactivation de la protection contre la suppression d'une table ne la désactive pas pour les vues autorisées de la table. Vous devez mettre à jour les autorisations vues séparément.

Console

  1. Ouvrez la liste des instances Bigtable dans la console Google Cloud.

    Ouvrir la liste des instances

  2. Cliquez sur l'instance dont vous souhaitez consulter les tables.

  3. Cliquez sur Tables dans le volet de gauche.

    La page Tables affiche une liste des tables de l'instance.

  4. Cliquez sur  à côté de l'ID de la table.

  5. Pour activer la protection contre la suppression, cliquez sur Empêcher la suppression. Pour désactiver la protection contre la suppression, cliquez sur Activer la suppression. Seule l'option valide est visible.

gcloud

Pour activer la protection contre la suppression d'une table, exécutez la commande gcloud bigtable instances table update :

gcloud bigtable instances tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --deletion-protection

Pour désactiver la protection contre la suppression pour une table, exécutez la commande suivante :

gcloud bigtable instances tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --no-deletion-protection

Remplacez les éléments suivants :

+ TABLE_ID: the unique identifier for the table
+ INSTANCE_ID: the ID of the instance

cbt

Vous ne pouvez pas utiliser la CLI cbt pour activer ou désactiver la protection contre la suppression.