Conservazione dei dati con viaggio nel tempo e fail-safe

Questo documento descrive le finestre di conservazione dei dati time-travel e fail-safe per i set di dati. Durante i periodi di viaggio nel tempo e di fail-safe, i dati che hai modificato o eliminato in qualsiasi tabella del set di dati continuano a essere archiviati nel caso in cui tu debba recuperarli.

Viaggio nel tempo

Puoi accedere ai dati da qualsiasi punto all'interno della finestra di viaggio nel tempo, che per impostazione predefinita copre gli ultimi sette giorni. Il viaggio nel tempo ti consente di eseguire query sui dati aggiornati o eliminati, ripristinare una tabella o un set di dati eliminato o ripristinare una tabella scaduta.

Configurare la finestra di spostamento cronologico

Puoi impostare la durata della finestra di viaggio nel tempo, da un minimo di due giorni a un massimo di sette giorni. Il valore predefinito è 7 giorni. Imposti la finestra di analisi storica a livello di set di dati, che viene poi applicata a tutte le tabelle al suo interno. È possibile configurare anche un valore predefinito a livello di progetto.

Puoi configurare la finestra di viaggio nel tempo in modo che sia più lunga nei casi in cui è importante avere più tempo per recuperare i dati aggiornati o eliminati e più breve se non è necessario. L'utilizzo di un intervallo di tempo più breve consente di risparmiare sui costi di archiviazione quando si utilizza il modello di fatturazione dello spazio di archiviazione fisico. Questi risparmi non si applicano quando utilizzi il modello di fatturazione dello spazio di archiviazione logico.

Per ulteriori informazioni su come il modello di fatturazione dell'archiviazione influisce sul costo, consulta Fatturazione.

In che modo la finestra di viaggio nel tempo influisce sul recupero di tabelle e set di dati

Una tabella o un set di dati eliminati utilizza la durata della finestra di viaggio nel tempo in vigore al momento dell'eliminazione.

Ad esempio, se hai una finestra di viaggio nel tempo di due giorni e poi la aumenti a sette giorni, le tabelle eliminate prima di questa modifica possono essere recuperate solo per due giorni. Analogamente, se hai una finestra di viaggio nel tempo di cinque giorni e la riduci a tre giorni, tutte le tabelle eliminate prima della modifica sono ancora recuperabili per cinque giorni.

Poiché le finestre di spostamento nel tempo sono impostate a livello di set di dati, non puoi modificare la finestra di spostamento nel tempo di un set di dati eliminato finché non viene annullata l'eliminazione.

Se riduci la durata della finestra di viaggio nel tempo, elimini una tabella e poi ti accorgi di aver bisogno di un periodo di recupero più lungo per i dati, puoi creare uno snapshot della tabella da un punto in tempo precedente all'eliminazione della tabella. Devi farlo finché la tabella eliminata è ancora recuperabile. Per ulteriori informazioni, consulta Creare uno snapshot di una tabella utilizzando il viaggio nel tempo.

Specifica una finestra di spostamento cronologico

Puoi utilizzare la console Google Cloud, lo strumento a riga di comando bq o l'API BigQuery per specificare la finestra di viaggio nel tempo per un set di dati.

Per istruzioni su come specificare la finestra di spostamento nel tempo per un nuovo set di dati, consulta Creare set di dati.

Per istruzioni su come aggiornare la finestra di viaggio nel tempo per un set di dati esistente, consulta Aggiornare le finestre di viaggio nel tempo.

Se il timestamp specifica un'ora al di fuori dell'intervallo di tempo di viaggio nel tempo o precedente alla creazione della tabella, la query non va a buon fine e restituisce un errore simile al seguente:

Table ID was created at time which is
before its allowed time travel interval timestamp. Creation
time: timestamp

Viaggio nel tempo e accesso a livello di riga

Se una tabella ha o ha avuto criteri di accesso a livello di riga, solo un amministratore della tabella può accedere ai dati storici della tabella.

È obbligatoria la seguente autorizzazione Identity and Access Management (IAM):

Autorizzazione Risorsa
bigquery.rowAccessPolicies.overrideTimeTravelRestrictions La tabella di cui si accede ai dati storici

Il seguente ruolo BigQuery fornisce l'autorizzazione richiesta:

Role Risorsa
roles/bigquery.admin La tabella di cui si accede ai dati storici

L'autorizzazione bigquery.rowAccessPolicies.overrideTimeTravelRestrictions non può essere aggiunta a un ruolo personalizzato.

  • Esegui il seguente comando per ottenere la data e l'ora epoch di Unix equivalenti:

    date -d '2023-08-04 16:00:34.456789Z' +%s000
  • Sostituisci la data e l'ora di epoche UNIX 1691164834000 ricevuta dal comando precedente nello strumento a riga di comando bq. Esegui il seguente comando per ripristinare una copia della tabella deletedTableID eliminata in un'altra tabella restoredTable, nello stesso set di dati myDatasetID:

    bq cp myProjectID:myDatasetID.deletedTableID@1691164834000 myProjectID:myDatasetID.restoredTable

Fail-safe

BigQuery fornisce un periodo di fail-safe. Durante il periodo di sicurezza, i dati eliminati vengono conservati automaticamente per altri sette giorni dopo la finestra di viaggio nel tempo, in modo che siano disponibili per il recupero di emergenza. I dati sono recuperabili a livello di tabella. I dati di una tabella vengono recuperati dal punto in tempo rappresentato dal timestamp dell'eliminazione della tabella. Il periodo di fail-safe non è configurabile.

Non puoi eseguire query o recuperare direttamente i dati nello spazio di archiviazione fail-safe. Per recuperare i dati dallo spazio di archiviazione di riserva, contatta l'assistenza clienti Google Cloud.

Fatturazione

Se imposti il modello di fatturazione dello spazio di archiviazione in modo da utilizzare i byte fisici, ti vengono fatturati separatamente i byte utilizzati per il viaggio nel tempo e lo spazio di archiviazione di riserva. Lo spazio di archiviazione per Time-Travel e Fail-Safe viene addebitato alla tariffa dello spazio di archiviazione fisico attivo. Puoi configurare l'intervallo di tempo per bilanciare i costi di archiviazione con le tue esigenze di conservazione dei dati.

Se imposti il modello di fatturazione dello spazio di archiviazione in modo che utilizzi i byte logici, i costi totali dello spazio di archiviazione per il time-travel e lo spazio di archiviazione fail-safe sono inclusi nella tariffa di base che ti viene addebitata.

La tabella seguente mostra un confronto dei costi di archiviazione fisica e logica:

Modello di fatturazione Per cosa paghi?
Spazio di archiviazione fisico (compresso)
  • Paghi per i byte attivi
  • Paghi per lo spazio di archiviazione a lungo termine
  • Ti vengono addebitati i costi dello spazio di archiviazione di Time Travel
  • Ti vengono addebitati i costi dell'archiviazione di riserva
Spazio di archiviazione logico (non compresso) (impostazione predefinita)
  • Paghi per lo spazio di archiviazione attivo
  • Paghi per lo spazio di archiviazione a lungo termine
  • Non paghi per lo spazio di archiviazione di Time Travel
  • Non paghi per lo spazio di archiviazione di riserva

Se utilizzi lo spazio di archiviazione fisico, puoi vedere i byte utilizzati dallo spostamento cronologico e dal fail-safe esaminando le colonne TIME_TRAVEL_PHYSICAL_BYTES e FAIL_SAFE_PHYSICAL_BYTES nelle visualizzazioni TABLE_STORAGE e TABLE_STORAGE_BY_ORGANIZATION. Per un esempio di come utilizzare una di queste visualizzazioni per stimare i costi, consulta la sezione Prevedere la fatturazione dello spazio di archiviazione.

I costi di archiviazione si applicano ai dati di viaggio nel tempo e di fail-safe, ma ti vengono addebitati solo se le tariffe di archiviazione dei dati non si applicano altrove in BigQuery. Si applicano i seguenti dettagli:

  • Quando viene creata una tabella, non è previsto alcun costo per lo spazio di archiviazione di Time-Travel o Fail-Safe.
  • Se i dati vengono modificati o eliminati, ti viene addebitato il costo di archiviazione dei dati modificati o eliminati salvati dal viaggio nel tempo durante la finestra di viaggio nel tempo e il periodo di sicurezza. È simile ai prezzi dello spazio di archiviazione per gli snapshot e i cloni delle tabelle.

Esempio di conservazione dei dati

La seguente tabella mostra come i dati eliminati o modificati passano da un'altra finestra di conservazione dello spazio di archiviazione. Questo esempio mostra una situazione in cui lo spazio di archiviazione attivo totale è di 200 GB e 50 GB vengono eliminati con una finestra di viaggio nel tempo di sette giorni:

Giorno 0 Giorno 1 Giorno 2 Giorno 3 Giorno 4 Giorno 5 Giorno 6 Giorno 7 Giorno 8 Giorno 9 Giorno 10 Giorno 11 12° giorno Giorno 13 Giorno 14 15° giorno
Archiviazione attiva 200 150 150 150 150 150 150 150 150 150 150 150 150 150 150 150
Spazio di archiviazione per i viaggi nel tempo 50 50 50 50 50 50 50
Archiviazione a prova di errore 50 50 50 50 50 50 50

L'eliminazione dei dati dallo spazio di archiviazione fisico a lungo termine funziona allo stesso modo.

Limitazioni

Passaggi successivi