Panoramica del recupero point-in-time (PITR)

Il recupero point-in-time (PITR) di Firestore fornisce protezione da eliminazione o scritture accidentali. PITR conserva le versioni dei documenti dai timestamp precedenti. Ad esempio, nel caso in cui uno sviluppatore invii dati errati oppure scriva o elimina accidentalmente dati, il PITR può recuperare i dati fino a un momento nel passato (fino a un massimo di sette giorni), senza problemi.

Per qualsiasi database in tempo reale che segue le best practice, l'uso del PITR non influisce sulle prestazioni delle letture o delle scritture.

Finestra PITR

Dopo aver abilitato PITR, Firestore inizia a conservare i dati PITR. I dati PITR vengono conservati per 7 giorni nella finestra PITR.

Puoi leggere i dati di un timestamp in base a quando è stato abilitato il PITR:

Stato di abilitazione PITR Primi dati PITR disponibili
Disabilitato 1 ora prima dell'ora della richiesta di lettura
attivata entro 7 giorni 1 ora prima dell'attivazione del PITR
attivata più di 7 giorni fa 7 giorni prima dell'ora della richiesta di lettura

Nella finestra PITR viene mantenuta una singola versione al minuto. Puoi leggere i documenti con granularità al minuto utilizzando un timestamp di un minuto intero. Le letture che non hanno una granularità minima, ad esempio 2023-05-30 09:00:00.1234AM, restituiranno un errore che indica che il valore read_time è troppo vecchio.

In caso di più scritture, viene conservata una sola versione di un documento. Ad esempio, se un documento presentava più scritture che vanno da v1, v2, ... vk tra il timestamp 2023-05-30 09:00:00AM (esclusivo) e 2023-05-30 09:01:00AM (incluso), una richiesta di lettura al timestamp 2023-05-30 09:01:00AM restituisce la versione vk del documento.

Puoi leggere dai dati creati durante la finestra PITR. I dati vengono archiviati con una granularità al minuto e puoi recuperarli con la stessa granularità. La funzionalità PITR di Firestore è disabilitata per impostazione predefinita.

Il campo earliestVersionTime del database specifica il tempo di lettura massimo consentito per i tuoi dati.

Indipendentemente dal fatto che PITR sia abilitato o meno, puoi leggere (ma non esportare) i documenti a qualsiasi timestamp con granularità di microsecondo nell'ultima ora, ma non prima della prima versione.

Metodi per recuperare i dati

Esistono due modi per recuperare i dati:

  • Per recuperare una parte del database, esegui una lettura inattiva specificando una condizione di query o utilizzando la ricerca diretta della chiave insieme a un timestamp nel passato, quindi scrivi di nuovo i risultati nel database in tempo reale. In genere viene utilizzato per gli interventi chirurgici su un database attivo. Ad esempio, se elimini accidentalmente un determinato documento o aggiorni erroneamente un sottoinsieme di dati, puoi recuperarli con questo metodo. Per le istruzioni, vedi Recupero di una parte del database.

  • Per recuperare l'intero database, esporta il database specificando un timestamp nel passato, quindi importalo in un nuovo database. L'operazione di esportazione PITR supporta tutti i filtri, inclusa l'esportazione di tutti i documenti e l'esportazione di raccolte specifiche. Puoi esportare i dati PITR in cui il timestamp è un timestamp di un minuto intero compreso negli ultimi sette giorni, ma non prima di primaVersionTime.

Prezzi

Prima di abilitare il PITR per il tuo database, considera le seguenti informazioni sui prezzi:

  • Spazio di archiviazione: Firestore misura le dimensioni del database ogni giorno. Nel corso di un mese, viene calcolata la media di questi punti di campionamento per calcolare le dimensioni dell'archiviazione del database. Questo valore medio viene moltiplicato per il prezzo unitario del PITR (GB/mese). Per ulteriori informazioni, vedi i prezzi dello spazio di archiviazione.

    L'archiviazione PITR non ha un livello gratuito e se vuoi utilizzare il PITR devi avere la fatturazione abilitata.

  • Fatturazione con calcolo: tutte le query che effettui durante la finestra PITR di 7 giorni, tramite letture o esportazioni obsolete, comportano costi delle operazioni di lettura in base al numero di documenti letti. Consulta i pricing per ulteriori informazioni.

  • Fatturazione minima: ti potrebbe essere addebitato l'importo per l'archiviazione PITR per un massimo di 1 giorno anche se disattivi PITR entro un giorno dall'abilitazione.

Passaggi successivi