Tabellen erstellen und verwalten

Auf dieser Seite wird erläutert, wie Sie Vorgänge in Bigtable erstellen und ausführen Tabellen mit der Google Cloud Console, der Google Cloud CLI oder den cbt-Befehlszeile .

Die cbt-Befehlszeile unterstützt verschiedene Befehle, die auf dieser Seite nicht beschrieben werden. Eine vollständige Liste der Befehle finden Sie in der cbt-Referenz.

Sie können Tabellen auch programmatisch erstellen und verwalten mit dem Cloud Bigtable-Clientbibliotheken oder Dienst-APIs

Eine Anleitung zum Erstellen und Verwalten autorisierter Ansichten einer Tabelle finden Sie unter autorisierten Ansichten.

Hinweise

Wenn Sie Ihre Tabellen mithilfe von Befehlszeilentools bearbeiten möchten, folgen Sie den Schritten in diesem Abschnitt.

  1. Installieren Sie die gcloud CLI.

  2. Optional: Wenn Sie die Methode cbt-Befehlszeile folgen Sie der Anleitung unter Installieren des cbt-Befehlszeile , einschließlich des Schritts zum Erstellen einer .cbtrc-Datei.

    Die cbt-Befehlszeile In den Anleitungen auf dieser Seite wird vorausgesetzt, dass Sie das Projekt ID und Instanz-ID in der Datei .cbtrc. Alternativ können Sie den Die Flags -project und -instance, um diese Werte bei jeder Ausführung eines cbt-Befehlszeile .

Tabelle erstellen

Wenn Sie eine Tabelle erstellen, müssen Sie die in der Tabelle zu verwendenden Spaltenfamilien nicht angeben. Sie können Spaltenfamilien später löschen oder hinzufügen.

Console

So erstellen Sie in einer Instanz eine neue Tabelle:

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

  4. Geben Sie eine Tabellen-ID für die Tabelle ein.

  5. Spaltenfamilien hinzufügen (optional)

    Sie können Spalten jetzt oder später hinzufügen. Eine Tabelle muss mindestens eine Spaltenfamilie haben, bevor Sie Daten in sie schreiben können. Eine Tabelle muss mindestens eine Spaltenfamilie, bevor Sie Daten in sie schreiben oder einen Änderungsstream lesen können daraus entfernt werden.

  6. Optional: Aktivieren Sie einen Änderungsstream für die Tabelle. Bevor Sie ein sollten Sie sich mit den Auswirkungen vertraut machen, höhere Speicherkosten und Anforderungen an die Nutzung des App-Profils. Zur Überprüfung finden Sie unter Änderungsstreams.

    1. Wählen Sie Änderungsstream aktivieren aus.

    2. Geben Sie im Feld Ablaufzeit eine Zahl zwischen 1 und 7 ein, Anzahl der Tage angeben, für die die Daten des Änderungsstreams bleiben erhalten.

    3. Klicken Sie auf Erstellen.

  7. Klicken Sie auf Tabelle erstellen.

gcloud

Führen Sie den folgenden Befehl aus, um eine Tabelle zu erstellen. Weitere Informationen finden Sie unter gcloud Bigtable-Instanzentabellen erstellen finden Sie eine vollständige Liste der Optionen.

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

Dabei gilt:

  • TABLE_ID: Eine eindeutige ID für die neue Tabelle
  • INSTANCE_ID: die ID der Instanz
  • PROJECT_ID: das Projekt, das die neue Tabelle enthalten wird
  • COLUMN-FAMILIES: Eine durch Kommas getrennte Liste von Spaltenfamiliennamen. Sie können später weitere Spaltenfamilien hinzufügen.

Optional:

  • Um die Tabelle vor dem Löschen zu schützen, fügen Sie den Befehl mit --deletion-protection Wenn Sie diese Einstellung nicht anwenden, können gelöscht werden. Sie können das Löschen von Tabellen auch explizit zulassen, indem Sie --no-deletion-protection wird angehängt.

  • Um einen Änderungsstream für die Tabelle zu aktivieren, geben Sie eine Aufbewahrungsdauer für Änderungsstreamdaten. Stellen Sie vor dem Aktivieren eines Änderungsstreams sicher, dass Sie die Auswirkungen verstehen, einschließlich erhöhter Speicherkosten und Nutzungsanforderungen für App-Profile. Diese Details finden Sie in der Änderungsstreams

    --change-stream-retention-period=RETENTION_PERIOD
    

    Ersetzen Sie RETENTION_PERIOD durch die Dauer des Bigtable sollte Änderungsstreamdaten für die Tabelle speichern. Die Dauer muss zwischen einem und sieben Tagen liegen. Zulässige Einheiten sind Tage (d), Stunden (h), Minuten (m) und Sekunden (s). Beispiele: 48h oder 6d

  • Verwenden Sie den folgenden Befehl, damit Bigtable täglich eine Sicherung Ihrer Tabelle erstellen kann:

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

cbt

Verwenden Sie den folgenden Befehl und ersetzen Sie dabei TABLE_NAME durch den Namen Ihres . Sie können das cbt-Befehlszeile um eine Tabelle mit einer Änderung Stream aktiviert.

cbt createtable TABLE_ID

Optional: So erstellen Sie eine zusammengefasste Spalte Familie (Vorabversion) in die Tabelle ein. hängen Sie den Namen der Spaltenfamilie für ganzzahlige Summen mit :instsum an und ersetzen Sie FAMILY_NAME durch den Namen der neuen Aggregatspalte Familie. Mit dem folgenden Befehl wird eine aggregierte Spaltenfamilie mit einer automatischen Speicherbereinigung erstellt Richtlinie zur Datenerhebung für never.

cbt createtable TABLE_ID families=FAMILY_NAME:never:intsum

Wenn Sie eine Tabelle versehentlich gelöscht haben, versuchen Sie nicht, die Tabelle manuell zu erstellen. gelöschte Tabelle. gcloud CLI verwenden Befehl bigtable instances tables undelete zur Wiederherstellung des .

Tabelle nach dem Zeilenschlüssel teilen

Zur Leistungsoptimierung teilt Bigtable Tabellen kontinuierlich auf über mehrere Knoten hinweg, wobei die auf jedem Knoten gespeicherte Datenmenge gleichmäßig verteilt ist. und dafür sorgen, dass häufig aufgerufene Zeilen nach Möglichkeit auseinanderliegen. Dieses erfolgt automatisch.

Wenn Sie eine neue Tabelle erstellen, können Sie anfängliche Tabellenaufteilungen angeben. Bigtable teilt die Tabelle nach den von Ihnen angegebenen Zeilenschlüsseln auf. Wenn die Schlüsselräumlichkeiten zu groß sind, teilt Bigtable die Tabelle weiter auf. Die Die anfänglichen Aufteilungen werden für etwa 24 Stunden beibehalten, nachdem die Tabelle erstellt wurde. abgeschlossen ist. Sie können bis zu 100 Zeilenschlüssel angeben, bei denen die anfänglichen Aufteilungen auftreten.

Beispielsweise können Sie bestimmte Zeilen festlegen, um Ihre Tabelle im Voraus aufzuteilen, wenn viele Zeilen in die Tabelle schreiben.

Eine Tabelle muss nicht unbedingt im Voraus aufgeteilt werden, es ist jedoch von Vorteil, da Cloud Bigtable so schon beim Erstellen der Tabelle darüber informiert wird, wo die Last und das Datenvolumen wahrscheinlich landen werden. Die Aufteilung im Voraus verhindert, dass Bigtable gleichzeitig die Tabellen aufteilen und die Last ausgleichen muss, während die Daten eintreffen.

Console

Sie können die Zeilen nicht im Voraus teilen, wenn Sie eine Tabelle mit der Methode Google Cloud Console

gcloud

Führen Sie den folgenden Befehl aus, um eine Tabelle nach Zeilenschlüssel aufzuteilen. Weitere Informationen finden Sie unter gcloud Bigtable-Instanzentabellen erstellen finden Sie eine vollständige Liste der Optionen.

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

Dabei gilt:

  • TABLE_ID: Eine eindeutige ID für die neue Tabelle
  • INSTANCE_ID: die ID der Instanz
  • PROJECT_ID: das Projekt, das die neue Tabelle enthalten wird
  • COLUMN-FAMILIES: Eine durch Kommas getrennte Liste von Spaltenfamiliennamen. Sie können später weitere Spaltenfamilien hinzufügen.
  • SPLITS: die Zeilenschlüssel, in denen sich die Tabelle anfänglich befinden sollte aufgeteilt werden, z. B. 10,20.

cbt

Wenn Sie eine Tabelle basierend auf dem Zeilenschlüssel im Voraus aufteilen möchten, erstellen Sie die Tabelle mit der folgenden Syntax. Ersetzen Sie [TABLE_NAME] durch den Tabellennamen und [SPLITS] durch eine durch Kommas getrennte Liste mit Zeilenschlüsselpräfixen, die für die Vorabaufteilung verwendet werden sollen.

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

Verwenden Sie folgenden Befehl, um die Tabelle my-table beispielsweise im Voraus bei den Zeilenschlüsseln aufzuteilen, die mit 10 und 20 beginnen:

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

Spaltenfamilien in einer Tabelle anpassen

Sie können Spaltenfamilien in einer vorhandenen Tabelle hinzufügen. Wenn in der Tabelle keine Löschschutz aktiviert haben, können Sie Spaltenfamilien in der Tabelle.

Spaltenfamilien hinzufügen

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

  4. Klicken Sie für die Tabelle, die Sie ändern möchten, auf Bearbeiten.

  5. Geben Sie für jede Spaltenfamilie, die Sie hinzufügen möchten, folgende Schritte ein:

    1. Klicken Sie auf Spaltenfamilie hinzufügen.
    2. Geben Sie eine eindeutige Kennung für die Spaltenfamilie ein.
    3. Legen Sie die Richtlinie für die automatische Speicherbereinigung für die Spaltenfamilie fest.
    4. Klicken Sie auf Fertig.
    5. Klicken Sie auf Speichern.

gcloud

Sie können die gcloud CLI nicht verwenden, um einer Tabelle Spaltenfamilien hinzuzufügen.

cbt

Verwenden Sie den folgenden Befehl, um eine Spaltenfamilie einer Tabelle hinzuzufügen. Dabei ersetzen Sie [TABLE_NAME] durch den Tabellennamen und [FAMILY_NAME] durch den Namen der Spaltenfamilie:

cbt createfamily [TABLE_NAME] [FAMILY_NAME]

Führen Sie beispielsweise den folgenden Befehl aus, um die Spaltenfamilien cf1 und cf2 zur Tabelle my-table hinzuzufügen:

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

Optional: So fügen Sie eine zusammengefasste Spalte hinzu: Familie (Vorabversion) in die Tabelle ein, hängen Sie den Namen der Spaltenfamilie für ganzzahlige Summen mit :instsum an und ersetzen Sie FAMILY_NAME mit dem Namen der neuen Aggregat-Spaltenfamilie. Mit dem folgenden Befehl wird eine Tabelle mit einem Aggregierte Spaltenfamilie mit der Richtlinie für die automatische Speicherbereinigung never.

cbt createtable TABLE_ID families=FAMILY_NAME:never:intsum

Spaltenfamilien löschen

Sie können Spaltenfamilien in einer Tabelle löschen, die keine Löschschutz aktiviert.

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

  4. Klicken Sie für die Tabelle, die Sie ändern möchten, auf Bearbeiten.

  5. Führen Sie für jede Spaltenfamilie, die Sie löschen möchten, die folgenden Schritte aus:

    1. Bewegen Sie den Mauszeiger auf die Zeile für die Spaltenfamilie, die Sie löschen möchten.
    2. Klicken Sie auf .
  6. Klicken Sie auf Speichern.

  7. Um zu bestätigen, dass Sie verstanden haben, dass das Löschen einer Spaltenfamilie dauerhaft ist und dass alle Daten in der Spaltenfamilie gelöscht werden, geben Sie "Spaltenfamilien löschen" in das Textfeld ein.

  8. Klicken Sie auf Bestätigen.

gcloud

Sie können die gcloud CLI nicht verwenden, um Spaltenfamilien aus einer Tabelle zu löschen.

cbt

Verwenden Sie den folgenden Befehl, um eine Spaltenfamilie aus einer Tabelle zu löschen. Dabei ersetzen Sie [TABLE_NAME] durch den Tabellennamen und [FAMILY_NAME] durch den Namen der Spaltenfamilie:

cbt deletefamily [TABLE_NAME] [FAMILY_NAME]

Führen Sie beispielsweise den folgenden Befehl aus, um die Spaltenfamilie cf2 aus der Tabelle my-table zu löschen:

cbt deletefamily my-table cf2

Tabellenliste abrufen

Console

So können Sie eine Liste der in einer Instanz vorhandenen Tabellen abrufen:

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

    • Klicken Sie auf den Pfeil neben der Tabellen-ID, um die Liste mit den Replikationen der Tabelle zu erweitern.
    • Klicken Sie neben einem Tabellennamen auf Messwerte ansehen, um Monitoring-Daten für die Tabelle anzeigen zu lassen.

gcloud

Führen Sie den Befehl gcloud Bigtable-Instanzentabellenliste .

gcloud bigtable instances tables list --instances=INSTANCE_IDS

Ersetzen Sie Folgendes:

  • INSTANCE_IDS: eine durch Kommas getrennte Liste von Instanz-IDs.

cbt

Führen Sie den folgenden Befehl aus, um eine Liste der in einer Instanz vorhandenen Tabellen abzurufen:

    cbt ls INSTANCE_ID

Ersetzen Sie Folgendes:

  • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

C++

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

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#

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

// 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

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

// 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

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

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

PHP

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

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

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

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

Informationen zum Installieren und Verwenden der Clientbibliothek für Bigtable finden Sie unter Bigtable-Clientbibliotheken

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Bigtable zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

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

Informationen zu einer Tabelle ansehen

Console

So rufen Sie Informationen zu einer Tabelle auf:

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen. Für jede Tabelle zeigt die Google Cloud Console die Anzahl der Cluster an, in denen die Tabelle gespeichert ist, sowie den Status, die Speicherauslastung und die Kennungen für alle aktuellen Sicherungen der Tabelle.

  4. Klicken Sie auf , um die Namen der Spaltenfamilien für die Tabelle aufzurufen. Klicken Sie auf Abbrechen, um den Bereich Tabelle bearbeiten zu schließen.

  5. Klicken Sie auf den Namen der Tabelle, um weitere Details zur Tabelle anzuzeigen, einschließlich Messwerte auf Tabellenebene und Replikationsstatus.

gcloud

Um Informationen zu einer Tabelle anzuzeigen, führen Sie den Befehl gcloud Bigtable instances Tables describe ausführen.

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

Ersetzen Sie Folgendes:

  • TABLE_ID: Eine eindeutige ID der Tabelle.
  • INSTANCE_ID: die ID der Instanz

cbt

Sie können die cbt-Befehlszeile um eine Liste der vorhandenen Spaltenfamilien .

Verwenden Sie den folgenden Befehl und ersetzen Sie dabei [TABLE_NAME] durch den Tabellennamen:

cbt ls [TABLE_NAME]

Richtlinien zur automatischen Speicherbereinigung festlegen

Eine Richtlinie für die automatische Speicherbereinigung teilt Bigtable mit, welche Daten beibehalten und welche zum Löschen markiert werden sollen. Richtlinien für die automatische Speicherbereinigung werden auf der Ebene der Spaltenfamilien festgelegt. Sie können sie beim Erstellen der Tabelle oder höher festlegen.

Wenn Sie eine Spaltenfamilie erstellen, können Sie die Anzahl der Zellen angeben, die Sie in jeder Spalte der Spaltenfamilie beibehalten möchten. Wenn Sie diese Einstellung nicht angeben, verwendet Bigtable eine der folgenden Standardeinstellungen.

  • Wenn Sie die Spaltenfamilie mit dem Cloud Bigtable-HBase-Client für Java oder mit HBase Shell oder mit einem anderen Tool erstellen, das den HBase-Client für Java verwendet, behält Bigtable nur eine Zelle für jede Zeilen-/Spaltenkreuzung in der Spaltenfamilie bei. Diese Standardeinstellung stimmt mit HBase überein.

  • Wenn Sie die Spaltenfamilie mit der Google Cloud Console erstellen, Clientbibliothek oder die cbt-Befehlszeile , behält Bigtable eine unendliche Anzahl der Zellen in jeder Spalte.

Unter Richtlinien für die automatische Speicherbereinigung konfigurieren finden Sie eine detaillierte Anleitung, wie Sie Richtlinien für die automatische Speicherbereinigung anzeigen, festlegen und aktualisieren.

Tabelle sichern und wiederherstellen

Eine Anleitung zum Sichern einer Tabelle und zum Wiederherstellen aus einer Sicherung in einer neuen Tabelle finden Sie unter Sicherungen verwalten.

Wenn Sie beim Erstellen einer Tabelle die automatische Sicherung aktiviert haben, können Sie Konfiguration der automatischen Sicherung für eine Tabelle zum Aktivieren oder Deaktivieren automatischer Sicherungen oder ändern Sie die Aufbewahrungsdauer in bis zu 90 Tage ab dem Zeitpunkt der Sicherungserstellung. Weitere Informationen Weitere Informationen finden Sie unter Automatische Sicherung verwenden.

Änderungsstream aktivieren, deaktivieren oder konfigurieren

Anweisungen zu den folgenden Aufgaben finden Sie unter Änderungsstream konfigurieren

  • Änderungsstream für eine vorhandene Tabelle aktivieren
  • Änderungsstream deaktivieren
  • Aufbewahrungsdauer für einen Änderungsstream aktualisieren

Tabelle löschen

Beim Löschen einer Tabelle werden auch alle autorisierten Ansichten der Tabelle gelöscht. Sie können eine Tabelle nicht löschen , wenn für autorisierte Ansichten der Tabelle der Löschschutz aktiviert ist.

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

  4. Klicken Sie für die Tabelle, die Sie löschen möchten, auf .

  5. Klicken Sie auf Löschen.

  6. Mit der Eingabe der Tabellen-ID in das Textfeld akzeptieren Sie, dass diese Aktion die Tabelle aus allen Clustern in der Instanz löscht und Sie nur sieben Tage Zeit haben, um die Tabelle wiederherzustellen.

  7. Klicken Sie auf Löschen.

gcloud

  1. Führen Sie zum Löschen von Tabellen den Befehl gcloud Bigtable instances Tables delete .

    gcloud bigtable instances tables delete --instance=INSTANCE_ID
    

    Ersetzen Sie Folgendes:

    • INSTANCE_ID: die ID der Instanz
  2. Geben Sie im Terminal y ein, um das Löschen der Tabelle zu bestätigen.

cbt

Zum Löschen einer Tabelle verwenden Sie den im Folgenden aufgeführten Befehl. Ersetzen Sie dabei [TABLE_NAME] durch den Tabellennamen:

cbt deletetable [TABLE_NAME]

Tabelle wiederherstellen

Wenn Sie eine Tabelle versehentlich löschen, können Sie die Tabelle mit dem gcloud CLI-Befehl bigtable instances tables undelete wiederherstellen. Versuchen Sie nicht zuerst, die gelöschte Tabelle manuell zu erstellen.

Führen Sie den folgenden Befehl im Terminal aus, um eine Tabelle wiederherzustellen:

gcloud bigtable instances tables undelete TABLE_ID --instance=INSTANCE_ID

Ersetzen Sie Folgendes:

  • TABLE_ID: die eindeutige ID für die Tabelle
  • INSTANCE_ID: die ID der Instanz

Es gelten folgende Einschränkungen:

  • Die Möglichkeit, eine Tabelle wiederherzustellen, ist für einen Zeitraum von etwa sieben Tagen nach dem Löschen der Tabelle verfügbar.
  • Sie können eine Tabelle nicht mit der Google Cloud Console wiederherstellen, den Cloud Bigtable-Clientbibliotheken oder die cbt-Befehlszeile .
  • Sie können eine Tabelle nicht aus einer Instanz wiederherstellen, die gelöscht wurde.
  • Sie können eine Tabelle, die CMEK aktiviert hatte, nicht wiederherstellen.
  • Alle detaillierten IAM-Richtlinienbindungen einer Tabelle zu löschen, werden nicht wiederhergestellt, wenn die Tabelle wiederhergestellt wird.

Optional können Sie den Status des Vorgangs undelete in den Audit-Logs prüfen.

Löschschutz ändern

Sie können den Löschschutz für eine Tabelle aktivieren oder deaktivieren, wenn Sie Hauptkonto in einer Rolle sind, die die Berechtigung bigtable.tables.update enthält, z. B. roles/bigtable.admin. Der Löschschutz verhindert, dass die Tabelle gelöscht wird, alle Spaltenfamilien in der Tabelle und die Instanz, die die Tabelle enthält.

Wenn Sie den Löschschutz für eine Tabelle aktivieren, wird er nicht für autorisierte Ansichten des . Ebenso wird er nicht deaktiviert, wenn der Löschschutz einer Tabelle deaktiviert wird für autorisierte Ansichten der Tabelle. Sie müssen die Autorisierung der Tabelle Aufrufe separat.

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Tabellen Sie abrufen möchten.

  3. Klicken Sie im linken Bereich auf Tabellen.

    Die Seite Tabellen enthält eine Liste der in der Instanz vorhandenen Tabellen.

  4. Klicken Sie neben der Tabelle auf . ID.

  5. Klicken Sie auf Löschen verhindern, um den Löschschutz zu aktivieren. Klicken Sie auf Löschen aktivieren, um den Löschschutz zu deaktivieren. Nur die gültige Option ist sichtbar sind.

gcloud

Führen Sie den Befehl gcloud bigtable instances table update aus, um den Löschschutz für eine Tabelle zu aktivieren:

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

Führen Sie folgenden Befehl aus, um den Löschschutz für eine Tabelle zu deaktivieren:

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

Dabei gilt:

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

cbt

Sie können das cbt-Befehlszeile um das Löschen zu aktivieren bzw. zu deaktivieren, zu schützen.