- HTTP-Anfrage
- Pfadparameter
- Anfragetext
- Antworttext
- Autorisierungsbereiche
- ImportedDataInfo
- TableDefinition
- Format
- Codierung
- CsvOptions
- RecordSchema
- FieldSchema
- Typ
- WriteDisposition
- Testen!
Dem Data Transfer Service wird mitgeteilt, dass die Daten geladen werden können. Der Data Transfer Service startet und überwacht mehrere BigQuery-Ladejobs für eine Übertragungsausführung. Überwachte Jobs werden automatisch wiederholt und beim Starten und Beenden eines Jobs werden Log-Nachrichten generiert. Kann für eine Übertragungsausführung mehrfach aufgerufen werden.
HTTP-Anfrage
POST https://bigquerydatatransfer.googleapis.com/v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}:startBigQueryJobs
Die URL verwendet die Syntax der gRPC-Transcodierung.
Pfadparameter
Parameter | |
---|---|
name |
Der Name der Ressource im Format "projects/{projectId}/locations/{locationId}/transferConfigs/{configId}/runs/{run_id}" |
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
JSON-Darstellung | |
---|---|
{
"importedData": [
{
object( |
Felder | |
---|---|
importedData[] |
Importiert Jobs, die gestartet und überwacht werden sollen. |
userCredentials |
Nutzeranmeldedaten, die zum Starten/Überwachen von BigQuery-Jobs verwendet werden sollen. Falls nicht angegeben, werden Jobs mit den Anmeldedaten des Datenquellen-Dienstkontos gestartet. Dies kann ein OAuth- oder JWT-Token sein. Ein base64-codierter String |
Antworttext
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Autorisierungsbereiche
Erfordert den folgenden OAuth-Bereich:
https://www.googleapis.com/auth/cloud-platform
Weitere Informationen finden Sie in der Authentifizierungsübersicht.
ImportedDataInfo
Beschreibt Daten, die importiert werden sollen.
JSON-Darstellung | |
---|---|
{ "sql": string, "destinationTableId": string, "destinationTableDescription": string, "tableDefs": [ { object( |
Felder | |
---|---|
sql |
Die SQL-Abfrage, die auszuführen ist. Wenn das Feld leer ist, prüft die API, ob nur eine "table_def" angegeben ist, und lädt die entsprechende Tabelle. Es werden nur Standard-SQL-Abfragen angenommen. Legacy-SQL ist nicht zulässig. |
destinationTableId |
Tabelle, in die die Ergebnisse geschrieben werden sollen. |
destinationTableDescription |
Die Beschreibung einer Zieltabelle. Dies können mehrere Sätze oder Absätze sein, die den Inhalt der Tabelle ausführlich beschreiben. |
tableDefs[] |
Beschreibt OHNE den Parameter "sql" das Schema der Zieltabelle. Bei Verwendung MIT dem Parameter "sql" werden Tabellen mit Daten beschrieben, die außerhalb von BigQuery gespeichert sind. |
userDefinedFunctions[] |
Der Inline-Code für benutzerdefinierte Funktionsressourcen. Wird ignoriert, wenn der Parameter "sql" leer ist. |
writeDisposition |
Gibt die Aktion an, wenn die Zieltabelle bereits vorhanden ist. |
TableDefinition
Die externe Tabellendefinition. Auf diese Tabellen kann in der Abfrage mit "name" verwiesen werden. Die Tabellen können wie jede andere Tabelle gelesen werden.
JSON-Darstellung | |
---|---|
{ "tableId": string, "sourceUris": [ string ], "format": enum( |
Felder | |
---|---|
tableId |
Die BigQuery-Tabellen-ID (erforderlich). Mit diesem Feld wird in der Abfrage auf diese Tabelle verwiesen. |
sourceUris[] |
Die URIs für die zu importierenden Daten. Alle URIs müssen aus demselben Speichersystem stammen. |
format |
Beschreibt das Format der Daten in "source_uri". |
maxBadRecords |
Gibt die maximale Anzahl fehlerhafter Datensätze an, die ignoriert werden können. Wenn fehlerhafte Datensätze diesen Schwellenwert überschreiten, wird die Abfrage abgebrochen. |
encoding |
Gegebenenfalls die Zeichencodierung der Eingabe (CSV, JSON). Ist standardmäßig auf UTF8 eingestellt. |
csvOptions |
CSV-spezifische Optionen. |
schema |
Ein optionales Schema für die Daten. Wenn das Schema für JSON- und CSV-Formate nicht angegeben ist, wird versucht, es automatisch zu erkennen. |
ignoreUnknownValues |
Gibt an, ob zusätzliche Werte, die nicht im Tabellenschema enthalten sind, zulässig sind. |
Format
Das Datenformat.
Enums | |
---|---|
FORMAT_UNSPECIFIED |
Nicht spezifiziertes Format. In diesem Fall muss das Format aus der Datenquelle abgeleitet werden. |
CSV |
CSV-Format. |
JSON |
Durch Zeilenumbruch getrenntes JSON. |
AVRO |
Avro-Format. Siehe http://avro.apache.org. |
RECORDIO |
RecordIO. |
COLUMNIO |
ColumnIO. |
CAPACITOR |
Capacitor. |
PARQUET |
Parquet-Format. Siehe https://parquet.apache.org. |
ORC |
ORC-Format. Siehe https://orc.apache.org. |
Codierung
Die Codierung von Eingabedaten im CSV-/JSON-Format.
Enums | |
---|---|
ENCODING_UNSPECIFIED |
Die Standardcodierung (UTF8). |
ISO_8859_1 |
Die ISO_8859_1-Codierung. |
UTF8 |
Die UTF-8-Codierung. |
CsvOptions
CSV-spezifische Optionen.
JSON-Darstellung | |
---|---|
{ "fieldDelimiter": string, "allowQuotedNewlines": boolean, "quoteChar": string, "skipLeadingRows": string, "allowJaggedRows": boolean } |
Felder | |
---|---|
fieldDelimiter |
Das Trennzeichen. Dies ist derzeit auf U+0001 bis U+00FF beschränkt. Während der Validierung werden zusätzliche Beschränkungen angewendet. |
allowQuotedNewlines |
Ob in CSV-Dateien Abschnitte in Anführungszeichen mit Zeilenumbrüchen zulässig sind. Wenn Abschnitte in Anführungszeichen mit Zeilenumbrüchen zulässig sind, können CSV-Dateien nicht geteilt werden. |
quoteChar |
Das Anführungszeichen. Dies ist derzeit auf U+0000 bis U+00FF beschränkt. Während der Validierung werden zusätzliche Beschränkungen angewendet. Legen Sie dieses Feld auf '\0' fest, um anzugeben, dass kein Anführungszeichen verwendet wird. |
skipLeadingRows |
Die Anzahl der führenden Zeilen, die übersprungen werden sollen. |
allowJaggedRows |
Lässt Zeilen zu, in denen nachgestellte optionale Spalten fehlen. |
RecordSchema
Beschreibt das Schema der Daten, die aufzunehmen sind.
JSON-Darstellung | |
---|---|
{
"fields": [
{
object( |
Felder | |
---|---|
fields[] |
Ein Feld pro Spalte im Datensatz. |
FieldSchema
Definiert das Schema eines Feldes in den importierten Daten.
JSON-Darstellung | |
---|---|
{ "fieldName": string, "type": enum( |
Felder | |
---|---|
fieldName |
Der Name des Feldes. Entspricht [A-Za-z_][A-Za-z_0-9]{0,127}. |
type |
Der Typ des Feldes. |
isRepeated |
Ob das Feld wiederholt wird. |
description |
Die Beschreibung für dieses Feld. |
schema |
Ist vorhanden, wenn "type" = RECORD. |
Typ
Feldtyp LINT.IfChange.
Enums | |
---|---|
TYPE_UNSPECIFIED |
Ungültiger Wert. |
STRING |
64 KB, UTF8. |
INTEGER |
64-Bit-signiert. |
FLOAT |
64-Bit-IEEE-Gleitkomma. |
RECORD |
Aggregationstyp. |
BYTES |
64 KB, binär. |
BOOLEAN |
Zweiwertig. |
TIMESTAMP |
64-Bit-signierte Mikrosekunde seit der UTC-Epoche. |
DATE |
Ziviles Datum – Jahr, Monat, Tag. |
TIME |
Zivile Uhrzeit – Stunde, Minute, Sekunde, Mikrosekunden. |
DATETIME |
Kombination aus zivilem Datum und ziviler Uhrzeit. |
NUMERIC |
Numerischer Typ mit einer Genauigkeit von 38 Dezimalstellen und einer Skalierung von neun Dezimalstellen. |
GEOGRAPHY |
Geografieobjekt (go/googlesql_geography). |
WriteDisposition
Optionen zum Schreiben in die Tabelle. Die Option WRITE_EMPTY wird absichtlich aus der Enum ausgeschlossen und wird vom Data Transfer Service nicht unterstützt.
Enums | |
---|---|
WRITE_DISPOSITION_UNSPECIFIED |
Die standardmäßige writeDispostion |
WRITE_TRUNCATE |
überschreibt die Tabellendaten. |
WRITE_APPEND |
die Daten werden an die Tabelle angehängt. Beachten Sie, dass bei Verwendung dieses Modus Duplikate auftreten können. |