Ich habe eine Datenbank, die Datensätze zurück bis 2014 hat, dass ich es zu BigQuery migrieren muss, und ich denke, dass die Verwendung der partitionierten Tabellen Funktion bei der Leistung der Datenbank hilft.Wie Sie historische Daten in ihre jeweiligen Partitionen einfügen
Bisher habe ich eine kleine Probe der realen Daten über die Web-UI geladen, und während die Tabelle bereits partitioniert war, gingen alle Daten auf eine einzelne Partition mit dem Datum, an dem ich die Abfrage ausgeführt hatte erwartet, um fair zu sein.
Ich suchte die Dokumentation Seiten und ich lief in this, die ich nicht sicher bin, ob das, was ich suche.
Ich habe zwei Fragen:
1) In dem obigen Beispiel, sie nutzen die Dekorateur auf einer SELECT
Abfrage, aber kann ich es auf einer INSERT
Abfrage als auch?
2) Ich verwende die Python client, um mit der BigQuery API zu verbinden, und ich, während ich die table.insert_data
Methode gefunden habe, konnte ich nichts finden, das speziell auf die Partitionen verweist, und ich frage mich, ob ich habe es verpasst oder ich muss die Abfrage-API verwenden, um auch Daten einzufügen.
Bei dem Versuch, so zu verfahren, habe ich eine BadRequest: 'Sie können nur innerhalb von 31 Tagen in der Vergangenheit und 16 Tagen in der Zukunft relativ zum aktuellen Datum auf Partitionen streamen.Eine mögliche Problemumgehung? – Trolldejo
Es tut mir leid, aber es stellte sich heraus, dass wir mit der Implementierung von BigQuery in unserem Projekt nicht vorangekommen sind und ich war nicht auf dieses spezielle Problem gestoßen, als ich damit experimentierte. Es könnte nützlicher sein, wenn Sie eine neue Frage stellen und einen Link zu diesem Link erstellen. – HardDiskD
Haben Sie Ihren Punkt, lohnt sich nicht eine neue Frage imho öffnen. Workarounds werden in der GCP BQ-Dokumentation vorgeschlagen. Der beste Rat ist die Verwendung von bq als Befehlszeile ... – Trolldejo