Stay organized with collections
Save and categorize content based on your preferences.
This page describes how to configure Datastream for replication to
BigLake Iceberg tables in BigQuery.
BigLake Iceberg tables offer the same fully managed experience as
standard BigQuery tables, but store data in customer-owned Cloud Storage
buckets in the Apache Iceberg table format and Parquet file format. You can
query and analyse data using BigQuery capabilities while keeping the
data in your own storage buckets.
Configure streaming to BigLake Iceberg tables
To set up your stream to ingest data into BigLake Iceberg tables:
Grant your Cloud resource connection access to the Cloud Storage bucket that
you created. To do this, add the storage.admin IAM permission
to the connection service account:
For information about how to create a BigLake Iceberg tables stream
using the Google Cloud console, see
Create a stream.
For information about how to create a request to stream data to
BigLake Iceberg tables using REST, Google Cloud CLI or Terraform, see
Manage streams using the API.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[],[],null,["# Configure BigLake Iceberg tables in BigQuery\n\nThis page describes how to configure Datastream for replication to\nBigLake Iceberg tables in BigQuery.\n\nBigLake Iceberg tables offer the same fully managed experience as\nstandard BigQuery tables, but store data in customer-owned Cloud Storage\nbuckets in the Apache Iceberg table format and Parquet file format. You can\nquery and analyse data using BigQuery capabilities while keeping the\ndata in your own storage buckets.\n| **Note:** Streaming to BigLake Iceberg tables is supported only in the **append-only** write mode. For more information, see [Configure write mode](/datastream/docs/destination-bigquery#configure-write-mode).\n\nConfigure streaming to BigLake Iceberg tables\n---------------------------------------------\n\nTo set up your stream to ingest data into BigLake Iceberg tables:\n\n1. [Create a Cloud Storage bucket](/storage/docs/creating-buckets) where you want to store your data.\n2. Create a Cloud resource connection in BigQuery. For information about how to create this type of connection, see [Create and set up a Cloud resource connection](/bigquery/docs/create-cloud-resource-connection).\n3. Get the identifier of the connection service account:\n\n bq show --location=\u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e --connection --project_id=\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e\n \u003cvar translate=\"no\"\u003eCONNECTION_NAME\u003c/var\u003e\n\n4. Grant your Cloud resource connection access to the Cloud Storage bucket that\n you created. To do this, add the `storage.admin` IAM permission\n to the connection service account:\n\n gcloud storage buckets add-iam-policy-binding gs://\u003cvar translate=\"no\"\u003eYOUR_GCS_BUCKET\u003c/var\u003e \\\n --member=serviceAccount:\u003cvar translate=\"no\"\u003eYOUR_SERVICE_ACCOUNT_ID\u003c/var\u003e \\\n --role=roles/storage.admin\n\n5. Create a BigLake Iceberg tables stream.\n\n For information about how to create a BigLake Iceberg tables stream\n using the Google Cloud console, see\n [Create a stream](/datastream/docs/create-a-stream).\n\n For information about how to create a request to stream data to\n BigLake Iceberg tables using REST, `Google Cloud CLI` or Terraform, see\n [Manage streams using the API](/datastream/docs/manage-streams#createastream-blmt).\n\n| **Note:** The Cloud Storage bucket, BigQuery dataset, and the Datastream connection must all be in the same region.\n\nWhat's next\n-----------\n\n- To learn more about streams, see [Stream lifecycle](/datastream/docs/stream-states-and-actions).\n- To learn how to create a stream, see [Create a stream](/datastream/docs/create-a-stream).\n- To learn how to create a connection profile that you can use with a BigLake Iceberg tables stream, see [Create a connection profile for BigQuery](/datastream/docs/create-connection-profiles#cp4bigquery)."]]