Gelöschte Tabellen wiederherstellen
In diesem Dokument wird beschrieben, wie Sie eine gelöschte Tabelle in BigQuery wiederherstellen (oder rückgängig machen). Sie können eine gelöschte Tabelle innerhalb des für das Dataset angegebenen Zeitreisefensters wiederherstellen, einschließlich expliziter und impliziter Löschungen aufgrund des Ablaufs einer Tabelle. Sie können auch das Zeitreisefenster konfigurieren.
Informationen zum Wiederherstellen eines gesamten gelöschten Datensatzes oder Snapshots finden Sie in den folgenden Ressourcen:
Das Zeitreisefenster kann zwischen zwei und sieben Tagen liegen. Nach Ablauf des Zeitreisefensters bietet BigQuery eine Fail-Safe-Periode, in der die gelöschten Daten automatisch sieben weitere Tage lang aufbewahrt werden. Nach Ablauf des Failsafe-Zeitraums ist es nicht mehr möglich, eine Tabelle wiederherzustellen, weder durch das Öffnen eines Support-Tickets noch durch andere Methoden.
Hinweise
Sie benötigen die erforderlichen IAM-Berechtigungen (Identity and Access Management), um eine gelöschte Tabelle wiederherzustellen.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle BigQuery-Nutzer (roles/bigquery.user
) für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Wiederherstellen einer gelöschten Tabelle benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Tabelle wiederherstellen
Wenn Sie eine Tabelle aus Verlaufsdaten wiederherstellen, werden Tags aus der Quelltabelle nicht in die Zieltabelle kopiert.
Sie können eine Tabelle wiederherstellen, die gelöscht wurde, aber sich noch innerhalb des Zeitreisefensters befindet. Kopieren Sie dazu die Tabelle mit dem Zeit-Decorator @<time>
in eine neue Tabelle.
Zum Kopieren der Tabelle können Sie das bq-Befehlszeilentool oder die Clientbibliotheken verwenden:
Console
In der Google Cloud -Console können gelöschte Tabellen nicht wiederhergestellt werden.
bq
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Legen Sie zum Wiederherstellen der Tabelle zuerst einen UNIX-Zeitstempel in Millisekunden für die Zeit fest, in der die Tabelle existiert hat (in Millisekunden). Mit dem Linux-Befehl
date
können Sie den Unix-Zeitstempel aus einem regulären Zeitstempelwert generieren:date -d '2023-08-04 16:00:34.456789Z' +%s000
Verwenden Sie dann den Befehl
bq copy
mit dem Zeitreise-Decorator@<time>
, um die Tabelle zu kopieren.Geben Sie beispielsweise den folgenden Befehl ein, um die Tabelle
mydataset.mytable
zum Zeitpunkt1418864998000
in die neue Tabellemydataset.newtable
zu kopieren.bq cp mydataset.mytable@1418864998000 mydataset.newtable
Optional: Geben Sie das Flag
--location
an und legen Sie als Wert Ihren Standort fest.Sie können auch ein relatives Offset angeben. Im folgenden Beispiel wird die Version einer Tabelle von vor einer Stunde kopiert:
bq cp mydataset.mytable@-3600000 mydataset.newtable
Weitere Informationen finden Sie unter Tabelle auf dem Stand eines bestimmten Zeitpunkts wiederherstellen.
Go
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Go in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Go API.
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Java in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Java API.
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Node.js in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Node.js API.
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Python in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Python API.
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Wenn Sie davon ausgehen, dass Sie eine Tabelle später wiederherstellen möchten, als dies durch das Zeitreisefenster zulässig ist, erstellen Sie einen Tabellen-Snapshot der Tabelle. Weitere Informationen finden Sie unter Einführung in Tabellen-Snapshots.
Nächste Schritte
- Tabellen erstellen und verwenden
- Tabellen verwalten
- Tabellenschemas ändern
- Mit Tabellendaten arbeiten