本文档介绍了如何创建连接到 BigQuery 数据的数据存储区 。您可以将此数据存储区关联到 Gemini Enterprise 应用,以允许智能体分析您的数据。
如需使用 Gemini Enterprise 数据存储区连接到 BigQuery 数据,您可以使用以下模式之一:
- 联合查询(推荐) [预览版]: 就地连接到 BigQuery 数据,而无需承担 复制和移动数据的出站费用。联合查询会将您的查询直接发送到 BigQuery,查询范围涵盖您的身份有权访问的所有数据集和表,这对于分析查询来说效率更高。由于查询是使用您的凭据运行的, BigQuery IAM 权限(包括 行级安全性)保持 不变。当您使用联合查询模式时, Knowledge Catalog 会在您的 Gemini Enterprise 应用的 Assistant 标签页中自动启用,以便为智能体提供搜索用户有权访问的数据 和查找上下文的工具。
- 数据注入:将数据从特定的 BigQuery 表复制到 Gemini Enterprise 数据存储区。必须刷新数据才能反映 BigQuery 表中的更改。此模式会产生将数据移动到新位置的出站费用,并且现有 IAM 权限不会复制到数据存储区中。
准备工作
如需在 Gemini Enterprise 中创建 BigQuery 数据存储区,您必须
具有
Gemini Enterprise Admin
(roles/discoveryengine.agentspaceAdmin) 或
Discovery Engine Admin
(roles/discoveryengine.admin) 角色。如需了解详情,请参阅
向管理员授予权限。
如果您的项目受 VPC Service Controls 边界保护或启用了组织政策强制执行,请确保您的组织政策允许连接器:
- 将
bigquery_mcp添加到allowedDataSources托管式限制(限制数据连接器允许的数据源 )中的discoveryengine.managed.allowedDataSources参数。如需了解详情,请参阅 受管政策约束概览 和配置允许的数据源。
此外,请为计划使用的 连接器模式 配置所需的 BigQuery IAM 权限:
联合查询
联合查询模式使用 BigQuery MCP 服务器。由于 不同的 MCP 工具(操作) 需要不同的权限,因此所需的 IAM 权限 取决于您使用的工具。如需了解详情,请参阅 BigQuery MCP 文档中的 必需的角色。
以下是用户通过连接器查询或执行操作时最常用的 IAM 角色:
-
在执行查询的 BigQuery Google Cloud 项目
(计算项目或结算项目)中具有 BigQuery Job User (
roles/bigquery.jobUser)角色,以便用户能够运行查询作业。 - 在存储数据的 BigQuery Google Cloud 项目(存储项目)中具有 BigQuery Data Viewer (
roles/bigquery.dataViewer)角色,以便用户能够在查询中或 通过 BigQuery 元数据工具(例如get_table_info)访问数据。 如果启用了写入操作,请改为授予 BigQuery Data Editor (roles/bigquery.dataEditor) 角色。 - 在 BigQuery 存储 Google Cloud 项目和计算
Google Cloud 项目中都具有 MCP Tool User (
roles/mcp.toolUser) 角色。
数据注入
如需从与包含您要创建的 Gemini Enterprise 数据存储区的 Google Cloud 项目不同的源 Google Cloud 项目注入数据,请在源 BigQuery 项目中向service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
服务帐号(其中 PROJECT_NUMBER 是包含Google Cloud 数据存储区的项目的项目编号)授予以下 IAM 角色:
创建 BigQuery 数据存储区
如需创建将 BigQuery 中的数据连接到 Gemini Enterprise 的数据存储区,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Gemini Enterprise 页面。
前往数据存储区 页面。
点击创建数据存储区 。
在来源 页面上,为数据存储区选择一个数据源。在选择数据源 搜索字段中搜索“BigQuery”,或在第一方数据源 列表中找到 BigQuery。选择添加数据源 。
在数据 页面上,选择连接器模式 连接到数据的连接器模式。根据您选择的模式,从以下标签页中进行选择以获取进一步说明。
联合查询
数据注入
- 选择数据注入 。
- 确定要导入的数据类型。在导入数据之前,请查阅准备数据以进行注入。
- 如果要导入结构化数据,请从采用您自己的架构的 BigQuery 表 或采用元数据的 BigQuery 表 中进行选择。如果使用您自己的架构,系统会在导入期间自动检测您的架构。如果使用元数据,您必须在导入期间定义 Google 指定的架构。
- 如果要导入需要专门处理的数据,请从专门的数据导入 下的选项中进行选择。
在同步频率 下,选择您希望从 BigQuery 表导入数据的频率。创建数据存储区后,将无法更改此选项。
- 选择一次性 进行单次导入。
- 选择定期 以设置周期性导入时间表。
选择要导入的数据表。在 BigQuery 路径 字段中,点击 浏览,选择您已 准备好进行注入 的表,然后点击 选择。或者,您也可以直接在 BigQuery 路径 字段中输入表位置。
点击继续 。
创建数据存储区后,您可以前往数据存储区 页面,然后点击数据存储区名称,在其数据 页面上查看相关详情,以检查数据注入状态。当活动 标签页上的“状态”列从正在进行 更改为导入已完成 时,表示注入已完成。
注入过程可能需要几分钟到几小时才能完成,具体取决于数据的大小。
在配置 页面上,配置数据存储区设置。
- 数据连接器的位置:为数据存储区的元数据选择存储区域。创建数据存储区后,您无法更改该位置。如需了解有关多区域位置的重要信息,请参阅 Gemini Enterprise 位置。
- 数据连接器名称:在数据连接器名称字段中,为数据连接器输入名称。创建数据连接器后,您无法更改该名称。输入名称会为数据连接器生成唯一 ID。(可选)在标签(可选) 字段中,为数据连接器输入标签,该标签将作为连接器在所有版本中的稳定标识符。
- Sensitive Data Protection 政策:为数据存储区选择
Sensitive Data Protection 政策
。格式应如下所示:
projects/{project}/locations/{location}/contentPolicies/{policy}。您稍后可以修改此设置。
点击创建 。
现在,您可以将数据存储区关联到 Gemini Enterprise 应用了。在联合查询模式下,当用户通过关联的应用运行查询时,查询会产生 BigQuery 计算费用;在数据注入模式下,即使数据存储区尚未关联到应用,导入数据也会产生 BigQuery 和 Gemini Enterprise 索引费用。如需详细了解这些费用,请参阅 Gemini Enterprise 价格。
后续步骤
如需将数据存储区关联到应用,请按照创建 Gemini Enterprise 应用中的步骤创建应用并选择数据存储区。
了解 Knowledge Catalog 如何与 Data Cloud 连接器 (当您使用联合查询模式时会自动启用)协同工作,以帮助智能体 搜索用户有权访问的数据并查找组织 上下文。
如需在 BigQuery 中使用经过验证的查询构建范围限定的智能体,请参阅 将 BigQuery 数据智能体发布到 Gemini Enterprise。