Änderungsverlauf verwenden

Mit dem BigQuery-Änderungsverlauf können Sie den Änderungsverlauf einer BigQuery-Tabelle verfolgen. Sie können GoogleSQL Funktionen verwenden, um bestimmte Arten von Änderungen zu sehen, die während eines bestimmten Zeitraums vorgenommen wurden, so dass Sie inkrementelle Änderungen an einer Tabelle verarbeiten können. Wenn Sie wissen, welche Änderungen an einer Tabelle vorgenommen wurden, können Sie beispielsweise ein Tabellenreplikat inkrementell außerhalb von BigQuery pflegen und teure Kopien vermeiden.

Erforderliche Berechtigungen

Zum Aufrufen des Änderungsverlaufs einer Tabelle benötigen Sie die Berechtigung bigquery.tables.getData für diese Tabelle. Die folgenden vordefinierten IAM-Rollen (Identity and Access Management) enthalten diese Berechtigung:

  • roles/bigquery.dataViewer
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.admin

Wenn eine Tabelle Zugriffsrichtlinien auf Zeilenebene hat oder hatte, kann nur ein Tabellenadministrator auf Verlaufsdaten für die Tabelle zugreifen. Die Berechtigung bigquery.rowAccessPolicies.overrideTimeTravelRestrictions ist für die Tabelle erforderlich und in der vordefinierten IAM-Rolle roles/bigquery.admin enthalten.

Wenn eine Tabelle die Sicherheit auf Spaltenebene bietet, können Sie den Änderungsverlauf nur für die Spalten aufrufen, auf die Sie Zugriff haben.

Funktionen für den Änderungsverlauf

Mit den folgenden Funktionen können Sie den Änderungsverlauf einer Tabelle aufrufen:

Preise und Kosten

Durch den Aufruf von Funktionen für den Änderungsverlauf fallen BigQuery-Compute-Kosten an. Sowohl die Funktion APPENDS als auch die Funktion CHANGES erfordern die Verarbeitung aller Daten, die innerhalb des angegebenen Zeitraums in die Tabelle geschrieben wurden. Diese Verarbeitung gilt für alle Schreibvorgänge, einschließlich Anhänge- und Mutationsvorgänge. Wenn Sie die Option enable_change_history einer Tabelle auf FALSE setzen, wird die von APPENDS verarbeitete Datenmenge nicht reduziert.

Wenn Sie die enable_change_history Option für eine Tabelle auf TRUE setzen, um die CHANGES Funktion zu verwenden, speichert BigQuery Metadaten zu Tabellenänderungen. Für diese gespeicherten Metadaten fallen zusätzliche BigQuery-Speicher- und BigQuery-Compute-Kosten an. Der in Rechnung gestellte Betrag hängt von der Anzahl und Art der Änderungen ab, die an der Tabelle vorgenommen wurden, und ist in der Regel gering. Bei Tabellen mit vielen Änderungsvorgängen, insbesondere großen Löschvorgängen, fallen am ehesten spürbare Kosten an.