2009-12-27 3 views
12

Google stesso fornisce due soluzioni.Qual è il modo migliore per eseguire il backup dei dati su Google App Engine?

http://code.google.com/appengine/docs/python/tools/uploadingdata.html

Una di queste è nuovo e sperimentale e richiede di eseguire un comando separato (e separatamente inserisci il tuo nome utente e password) per ogni tipo di dati che si desidera eseguire il backup.

L'altro richiede di scrivere due volte informazioni sulla struttura di tutti i tipi di dati, informazioni che sono già implicite nel file dei modelli. (Abbiamo 25 diversi tipi di dati, quindi sono sensibile a questo genere di cose. Inoltre, le modifiche future dovranno essere apportate in 3 punti.)

Poi c'è la soluzione di Aral Balkan (google for " gaebar "), ma il suo codice su Github non è stato aggiornato tra circa un anno, e sta anche dicendo alle persone di apportare alcune modifiche agli interni di App Engine (che sembra rischioso, dato che cambiano in ogni versione).

Penso che mi sto appoggiando alla soluzione non sperimentale di Google, ma sembrano tutti piuttosto male.

+0

vedi questa domanda per ulteriori informazioni -> http://stackoverflow.com/questions/1245632/is-there-any-tool-to-backup-restore-google-datastore-entities – JohnIdol

risposta

3

Dai un'occhiata a AppRocket (un motore di replica open source che sincronizza il datastore di Google App Engine e il database MySQL.) Il progetto sembra essere attivo.

+0

Sembra che questo progetto sia ora 5 anni defunto e si è trasferito in github. Alcuni altri sviluppatori hanno effettuato aggiornamenti più recenti - fino al 2012. https://github.com/k7d/approcket/network –

2

Cosa c'è di sbagliato nella funzionalità --dump? Sì, devi scaricare ogni tipo separatamente, ma questo sarà il caso con qualsiasi soluzione. Se vuoi solo i backup, soddisfa esattamente le tue esigenze.

+0

Perché devo inserire il mio nome utente e la password separatamente per ciascun tipo? –

+0

Non è necessario: basta utilizzare la funzionalità di memorizzazione nella cache dei cookie, che dovrebbe essere abilitata per impostazione predefinita. –

+1

il download di ogni tipo separatamente non è più necessario. – dfrankow

11

Questa è una descrizione più esplicita di bulkloader.py soluzione di backup e ripristino senza configurazione. Non so quando si presenta this issue (stack overflow).

dati dumping da fooapp in un file chiamato dump1.bin:

python2.5 /usr/local/google_appengine/bulkloader.py \ 
    --dump --url http://fooapp.appspot.com/remote-api-url \ 
    --filename dump1.bin 

Si devono avere la remote API enabled. Il remote-api-url potrebbe essere _ah/remote_api a seconda della configurazione.

Caricamento dei dati dalla dump1.bin a un'istanza locale dev:

python2.5 /usr/local/google_appengine/bulkloader.py \ 
    --restore --url http://localhost:8080/remote-api-url \ 
    --filename dump1.bin --application fooapp 

Questo assume un sistema UNIX-like e che appengine è installato in// locale/google_appengine usr.

Non so se funzioni con Java, ma potrebbe.