Simplify pipelines with new BigQuery identity columns
TL;DR · AI 摘要
BigQuery推出identity columns功能,自动生成唯一标识符简化数据管道,减少手动ID管理复杂度。
核心要点
- identity columns自动生成64位整数,消除手动ID生成需求
- 两种定义方式:GENERATED ALWAYS和GENERATED BY DEFAULT
- 示例代码展示CREATE TABLE语句的完整实现方式
结构提纲
按章节快速跳转。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- BigQuery Identity Columns
- 核心功能
- 自动生成64位整数
- 两种生成策略
- 使用场景
- 数据摄入简化
- SQL代码优化
- 技术实现
- CREATE TABLE语法
- DML兼容性
金句 / Highlights
值得收藏与分享的关键句。
identity columns自动生成64位整数,消除手动ID生成需求
GENERATED ALWAYS AS IDENTITY确保唯一性,BY DEFAULT允许手动覆盖
INSERT操作无需指定identity列,系统自动分配递增ID
BigQuery 标识列可自动生成连续整数 | Google Cloud 博客
数据分析
通过 BigQuery 标识列简化数据管道
2026年9月2日
##### Wawrzek Hyska
产品经理
##### Aayush Bhatnagar
软件工程师
##### 立即体验 Gemini Enterprise
职场 AI 的入口
立即体验
为了进一步赋能客户的数据之旅,我们非常高兴地宣布 BigQuery 标识列功能的推出。这一新特性允许用户定义自动生成连续 64 位整数值的列,从而简化表内唯一标识符的管理方式。
数据工程师一直在寻找使数据摄入更顺畅、更可靠的方法。BigQuery 标识列提供了一种强大且内置的机制,可自动生成表的唯一数值。通过将 ID 生成的责任转移给 BigQuery,您可以显著降低数据管道的复杂性,并专注于提供洞察。
对数据管道的关键优势
实现标识列可带来多项优势,有助于简化数据架构的开发和维护。
- 简化摄入:现在可以在不预计算唯一键的情况下直接摄入数据,无需在应用程序逻辑或 ETL 工具中进行预处理。
- 减少样板代码:通过使用自动生成的序列,SQL 代码会更简洁且易于维护,因为数据库原生处理键管理。
- 集成自动化:标识列与标准 DML 操作无缝协作,确保每条新记录都能自动获得唯一标识符。
- 灵活集成:无论使用的是 INSERT 还是 MERGE 语句,标识列都能适应现有工作流程。
如何实现标识列
设置标识列非常简单,可以直接在 CREATE TABLE 语句中完成。您有两种主要方式定义这些值的处理方式。
定义选项
| 子句 | 描述 | |------|------| | GENERATED ALWAYS AS IDENTITY | BigQuery 自动管理并确保值的唯一性。 | | GENERATED BY DEFAULT AS IDENTITY | 提供自动值,但在必要时仍允许手动覆盖。 |
示例用法 以下 SQL 语句演示了如何创建一个自动递增 ID 的表,起始值为 1,每次递增 1。
加载中...
CREATE TABLE my_project.my_dataset.orders (
order_id INT64 GENERATED ALWAYS AS IDENTITY (START WITH 1 INCREMENT BY 1),
customer_name STRING,
order_date DATE
);
-- 数据摄入现在更简单:
INSERT INTO my_project.my_dataset.orders (customer_name, order_date)
VALUES ('Joe Doe', CURRENT_DATE());立即开始使用
标识列体现了我们持续致力于提供灵活、高性能且符合标准的数据平台的承诺。通过自动化生成代理键,我们使您更轻松地构建可扩展且易于维护的数据架构。
要了解如何在项目中实现此功能,请访问 BigQuery 标识列文档。
发布类别
- 数据分析
- BigQuery