2017-08-11 1 views
2

Lassen Sie uns in Betracht ziehen, ich habe mehrere Jobs, die Aktualisierung/Laden der gleichen Tabelle. Gemäß dem Semaphor-Konzept warten andere Prozesse, wenn ein Prozess Daten in die Tabelle lädt, bis die Ressource für diese Tabelle frei wird. Ich würde gerne wissen, gibt es irgendwelche Semaphor-Konzepte für das Laden von Daten in BigQuery-Tabelle mit Datenfluss? Wenn ja, wie wird dann mit einem solchen Szenario für die BigQuery-Tabellenladung unter Verwendung des Datenflusses verfahren?Ist Bigquery unterhält Nebenläufigkeit

Antwort

0

Ich glaube nicht, dass Datenfluss Wissen über die Tabellenaktivität hat, senden sie einfach das angeforderte Update als Job zur BigQuery.

BigQuery empfängt den Job und sendet ihn dann an eine Warteschlange der angegebenen Tabelle. Also wird das ganze "Semaphor-Konzept" intern von Bigquery und der gegebenen Tabelle gehandhabt.

Stellen Sie sich zum Beispiel vor, dass Sie parallel drei Abfragen ausführen, die eine Tabelle aktualisieren, zwei davon über den Datenfluss und die andere über das Skript.

Die drei gehen in die selbe Queue und bigquery Prozess nacheinander (einer nach dem anderen abgeschlossen) in der Reihenfolge, in der sie in bigquery angekommen sind.