Utilizzare la cronologia delle modifiche
La cronologia delle modifiche di BigQuery ti consente di monitorare la cronologia delle modifiche apportate a una tabella BigQuery. Puoi utilizzare le funzioni GoogleSQL per visualizzare tipi specifici di modifiche apportate durante un intervallo di tempo specificato, in modo da poter elaborare le modifiche incrementali apportate a una tabella. Comprendere le modifiche apportate a una tabella può aiutarti a eseguire operazioni come mantenere in modo incrementale una replica della tabella al di fuori di BigQuery evitando copie costose.
Autorizzazioni obbligatorie
Per visualizzare la cronologia delle modifiche in una tabella, devi disporre dell'autorizzazione bigquery.tables.getData
per quella tabella. I seguenti ruoli IAM (Identity and Access Management) predefiniti includono questa autorizzazione:
roles/bigquery.dataViewer
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
Se una tabella ha, o ha avuto,
criteri di accesso a livello di riga, allora solo
un amministratore della tabella può accedere ai dati storici per la tabella. La
L'autorizzazione bigquery.rowAccessPolicies.overrideTimeTravelRestrictions
è
obbligatorio nella tabella ed è incluso nel campo roles/bigquery.admin
ruolo IAM.
Se una tabella ha la sicurezza a livello di colonna, puoi visualizzare la cronologia delle modifiche solo per le colonne a cui hai accesso.
Funzioni di cronologia delle modifiche
Per comprendere la cronologia delle modifiche di una tabella, puoi utilizzare le seguenti funzioni:
APPENDS
: restituisce tutte le righe aggiunte a una tabella per un determinato intervallo di tempo.Le seguenti operazioni aggiungono righe alla cronologia delle modifiche di
APPENDS
:CHANGES
: restituisce tutte le righe che sono state modificate in una tabella per un determinato intervallo di tempo. Per utilizzare funzioneCHANGES
su una tabella, devi impostare il valore Opzioneenable_change_history
aTRUE
.Le seguenti operazioni aggiungono righe alla cronologia delle modifiche di
CHANGES
:CREATE TABLE
Istruzione DDLINSERT
Istruzione DML- Dati aggiunti o modificati come parte di un'istruzione DML
MERGE
UPDATE
Istruzione DMLDELETE
Istruzione DML- Caricamento di dati in BigQuery
- Importazione di streaming
TRUNCATE TABLE
Istruzione DML- Job configurati con un
writeDisposition
diWRITE_TRUNCATE
- Eliminazioni delle partizioni delle tabelle individuali
Prezzi e costi
L'uso delle funzioni di cronologia delle modifiche comporta costi di calcolo di BigQuery.
Quando imposti l'opzione enable_change_history
su una tabella su TRUE
per utilizzare la funzione CHANGES
, BigQuery archivia i metadati delle modifiche alla tabella. Questi metadati archiviati comportano costi di archiviazione di BigQuery. La
l'importo fatturato dipende dal numero e dal tipo di modifiche apportate alla tabella e
in genere è piccolo. Tabelle con molte operazioni di modifica, in particolare quelle di grandi dimensioni
eliminazioni di dati, hanno maggiori probabilità di incorrere in costi notevoli.