Change history lets you track rows appended to Apache Iceberg managed tables
(formerly BigLake tables for Apache Iceberg in BigQuery) using
BigQuery change history concepts and capabilities. By using the
GoogleSQL APPENDS table-valued function (TVF), you can process
incremental additions over a specified time range. This helps you maintain a
table replica outside of BigQuery, audit historical data
additions, or trigger downstream pipelines without full table scans or costly
copies.
Required permissions
To view the change history on an Apache Iceberg managed table, you need the following permissions:
- The
bigquery.tables.getDatapermission on the table. This permission is included in the following predefined Identity and Access Management (IAM) roles:roles/bigquery.dataViewerroles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.admin
- The
bigquery.connections.delegatepermission on the Google Cloud resource connection associated with the table. This permission is included in the BigQuery Connection User (roles/bigquery.connectionUser) role. - In addition, the service account associated with the Google Cloud resource
connection must have the
roles/storage.objectUserandroles/storage.legacyBucketReaderroles on the underlying Cloud Storage bucket.
For additional permission requirements when a table uses row-level or column-level security, see Required permissions in the BigQuery change history documentation.
Limitations
Apache Iceberg managed tables support change history, and leverage the same concepts and capabilities as standard BigQuery change history. When working with change history on Apache Iceberg managed tables, the following limitations apply:
- Change history is only supported for Apache Iceberg managed tables (formerly BigLake tables for Apache Iceberg in BigQuery).
- The
CHANGEStable-valued function (TVF) isn't supported for Apache Iceberg managed tables. Only theAPPENDSTVF is supported. - The limitations for Apache Iceberg managed tables also apply.
- The limitations for the
APPENDSchange history function also apply.
What's next
For more information, see the following BigQuery documentation:
- Work with change history
APPENDSTVF reference- Create and use Apache Iceberg managed tables
- Learn how to use a BigQuery continuous query to read real-time data from Apache Iceberg managed tables