Managed I/O unterstützt die folgenden Funktionen für BigQuery:
- Dynamische Tabellenerstellung
- Dynamische Ziele
- Für Lesezugriffe verwendet der Connector die BigQuery Storage Read API.
Für Schreibvorgänge verwendet der Connector die folgenden BigQuery-Methoden:
- Wenn die Quelle unbegrenzt ist und Dataflow die genau einmalige Verarbeitung im Streaming verwendet, führt der Connector Schreibvorgänge in BigQuery aus. Dazu wird die BigQuery Storage Write API mit genau einmaliger Übermittlungssemantik verwendet.
- Wenn die Quelle unbegrenzt ist und Dataflow Streaming mit mindestens einmaliger Verarbeitung verwendet, schreibt der Connector Daten in BigQuery. Dazu wird die BigQuery Storage Write API mit Semantik für die mindestens einmalige Zustellung verwendet.
- Wenn die Quelle begrenzt ist, verwendet der Connector BigQuery-Dateiladevorgänge.
Voraussetzungen
Die folgenden SDKs unterstützen verwaltete E/A für BigQuery:
- Apache Beam SDK für Java Version 2.61.0 oder höher
- Apache Beam SDK für Python Version 2.61.0 oder höher
Konfiguration
Managed I/O für BigQuery unterstützt die folgenden Konfigurationsparameter:
BIGQUERY
Lesen
Konfiguration | Typ | Beschreibung |
---|---|---|
kms_key |
str
|
Diesen Cloud KMS-Schlüssel zum Verschlüsseln Ihrer Daten verwenden |
Abfrage |
str
|
Die SQL-Abfrage, die zum Lesen aus der BigQuery-Tabelle ausgeführt werden soll. |
row_restriction |
str
|
Nur Zeilen lesen, die diesem Filter entsprechen. Der Filter muss mit Google Standard-SQL kompatibel sein. Dies wird beim Lesen über eine Abfrage nicht unterstützt. |
Felder |
list[str]
|
Nur die angegebenen Felder (Spalten) aus einer BigQuery-Tabelle lesen. Felder werden möglicherweise nicht in der angegebenen Reihenfolge zurückgegeben. Wenn kein Wert angegeben ist, werden alle Felder zurückgegeben. Beispiel: „col1, col2, col3“ |
Tabelle |
str
|
Der voll qualifizierte Name der BigQuery-Tabelle, aus der gelesen werden soll. Format: [${PROJECT}:]${DATASET}.${TABLE} |
BIGQUERY
Schreiben
Konfiguration | Typ | Beschreibung |
---|---|---|
table |
str
|
Die BigQuery-Tabelle, in die Daten geschrieben werden sollen. Format: [${PROJECT}:]${DATASET}.${TABLE} |
drop |
list[str]
|
Eine Liste der Feldnamen, die vor dem Schreiben aus dem Eingabe-Datensatz entfernt werden sollen. Schließt sich mit „keep“ und „only“ gegenseitig aus. |
Notizen |
list[str]
|
Eine Liste der Feldnamen, die im Eingabe-Datensatz beibehalten werden sollen. Alle anderen Felder werden vor dem Schreiben gelöscht. Schließt sich gegenseitig mit „drop“ und „only“ aus. |
kms_key |
str
|
Diesen Cloud KMS-Schlüssel zum Verschlüsseln Ihrer Daten verwenden |
nur |
str
|
Der Name eines einzelnen Datensatzfelds, das geschrieben werden soll. Schließt sich gegenseitig mit „keep“ und „drop“ aus. |
triggering_frequency_seconds |
int64
|
Bestimmt, wie oft der Fortschritt in BigQuery „festgeschrieben“ werden soll. Die Standardeinstellung ist alle 5 Sekunden. |
Nächste Schritte
Weitere Informationen und Codebeispiele finden Sie unter den folgenden Themen: