Auf dieser Seite wird beschrieben, wie Sie Datastream für die Replikation in Apache Iceberg-Tabellen in BigQuery konfigurieren.
Apache Iceberg-Tabellen bieten dieselbe vollständig verwaltete Erfahrung wie Standard-BigQuery-Tabellen, speichern Daten aber in kundeneigenen Cloud Storage-Buckets im Apache Iceberg-Tabellenformat und Parquet-Dateiformat. Sie können Daten mit BigQuery-Funktionen abfragen und analysieren, während die Daten in Ihren eigenen Speicher-Buckets verbleiben.
Tabellenmetadaten
Datastream fügt jeder Tabelle, die in das BigQuery-Ziel geschrieben wird, eine STRUCT-Spalte mit dem Namen datastream_metadata hinzu.
Die Spalte datastream_metadata enthält die folgenden Felder:
UUID: Dieses Feld hat den DatentypSTRING.SOURCE_TIMESTAMP: Dieses Feld hat den DatentypINTEGER.CHANGE_SEQUENCE_NUMBER: Dieses Feld hat den DatentypSTRING. Es ist eine interne Sequenznummer, die von Datastream für jedes Änderungsereignis verwendet wird.CHANGE_TYPE: Dieses Feld hat den DatentypSTRING. Es gibt den Typ des Änderungsereignisses an. Im Schreibmodus „Nur anhängen“ ist der WertINSERT.SORT_KEYS: Dieses Feld enthält ein Array vonSTRING-Werten. Sie können die Werte verwenden, um die Änderungsereignisse zu sortieren.
Streaming in Apache Iceberg-Tabellen konfigurieren
So richten Sie den Stream zum Aufnehmen von Daten in Apache Iceberg-Tabellen ein:
- Erstellen Sie einen Cloud Storage-Bucket, in dem Sie Ihre Daten speichern möchten.
- Erstellen Sie eine Cloud-Ressourcenverbindung in BigQuery. Informationen zum Erstellen dieser Art von Verbindung finden Sie unter Cloud-Ressourcenverbindung erstellen und einrichten.
Rufen Sie die ID des Dienstkontos der Verbindung ab:
bq show --location=LOCATION --connection --project_id=PROJECT_ID CONNECTION_NAMEGewähren Sie der Cloud-Ressourcenverbindung Zugriff auf den erstellten Cloud Storage-Bucket. Fügen Sie dazu dem Dienstkonto der Verbindung die IAM-Berechtigung
storage.adminhinzu:gcloud storage buckets add-iam-policy-binding gs://YOUR_GCS_BUCKET \ --member=serviceAccount:YOUR_SERVICE_ACCOUNT_ID \ --role=roles/storage.adminErstellen Sie einen Stream für Apache Iceberg-Tabellen.
Informationen zum Erstellen eines Streams für Apache Iceberg-Tabellen über die Google Cloud Konsole finden Sie unter Stream erstellen.
Informationen zum Erstellen einer Anfrage zum Streamen von Daten in Apache Iceberg-Tabellen mit REST,
Google Cloud CLIoder Terraform finden Sie unter Streams mit der API verwalten.
Nächste Schritte
- Weitere Informationen zu Streams finden Sie unter Lebenszyklus von Streams.
- Informationen zum Erstellen eines Streams finden Sie unter Stream erstellen.
- Informationen zum Erstellen eines Verbindungsprofils, das Sie mit einem Stream für Apache Iceberg-Tabellen verwenden können, finden Sie unter Verbindungsprofil für BigQuery erstellen.