使用更改历史记录

借助更改历史记录,您可以使用 BigQuery 更改历史记录概念和功能,跟踪附加到 Apache Iceberg 托管表(以前称为 BigQuery 中适用于 Apache Iceberg 的 BigLake 表)的行。通过使用 GoogleSQL APPENDS 表值函数 (TVF),您可以处理指定时间范围内的增量添加。这有助于您在 BigQuery 之外维护表副本、审核历史数据添加,或触发下游流水线,而无需进行全表扫描或进行成本高昂的复制。

所需权限

如需查看 Apache Iceberg 托管式表的更改历史记录,您需要拥有以下权限:

  • 表的 bigquery.tables.getData 权限。以下预定义的 Identity and Access Management (IAM) 角色包含此权限:
    • roles/bigquery.dataViewer
    • roles/bigquery.dataEditor
    • roles/bigquery.dataOwner
    • roles/bigquery.admin
  • 对与表关联的 Google Cloud 资源连接拥有bigquery.connections.delegate权限。BigQuery Connection User (roles/bigquery.connectionUser) 角色具有此权限。
  • 此外,与 Google Cloud 资源连接关联的服务账号必须对底层 Cloud Storage 存储桶具有 roles/storage.objectUser 和 roles/storage.legacyBucketReader 角色。

如需了解表使用行级或列级安全性时的其他权限要求,请参阅 BigQuery 更改历史记录文档中的所需权限。

限制

Apache Iceberg 托管表支持更改历史记录,并利用与标准 BigQuery 更改历史记录相同的概念和功能。 在 Apache Iceberg 托管式表上使用更改历史记录时,存在以下限制:

后续步骤

如需了解详情,请参阅以下 BigQuery 文档: