Configura le tabelle Apache Iceberg in BigQuery

Questa pagina descrive come configurare Datastream per la replica nelle tabelle Apache Iceberg in BigQuery.

Le tabelle Apache Iceberg offrono la stessa esperienza completamente gestita delle tabelle BigQuery standard, ma archiviano i dati in bucket Cloud Storage di proprietà del cliente nel formato tabulare Apache Iceberg e nel formato di file Parquet. Puoi eseguire query e analizzare i dati utilizzando le funzionalità di BigQuery mantenendo i dati nei tuoi bucket di archiviazione.

Metadati tabelle

Datastream aggiunge una colonna STRUCT denominata datastream_metadata a ogni tabella scritta nella destinazione BigQuery.

La colonna datastream_metadata contiene i seguenti campi:

  • UUID: questo campo ha il tipo di dati STRING.
  • SOURCE_TIMESTAMP: questo campo ha il tipo di dati INTEGER.
  • CHANGE_SEQUENCE_NUMBER: questo campo ha il tipo di dati STRING. È un numero di sequenza interno utilizzato da Datastream per ogni evento di modifica.
  • CHANGE_TYPE: questo campo ha il tipo di dati STRING. Indica il tipo di evento di modifica. Per la modalità di scrittura di sola aggiunta, il valore è INSERT.
  • SORT_KEYS: questo campo contiene un array di valori STRING. Puoi utilizzare i valori per ordinare gli eventi di modifica.

Configura lo streaming nelle tabelle Apache Iceberg

Per configurare lo stream in modo che importi i dati nelle tabelle Apache Iceberg:

  1. Crea un bucket Cloud Storage in cui vuoi archiviare i dati.
  2. Crea una connessione alle risorse Cloud in BigQuery. Per informazioni su come creare questo tipo di connessione, consulta Crea e configura una connessione alle risorse Cloud.
  3. Ottieni l'identificatore del account di servizio di connessione:

    bq show --location=LOCATION --connection --project_id=PROJECT_ID
    CONNECTION_NAME
    
  4. Concedi l'accesso alla connessione alle risorse Cloud al bucket Cloud Storage che hai creato. Per farlo, aggiungi l'autorizzazione IAM storage.admin al account di servizio di connessione:

    gcloud storage buckets add-iam-policy-binding gs://YOUR_GCS_BUCKET \
    --member=serviceAccount:YOUR_SERVICE_ACCOUNT_ID \
    --role=roles/storage.admin
    
  5. Crea un flusso di tabelle Apache Iceberg.

    Per informazioni su come creare uno stream di tabelle Apache Iceberg utilizzando la console Google Cloud , consulta Creare uno stream.

    Per informazioni su come creare una richiesta per trasmettere dati in streaming alle tabelle Apache Iceberg utilizzando REST, Google Cloud CLI o Terraform, consulta Gestire i flussi utilizzando l'API.

Passaggi successivi