Ich habe große CSV-Dateien und Excel-Dateien, wo ich sie lesen und erstellen Sie die erforderlichen create-Tabelle Skript dynamisch abhängig von den Feldern und Typen. Fügen Sie dann die Daten in die erstellte Tabelle ein.Einfügen großer Datenmengen über Bigquery-Python-Bibliothek in BigQuery
Ich habe this gelesen und verstanden, dass ich sie mit jobs.insert()
anstelle von tabledata.insertAll()
für große Datenmengen senden sollte.
So nenne ich es (funktioniert für kleinere Dateien, nicht große).
result = client.push_rows(datasetname,table_name,insertObject) # insertObject is a list of dictionaries
Wenn ich Bibliothek push_rows es diesen Fehler in Windows gibt.
[Errno 10054] An existing connection was forcibly closed by the remote host
und dies in Ubuntu.
[Errno 32] Broken pipe
Also, wenn ich durch BigQuery-Python Code ging verwendet es table_data.insertAll()
.
Wie kann ich das mit dieser Bibliothek tun? Ich weiß, dass wir über Google-Speicher hochladen können, aber ich brauche eine direkte Upload-Methode.
Haben Sie nur einen Link auf die OP auch hinzufügen ?! –
oops, Korrektur Rekursion! –
@FelipeHoffa gsutil kann ich innerhalb Python-Code verwenden? Es gab einige Spaltentypen Probleme, wenn Sie den csv-Dateipfad direkt eingeben und hochladen. also kann ich die csv lesen und die felder entsprechend umwandeln. Gibt es eine Möglichkeit, das Objekt (möglicherweise eine Liste von Wörterbüchern) in die Tabelle einzufügen, nachdem ich sie umgesetzt habe? –