Panoramica dei backup

Questo documento fornisce una panoramica dei backup di Spanner pianificazioni dei backup.

Spanner ti consente di creare backup completi dei database on demand e backup completi o incrementali utilizzando una pianificazione dei backup. I backup completi memorizzano l'intera quantità di dati di un database, mentre i backup incrementali contengono solo i dati che sono cambiati rispetto a un backup precedente.

Puoi ripristinare i backup quando errori dell'operatore o dell'applicazione causano il danneggiamento dei dati logici.

I backup sono ad alta disponibilità, criptati e possono essere conservati per un massimo di un anno dal momento della loro creazione. Quando crei un backup, questo si trova nella stessa istanza, regione e progetto del database di origine. Se devi ripristinare il backup in una regione diversa progetto per motivi di conformità o di continuità aziendale, puoi copiare a un'istanza in una regione o un progetto a parte.

Funzionalità principali

  • Coerenza dei dati: i backup di un database Spanner vengono a livello transazionale coerenti esternamente versionTime del backup.

  • Replica: i backup si trovano nella stessa istanza del database di origine e vengono replicati nelle stesse posizioni geografiche. Per le istanze a livello di regione, il backup viene archiviato in ciascuna delle tre zone di lettura/scrittura. Per due o più regioni, il backup viene archiviato in tutte le zone che contengono un'istanza replica. Se devi archiviare il backup del tuo database in una regione o un progetto diverso, puoi copiare il backup completato dall'istanza di origine a un'istanza di destinazione in una regione o un progetto diverso. Per ulteriori informazioni, consulta la sezione Copiare un backup.

  • Scadenza automatica: tutti i backup hanno una data di scadenza specificata dall'utente. che determina quando viene eliminata automaticamente. Spanner elimina i backup scaduti in modo asincrono, pertanto potrebbe esserci un ritardo tra la scadenza di un backup e la sua eliminazione effettiva.

Creazione del backup

Quando crei un backup, questo si trova nella stessa istanza, regione e progetto del database di origine. Un backup contiene le seguenti informazioni del database al momento del backup:

  • Un backup completo contiene tutti i dati. Un backup incrementale contiene solo i dati che sono cambiati rispetto a un backup precedente.
  • Informazioni sullo schema, inclusi nomi di tabelle, campi, tipi di dati, indici secondari, stream di variazioni e le relazioni tra queste entità.
  • Tutte le opzioni di database impostate con il comando ALTER DATABASE SET OPTIONS.

Un backup di Spanner non include le seguenti informazioni:

  • Eventuali modifiche ai dati o allo schema dopo il versionTime.
  • Criteri di Identity and Access Management (IAM).
  • Modificare i record dei dati dello stream. Sebbene lo schema delle modifiche in tempo reale sia archiviato, i dati delle modifiche in tempo reale devono essere trasmessi in flusso e consumati quasi contemporaneamente alle modifiche che descrive.

Per garantire la coerenza esterna del backup, Spanner blocca la i contenuti del database versionTime In questo modo, il sistema di raccolta dei rifiuti impedisce la rimozione dei valori dei dati pertinenti per la durata dell'operazione di backup. A questo punto, ogni zona di lettura/scrittura e di sola lettura nell'istanza inizia a copiare i dati in parallelo. Se una zona non è al momento disponibile, il backup non è completo finché la zona non torna online. I backup possono essere ripristinati non appena l'operazione è completata. Per le istanze multiregionali, le zone di lettura/scrittura e di sola lettura in tutte le regioni devono completare il backup prima che il backup sia contrassegnato come ripristinabile.

Pianificazioni di backup

Spanner ti consente di pianificare backup completi o incrementali per i database. Un backup incrementale contiene solo che sono cambiati rispetto a un backup precedente, mentre i backup completi archiviano l'intero contenuto del database. Puoi specificare il tipo di pianificazione del backup (completo o incrementale) e la frequenza con cui Spanner deve creare i backup.

Una pianificazione del backup completo può creare un backup ogni 12 ore o più. Una pianificazione del backup incrementale può creare un backup ogni 4 ore o più.

Spanner offre backup incrementali per il database mediante una pianificazione del backup. Non puoi creare un backup incrementale on demand.

La creazione del backup inizia entro una finestra di quattro ore dall'orario pianificato. Puoi avere un massimo di quattro pianificazioni del backup per database.

Backup incrementali

I backup incrementali formano catene tra i backup completi. Il primo backup creato da una pianificazione del backup incrementale è un backup completo. I backup consecutivi creati nella catena sono backup incrementali, ciascuno contenente solo i dati che sono cambiati dal backup precedente nella catena.

Spanner consente fino a 13 backup incrementali per catena, oltre al backup completo iniziale. Una catena viene identificata dal valore incrementalBackupChainId corrispondente. Quando una catena raggiunge la lunghezza massima, Spanner crea una nuova catena, iniziando dal backup completo iniziale.

In alcuni scenari, Spanner potrebbe creare una nuova catena prima che si verifichi la lunghezza massima della catena. Di seguito sono riportati alcuni scenari:

  • L'ultimo backup completo è stato eseguito da almeno 28 giorni.
  • Il backup più recente della catena viene eliminato.
  • La pianificazione del backup incrementale viene modificata.

Ecco alcuni fattori che possono aiutarti a prendere una decisione sull'utilizzo dei backup incrementali:

  • Crittografia: i backup incrementali supportano la crittografia utilizzando le impostazioni gestite da Google delle chiavi, anche se il database è criptato da un sistema chiave di crittografia (CMEK).

  • Ripristino: il ripristino di un backup incrementale potrebbe richiedere più tempo rispetto al ripristino di un backup completo contenente gli stessi dati.

  • Eliminazione: se elimini un backup in una catena o se scade, Spanner potrebbe comunque conservarlo per supportare i backup più recenti nella catena, se esistenti. Spanner ha bisogno di tutti i backup precedenti nella catena per ripristinare un backup incrementale. Per eliminare tutti i dati di una catena di backup, inclusi quelli dei backup scaduti o eliminati, elimina tutti i backup della catena.

  • Ritenuta: ogni pianificazione del backup contiene i seguenti termini che forniscono informazioni sulla pianificazione:

    • creation_interval: rappresenta la frequenza di pianificazione specificata per la programmazione del backup.
    • retention_duration: indica il periodo di conservazione dei backup creati dalla pianificazione. Per una determinata catena, il backup completo meno recente viene conservato dopo l'originale di scadenza se necessario per supportare backup più recenti nella catena. La durata totale di conservazione del backup completo è al massimo il valore più basso tra i seguenti:
      • retention_duration + 28 giorni
      • retention_duration + (creation_interval*14)
  • Copia di backup: quando copi un backup incrementale, Spanner copia la catena di backup, a partire dal backup completo iniziale e terminando con il backup incrementale specifico che vuoi copiare. Chiave inglese addebita i costi in base allo spazio di archiviazione totale utilizzato.

Per ulteriori informazioni sulla creazione di backup incrementali, consulta Crea e gestisci le pianificazioni dei backup.

Costi di archiviazione per backup completi e incrementali

Ogni backup di Spanner include i seguenti campi che offrono informazioni sul consumo dello spazio di archiviazione:

  • exclusiveSizeBytes: mostra il numero di byte richiesti dal backup. Questo rappresenta la dimensione fatturabile del backup.
  • freeableSizeBytes: mostra il numero di byte che vengono liberati se elimini il backup.
  • oldestVersionTime: mostra versionTime del backup completo meno recente in della catena, anche se il backup è scaduto. Puoi utilizzare questo campo per per capire quali dati vengono archiviati.

I backup incrementali possono farti risparmiare sui costi di archiviazione. Un backup incrementale può avere molto più piccolo di exclusiveSizeBytes rispetto a un backup completo poiché il backup incrementale deve solo archiviare modifiche apportate dal backup precedente nella catena. L'aggiunta di questo valore di campo per ogni backup della catena riflette il numero totale di byte utilizzati dai backup della catena.

Un backup incrementale dipende da tutti i backup meno recenti nella stessa catena per il ripristino. Ciò significa che, se esiste un backup incrementale più recente, i dati di tutti i backup nella catena non possono essere eliminati dal sistema e da freeableSizeBytes per tutti i backup precedenti nella stessa catena è zero.

Considera di aver creato una pianificazione del backup completa e un backup incrementale per un database che ha una dimensione di 100 GB e che aumenta del 10 GB al giorno. La tabella seguente mostra i possibili costi di archiviazione per queste pianificazioni dei backup:

Giorno Dimensioni del backup completo pianificato Dimensione del backup della pianificazione incrementale
1 100 GB 100 GB
2 110 GB 10 GB
3 120 GB 10 GB
4 130 GB 10 GB
5 140 GB 10 GB

Per 5 giorni, la pianificazione del backup completo utilizza 600 GB di spazio di archiviazione, mentre la pianificazione del backup incrementale utilizza circa 140 GB di spazio di archiviazione. Per una pianificazione dei backup incrementali, le dimensioni del backup completo sono la somma delle dimensioni di tutti i backup della catena fino a quel backup e sono riportate nel campo sizeBytes.

Come funziona la copia di backup

La funzionalità Backup e ripristino di Spanner ti consente un backup del tuo database Spanner da un'istanza all'altra in una regione o un progetto differente, per fornire funzionalità di protezione e conformità dei dati. Il backup copiato ha le stesse funzionalità principali dell'originale backup. Inoltre, puoi ripristinare un backup copiato nella stessa istanza di quello copiato per supportare tra regioni e sui casi d'uso di backup e ripristino tra progetti.

Dove vengono archiviati i backup di Spanner

I backup sono risorse in Spanner. Ogni risorsa di backup è organizzata nella stessa istanza del database di origine nella gerarchia delle risorse e ha un percorso della risorsa che utilizza il seguente formato:

projects/PROJECT_ID/instances/INSTANCE_ID/backups/BACKUP_NAME

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • INSTANCE_ID: l'ID istanza.
  • BACKUP_NAME: il nome del backup.

Un backup continua a esistere anche dopo l'eliminazione del database di origine, ma non può superare l'istanza principale. Per impedire l'eliminazione accidentale di backup, non puoi eliminare un'istanza Spanner se è backup. Se vuoi eliminare l'istanza, ti consigliamo di ripristinare il eseguire il backup e esportare il database ripristinato, prima il backup e l'istanza.

Crittografia

I backup di Spanner, come i database, sono criptati Chiavi di crittografia gestite da Google o tramite chiavi di crittografia gestite dal cliente (CMEK). Per impostazione predefinita, un backup utilizza la stessa configurazione di crittografia del database, ma puoi sostituire questo comportamento specificando una diversa configurazione di crittografia al momento della creazione del backup. Se il backup è abilitato per CMEK, viene criptato utilizzando la versione principale della chiave KMS al momento della creazione del backup. Una volta creato il backup, la chiave e la relativa versione non possono essere modificate, anche se la chiave KMS viene ruotata. Per ulteriori informazioni, vedi crea un backup abilitato per CMEK.

Un backup copiato utilizza la stessa configurazione di crittografia, gestita da Google o dal cliente (CMEK), della crittografia del backup di origine. Puoi ignorare questo comportamento specificando una configurazione di crittografia diversa durante la copia del backup. Se vuoi che il backup copiato sia criptato con CMEK durante la copia tra regioni, specifica la chiave Cloud KMS corrispondente alla regione di destinazione.

Puoi specificare la configurazione della crittografia durante la creazione o la modifica la pianificazione del backup. Se vuoi che la pianificazione dei backup crei backup criptati con le chiavi CMEK, devi specificare il percorso della chiave.

I backup incrementali supportano la crittografia utilizzando solo chiavi gestite da Google, anche se il database è criptato da una chiave CMEK.

Prestazioni

Questa sezione descrive le prestazioni ottimali del backup in Spanner.

Prestazioni durante il backup

Quando esegui un backup, Spanner crea un job di backup per copiare i dati direttamente dal database allo spazio di archiviazione di backup e ne determina le dimensioni in base alle dimensioni del database. Questo job di backup non utilizza le risorse della CPU allocate all'istanza del database, pertanto non influisce sulle prestazioni dell'istanza. Inoltre, il carico di calcolo sull'istanza del database non influisce sulla velocità dell'operazione di backup. Per monitorare l'avanzamento e il completamento di un backup. Operazione, vedi Mostrare l'avanzamento del backup.

In genere, la maggior parte dei backup richiede 1-4 ore. Alcuni backup potrebbero richiedono più tempo a causa delle dimensioni o della presenza di una coda interna Google Cloud. Se un backup richiede più tempo del solito quando non sono stati modificati altri fattori, il motivo potrebbe essere un ritardo nella pianificazione dell'attività di backup in una zona. A volte l'operazione può richiedere fino a 30 minuti. Ti consigliamo di non annullare e riavvia il backup, poiché probabilmente la stessa pianificazione con la nuova operazione di backup.

Prestazioni durante la copia di un backup

Il tempo necessario per copiare un backup dipende da fattori quali le dimensioni del backup di origine e la regione di destinazione scelta per il backup copiato. In genere, la maggior parte delle copie viene completata in 1-4 ore. Alcune copie potrebbero richiedere più tempo a seconda delle dimensioni del backup e della regione di destinazione. Copia di un backup in corso... non influisce sulle prestazioni dell'istanza o del database di origine. Puoi creare più copie simultanee del backup dell'origine in istanze in regioni diverse senza problemi di prestazioni.

Quando copi un backup incrementale, Spanner copia tutti i backup più recenti della catena. Invece di copiare la catena di backup uno per uno, Uno, Spanner copia tutti i backup contemporaneamente per migliorare le prestazioni.

Eliminare un backup

Quando elimini un backup incrementale, potresti non recuperare lo spazio di archiviazione se sono presenti backup incrementali più recenti nella stessa catena. I backup incrementali più recenti dipendono dai dati presenti nel backup incrementale eliminato e dai backup precedenti della catena. Spanner conserva i dati e libera lo spazio di archiviazione solo quando scadono tutti i backup incrementali più recenti. Il campo freeableSizeBytes mostra quanto spazio di archiviazione puoi recuperare se per eliminare il backup.

Prezzi

Gli addebiti vengono effettuati in base alla quantità di spazio di archiviazione utilizzata dai backup per unità nel tempo. La fatturazione inizia al termine dell'operazione di backup e continua fino all'eliminazione del backup. Un backup completato viene fatturato per un importo minimo di 24 ore. Se crei un backup e lo elimini poco dopo il completamento, ti verranno comunque addebitate 24 ore.

Una copia di un backup è soggetta agli stessi costi di archiviazione come backup originale. Se crei una copia tra due istanze che occupano regioni diverse, si applicano i costi di trasferimento dei dati in uscita.

Ad esempio, se copi il database dall'istanza multiregionale di origine configurazione nam7 alla configurazione dell'istanza multiregionale di destinazione nam-eur-asia3, si applicano i seguenti costi:

  • Nessun costo per la sovrapposizione di us-central1 regione
  • Nessun addebito per la regione del testimone us-central2
  • L'addebito per il trasferimento di dati tra continenti viene applicato due volte: una volta per ogni nuovo continente (Europa e Asia).
  • L'addebito per il trasferimento di dati tra regioni all'interno dello stesso continente viene applicato una sola volta per us-east1
  • L'addebito per il trasferimento di dati tra regioni all'interno dello stesso continente si applica una sola volta in Europa.

Spanner ottimizza il processo di copia per ridurre al minimo il numero di trasferimenti tra regioni. Ciò aiuta a ridurre al minimo i costi di trasferimento di dati offrendo un'esperienza di backup della copia rapida.

I backup vengono archiviati e fatturati separatamente. Lo spazio di archiviazione dei backup non influisce fatturazione per l'archiviazione dei database o limiti di archiviazione del database. Per maggiori informazioni per informazioni, vedi anche Metriche di utilizzo dello spazio di archiviazione.

Per informazioni più complete sui costi di backup, consulta i prezzi di Spanner.

Passaggi successivi