Ich habe einen ETL-Prozess, der Daten von einem Mongo-Cluster zu BigQuery streamt. Dies geschieht wöchentlich über cron und bei Bedarf manuell. Ich habe für jeden unserer Kunden einen eigenen Datensatz, bei dem die Tabellenstrukturen identisch sind.BigQuery gestreamte Daten sind nicht in Tabelle
Ich habe gerade den Prozess ausgeführt, nur um zu finden, dass, während alle meine Daten-Chunks eine "Erfolg" -Antwort ({"kind": "bigquery # tableDataInsertAllResponse"}) von der insertAll API zurückgegeben, die Tabelle für einen leer ist spezifischer Datensatz
Ich hatte gesehen, dass dies ein paar Mal zuvor passiert ist, konnte aber nie neu erstellen. Ich habe es jetzt zweimal mit den gleichen Ergebnissen ausgeführt. Ich weiß, dass mein Code funktioniert, weil die anderen Datensätze korrekt ausgefüllt sind.
Es gibt keinen 'streaming buffer' in den Tabellendetails und das Ausführen einer count (*) -Abfrage gibt 0 response zurück. Ich habe sogar versucht, zwischengespeicherte Ergebnisse aus der Abfrage zu entfernen, um die Frische zu erzwingen - aber nichts hilft.
Bearbeiten - Nach 10 Minuten aus meinem Datenstrom (ich habe Zeitstempel Protokolle) - Teildaten erscheint jetzt in der Tabelle; nach weiteren 40 Minuten sieht es jedoch nicht so aus, als würden neue Daten einfließen.
Hat noch jemand Schluckauf beim Streaming-Dienst?
Möglicherweise ist erwähnenswert, dass ein Teil meines Prozesses die vorhandene Tabelle in eine Sicherungstabelle kopiert, die ursprüngliche Tabelle entfernt und sie mit dem neuesten Schema neu erstellt. Könnte dies Auswirkungen auf die Einfügungen bestimmter Randfälle haben?