In precedenza, Firestore in modalità Datastore supportava la possibilità di attivare Amministrazione Datastore, un modulo facoltativo con funzionalità di backup ed eliminazione collettiva. Datastore Admin è stato sostituito da alternative più affidabili:
- La funzionalità di backup è stata sostituita da esportazioni e importazioni gestite.
- La funzionalità di eliminazione collettiva è stata sostituita dalla Modello Eliminazione collettiva delle entità per Dataflow.
Accesso ad Amministrazione datastore
Se in precedenza hai attivato Datastore Admin, puoi continuare ad accedere al modulo visitando https://ah-builtin-python-bundle-dot-PROJECT_ID.appspot.com/_ah/datastore_admin?app_id=PROJECT_ID
, dove PROJECT_ID
è l'ID del tuo progetto Google Cloud. Se disattivi Amministrazione Datastore, non potrai riattivare il modulo.
Limitazioni relative all'utilizzo delle funzionalità di Amministrazione Datastore
- Per le operazioni di copia, eliminazione e backup, gli aggiornamenti recenti potrebbero non essere presi in considerazione.
- Tutte le operazioni di Amministrazione Datastore vengono eseguite all'interno dell'applicazione e pertanto conteggiate nella quota.
- Ti consigliamo vivamente di disattivare le scritture durante un backup o un ripristino.
- Le entità esistenti con le stesse chiavi verranno sovrascritte durante una copia/un ripristino operativa. I duplicati non vengono creati se le operazioni di copia/ripristino vengono eseguite più volte. Le operazioni di copia/ripristino non eliminano i dati extra.
- Se utilizzi una coda non predefinita per il backup/il ripristino, puoi specificare solo
ah-builtin-python-bundle
inqueue.yaml
target. Non puoi usare altre destinazioni.
Autorizzazioni di accesso al database
Per impostazione predefinita, Amministrazione Datastore può accedere a un database Datastore nello stesso progetto e non richiede autorizzazioni di Identity and Access Management per Datastore.
Eseguire il backup dei dati
Segui questi passaggi per creare un file di backup per futuri ripristini dei dati o per esportando.
Se non l'hai ancora fatto, crea un bucket di archiviazione per il tuo progetto. Facoltativamente, verifica che l'account di servizio predefinito di App Engine per il progetto ha accesso al bucket tramite Elenco di controllo dell'accesso. Questa opzione potrebbe essere già impostata per impostazione predefinita e, se necessario, può essere ignorata.
(Consigliato) Disabilita le scritture di Cloud Datastore.
Seleziona i tipi di entità di cui vuoi eseguire il backup.
Fai clic su Entità di backup per visualizzare il modulo di backup.
Nota che viene fornito un nome di backup e che include un'indicazione della data.
Devi modificare questo valore se esegui più di un backup al giorno perché il backup non viene eseguito se esiste già un backup con lo stesso nome.
Tieni presente che la coda predefinita viene utilizzata per il job di backup. Puoi utilizzarla nella maggior parte dei casi.
Se utilizzi una coda non predefinita per il backup/il ripristino, puoi specificare solo
ah-builtin-python-bundle
inqueue.yaml
target. Non puoi utilizzare altri obiettivi.Seleziona Google Cloud Storage come posizione di archiviazione di backup.
Quando scegli Cloud Storage, ti viene richiesto il nome del bucket in cui archiviare i backup, nel formato
[BUCKET_NAME]
. Se vuoi, puoi specificare il nome del bucket con il suffisso di una struttura di directory, ad esempio[BUCKET_NAME]/backups/foo
. Se queste cartelle non esistono già, verranno create.Avvia i job di backup facendo clic su Esegui il backup delle entità. Tieni presente che viene visualizzata una pagina dello stato del job.
Fai clic su Torna ad Amministrazione Datastore per visualizzare lo stato del backup.
Al termine del backup, se hai disabilitato Cloud Datastore scrivi, riattivale.
Considerazioni su backup e ripristino
La funzionalità di backup e ripristino ha lo scopo di aiutarti a ripristinare i dati in caso di errore eliminazioni di dati o per permetterti di esportare i dati. Puoi eseguire il backup di tutte le entità o solo dei tipi di entità selezionati e puoi ripristinare da uno di questi backup in caso di necessità.
I backup vengono salvati in Cloud Storage.
Tieni presente che il backup non contiene indici. Durante il ripristino, gli indici richiesti vengono ricostruiti automaticamente utilizzando le definizioni degli indici che hai caricato con l'applicazione.
Puoi anche utilizzare i file di backup per esportare i dati in altri servizi Google Cloud, come BigQuery.
I ripristini non assegnano nuovi ID alle entità. I ripristini utilizzano gli ID esistenti in backup-time e sovrascrivere qualsiasi entità esistente con lo stesso ID. Durante un ripristino, gli ID vengono riservati durante il ripristino delle entità. Questa operazione dovrebbe evita collisioni tra ID con nuove entità se le scritture sono abilitate mentre è in corso un ripristino in esecuzione. Le nuove entità aggiunte dopo il backup vengono conservate.
Puoi ripristinare tutti i dati da un backup o tipi di entità specifici dal backup. Inoltre, puoi utilizzare questa funzionalità anche per ripristinare un backup degli dati di un'applicazione in un'altra applicazione, a condizione che tu utilizzi Cloud Storage per i backup.
Interruzione di un backup
Se i job di backup sono attualmente in esecuzione, vengono visualizzati nell'elenco Backup in attesa. nella schermata Amministrazione di Cloud Datastore.
Per interrompere questi backup in esecuzione:
- Apri Amministrazione Datastore
- Nella sezione Backup in attesa, seleziona il backup nell'elenco e fai clic su Interrompi.
Quando interrompi un job di backup, App Engine tenta di eliminare i dati di backup salvati fino a quel momento. Tuttavia, in alcuni casi, alcuni file possono rimanere
l'interruzione. Puoi individuare questi file nella posizione che hai scelto per i backup.
in Google Cloud Storage, per poi eliminarle in modo sicuro al termine dell'interruzione. La
I nomi di questi file iniziano con il seguente pattern:
datastore_backup_[BUCKET_NAME]
.
Trovare informazioni su un backup
Potresti voler trovare informazioni dettagliate su un backup, ad esempio quali tipi di entità contiene, dove è stato salvato in Google Cloud Storage, i suoi dati di partenza ora di fine. Per visualizzare queste informazioni di backup:
- Apri Amministrazione datastore
- Seleziona uno o più backup nell'elenco Backup o Backup in attesa.
- Fai clic su Informazioni per visualizzare le informazioni relative ai backup.
- Fai clic su Indietro per tornare alla schermata principale di amministrazione di Cloud Datastore.
Ripristino dei dati
Per eseguire il ripristino da un backup:
- (Consigliato) Disabilita le scritture di Cloud Datastore per i tuoi un'applicazione. In genere è consigliabile farlo per evitare conflitti tra il ripristino e i nuovi dati scritti in Cloud Datastore.
- Apri Amministrazione Datastore
- Nell'elenco dei backup disponibili, seleziona quello da cui vuoi eseguire il ripristino.
- Fai clic su Ripristina.
- Nella pagina informativa visualizzata, nota l'elenco delle entità con le caselle di controllo. Per impostazione predefinita, tutte le entità verranno ripristinate. Deseleziona la casella di controllo accanto a ogni entità che non vuoi ripristinare.
- Sempre nella pagina delle avvertenze, puoi notare che la coda predefinita, con i suoi
impostazioni delle prestazioni preconfigurate, sono utilizzate per il job di ripristino. Se hai bisogno di caratteristiche di rendimento diverse per le code, modifica questo valore impostandolo su un'altra coda configurata in modo diverso, assicurandoti che la coda scelta non abbia un target specificato in
queue.yaml
diverso daah-builtin-python-bundle
. - Avvia il ripristino facendo clic su Ripristina. Tieni presente che viene visualizzata una pagina dello stato del job.
- Fai clic su Torna ad Amministrazione del data store per visualizzare lo stato del ripristino.
- Al termine del ripristino, se hai disabilitato le scritture, riattivare le scritture di Cloud Datastore per l'applicazione.
Ripristino dei dati in un'altra applicazione
Se esegui il backup dei dati con Google Cloud Storage, puoi ripristinare eseguire il backup su applicazioni diverse da quella utilizzata per creare il backup.
Per ripristinare i dati di backup da un'applicazione di origine a un'applicazione di destinazione:
Crea un criterio Identity and Access Management (IAM) nel bucket di archiviazione dell'applicazione di origine con la seguente autorizzazione:
- Entità: [PROJECT_ID]@appspot.gserviceaccount.com
- Ruoli:
Storage Legacy Bucket Reader
eStorage Legacy Object Reader
dove
[PROJECT_ID]
è l'ID progetto dell'applicazione di destinazione.Esegui un nuovo backup nell'applicazione di origine.
(Consigliato) Disabilita le operazioni di scrittura di Cloud Datastore per il target per evitare conflitti tra i dati ripristinati e quelli nuovi in Cloud Datastore.
Nella casella di testo accanto al pulsante Importa informazioni sul backup, specifica il bucket dell'applicazione di origine contenente il backup nel formato
/gs/[BUCKET_NAME]
.
In alternativa, fornisci l'handle file per un backup specifico: per visualizzare l'handle file di un backup, apri la pagina Amministrazione dell'applicazione di origine, seleziona il backup e fai clic su Informazioni. Dovresti vedere l'handle file accanto all'etichetta Handle.Fai clic su Importa informazioni di backup.
La pagina di selezione visualizzata mostra i backup disponibili per il bucket specificato, a meno che tu non abbia specificato un backup tramite il relativo handle. Seleziona il backup desiderato e fai clic su una delle seguenti opzioni:- Aggiungi all'elenco dei backup se vuoi che questo backup venga mantenuto nell'elenco dei backup disponibili per la tua applicazione.
- Ripristina da backup se vuoi eseguire il ripristino da questo backup, ma non vuoi che il backup venga visualizzato nell'elenco dei backup disponibili per la tua applicazione.
Nella pagina informativa visualizzata, nota l'elenco delle entità con le caselle di controllo. Per impostazione predefinita, tutte le entità verranno ripristinate. Deseleziona la casella di controllo accanto a ogni entità che non vuoi ripristinare.
Sempre nella pagina informativa, tieni presente che la coda predefinita, con le relative impostazioni di prestazioni preconfigurate, viene utilizzata per il job di ripristino. Se hai bisogno di caratteristiche di prestazioni diverse per le code, imposta un'altra coda configurata in modo diverso.
Avvia il ripristino facendo clic su Ripristina. Nota che la pagina Stato job visualizzati.
Al termine del ripristino, se hai disattivato le scritture di Cloud Datastore, riattivale.
Visualizzazione dell'utilizzo delle risorse
I backup molto frequenti spesso comportano costi più elevati. Quando esegui un Job Amministratore Cloud Datastore, in realtà stai eseguendo un Job MapReduce. I job MapReduce causano un aumento delle ore di istanza frontend oltre alle operazioni e all'utilizzo dello spazio di archiviazione.
Per visualizzare l'utilizzo delle risorse:
Visita la pagina di App Engine della console Google Cloud.
Utilizza i menu a discesa nella parte superiore della pagina per selezionare il servizio
default
e la versioneah-builtin-python-bundle
.
Abilitazione o disabilitazione delle operazioni di scrittura dei database
In genere è una buona idea disabilitare le scritture prima di un ripristino. In questo modo eviterai conflitti tra il ripristino e gli eventuali nuovi dati scritti del database.
La disattivazione delle scritture impedisce la modifica delle entità da parte di
- Datastore Viewer.
- applicazioni che utilizzano l'API Datastore.
Per attivare o disattivare le operazioni di scrittura:
Vai alla pagina Amministrazione.
Fai clic su Attiva operazioni di scrittura per abilitare le operazioni di scrittura oppure Disabilita le operazioni di scrittura per disabilitare le operazioni di scrittura. Il testo del pulsante varia a seconda lo stato del progetto.
Visualizzazione dell'utilizzo delle risorse dell'amministratore Datastore
Quando esegui un job Amministrazione Datastore, in realtà esegui un il job MapReduce sottostante. I job MapReduce fanno aumentare le ore di istanza frontend oltre alle operazioni e all'utilizzo dello spazio di archiviazione.
Per visualizzare l'utilizzo delle risorse:
Visita la pagina di App Engine della console Google Cloud.
Utilizza i menu a discesa nella parte superiore della pagina per selezionare il servizio
default
e la versioneah-builtin-python-bundle
.
Disabilita l'accesso Amministratore Datastore
Esegui il comando seguente, sostituendo
PROJECT_ID
con l'ID del tuo progetto Google Cloud:curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://appengine.googleapis.com/v1/apps/PROJECT_ID/services/default/versions/ah-builtin-python-bundle