Come finire un caricamento dei dati rotto al server di Google App Engine produzione?
-
23-09-2019 - |
Domanda
il caricamento dei dati ad App Engine (non dev server) attraverso class loader e remote API, e mi ha colpito la quota nel bel mezzo di un file CSV. Sulla base di registri e il progresso SqlLite db, come posso selezionare restante porzione di dati da caricare?
Passando attraverso decine di record per determinare che era e che non è stato trasferito, non è compito attraente, così cerco un modo per limitare il numero di disco che ho bisogno di controllare.
Ecco rilevanti (IMO) porzione di log, come interpretare i numeri di elemento di lavoro?
[DEBUG 2010-03-30 03:22:51,757 bulkloader.py] [Thread-2] [1041-1050] Transferred 10 entities in 3.9 seconds
[DEBUG 2010-03-30 03:22:51,757 adaptive_thread_pool.py] [Thread-2] Got work item [1071-1080]
<cut>
[DEBUG 2010-03-30 03:23:09,194 bulkloader.py] [Thread-1] [1141-1150] Transferred 10 entities in 4.6 seconds
[DEBUG 2010-03-30 03:23:09,194 adaptive_thread_pool.py] [Thread-1] Got work item [1161-1170]
<cut>
[DEBUG 2010-03-30 03:23:09,226 bulkloader.py] [Thread-3] [1151-1160] Transferred 10 entities in 4.2 seconds
[DEBUG 2010-03-30 03:23:09,226 adaptive_thread_pool.py] [Thread-3] Got work item [1171-1180]
[ERROR 2010-03-30 03:23:10,174 bulkloader.py] Retrying on non-fatal HTTP error: 503 Service Unavailable
Soluzione
È possibile riprendere il caricamento di rotta:
Se il trasferimento viene interrotto, è può riprendere il trasferimento da dove lasciato fuori utilizzando il --db_filename = ... discussione. Il valore è il nome del file di progresso creato dallo strumento, che è un nome che hai fornito con l'argomento --db_filename quando è stato avviato il trasferimento, o di un default nome che include un timestamp. Questo presuppone che si è installato sqlite3, e non disattivare il file di avanzamento con --db_filename = saltare.