在本教程中,你将从 Google BigQuery 配置 Fabric 镜像数据库。
注释
虽然此示例特定于 BigQuery,但可以找到为其他数据源(如 Azure SQL 数据库或 Azure Cosmos DB)配置镜像的详细步骤。 有关详细信息,请参阅什么是 Fabric 中的镜像?
先决条件
- 创建或使用现有的 BigQuery 仓库。 可以在任何云中连接到任何版本的 BigQuery 实例,包括Microsoft Azure。
- 您需要已有的 Fabric 容量。 如果没有, 请启动 Fabric 试用版。
权限要求
需要为包含以下权限的 BigQuery 数据库授予用户权限。
bigquery.datasets.createbigquery.tables.listbigquery.tables.createbigquery.tables.exportbigquery.tables.getbigquery.tables.getDatabigquery.tables.updateDatabigquery.routines.getbigquery.routines.listbigquery.jobs.createstorage.buckets.createstorage.buckets.liststorage.objects.createstorage.objects.deletestorage.objects.listiam.serviceAccounts.signBlob
检索表元数据和更改历史记录配置(必需)
BigQueryAdmin 和 StorageAdmin 角色应包括这些权限。 若要确定是启用更改历史记录,还是检索主键或组合键信息,需要以下权限。
用户至少需要分配一个角色,该角色允许访问 BigQuery 实例。 检查访问 BigQuery 数据源的网络要求。 如果使用本地数据网关(OPDG)的 Google BigQuery 镜像功能,则必须拥有 OPDG 版本 3000.286.6 或更高版本才能成功启用镜像。
所需的权限
若要手动建立存储桶(并放弃需要授予 storage.buckets.create 权限),可以使用:
bigquery.tables.getbigquery.tables.listbigquery.routines.getbigquery.routines.list
- 导航到 Google 控制台中的 云存储 并选择 存储桶。
- 选择“ 创建 ”并按以下格式命名存储桶(区分大小写):
<projectid>_fabric_staging_bucket - 确保存储桶的位置/区域与计划镜像的 GCP 项目相同。
- 选择 创建。 镜像系统将自动检测存储桶。
根据用例,可能需要更多权限。 最低要求的权限是用于处理更改历史记录和各种大小的表(大于 10GB 的表)。 即使您没有使用大于 10GB 的表,也请启用所有这些最低权限,以确保镜像功能正常使用。
检索更改历史记录和表数据(必需)
有关权限的详细信息,请参阅 Google BigQuery 文档,了解 流式处理数据的所需权限、 更改历史记录访问所需的权限,以及 写入查询结果所需的权限
读取更改历史记录和表数据需要以下权限。
重要
源 BigQuery 仓库中建立的任何精细安全性必须在 Microsoft Fabric 的镜像数据库中重新配置。 有关详细信息,请参阅 Microsoft Fabric 中的 SQL 粒度权限。
所需的权限
bigquery.tables.getDatabigquery.jobs.createbigquery.jobs.getbigquery.jobs.listbigquery.readsessions.createbigquery.readsessions.getData
启用更改历史记录功能(必需)
必须使用以下选项 之一 在源 BigQuery 表上启用更改历史记录。
选项 1:启用权限
bigquery.tables.update
允许对表启用变更历史记录。
选项 2:在 GCP 中启用表选项
确保下表选项设置为 TRUE:
enable_change_history
将数据导出到 Google 云存储进行暂存和复制到 OneLake(必需)
需要以下权限才能将 BigQuery 数据导出到 Google 云存储进行暂存,并将其复制到 OneLake。
所需的权限
bigquery.tables.exportstorage.objects.createstorage.objects.liststorage.buckets.getiam.serviceAccounts.signBlob
用于暂存的 Google 云存储存储桶(必需)
要导出 BigQuery 表数据以进行暂存,必须有一个 Google 云存储储存桶。
存储桶创建选项
使用以下方法之一:
选项 1:允许自动创建存储桶
授予以下权限:
storage.buckets.create
选项 2:手动创建暂存存储桶
使用以下命名约定创建存储桶: <your_project_id_in_lowercase>_fabric_staging_bucket
存储桶要求
- 存储桶 必须与 BigQuery 数据集位于同一位置/区域。
- 镜像系统会在存储桶存在时自动检测它。
列出数据集(必需)
所需的权限
bigquery.datasets.get
列出项目(必需)
所需的权限
resourcemanager.projects.get
角色和访问要求
BigQuery 管理员和存储管理员角色通常包括上面列出的权限。
必须至少分配一个角色来授予对目标 BigQuery 项目和数据集的访问权限。
网络和网关要求
检查访问 BigQuery 数据源的网络要求。
如果要 将 Mirroring for Google BigQuery 与本地数据网关(OPDG)配合使用,则必须使用:
- OPDG 版本 3000.286.6 或更高版本
其他说明
根据用例,可能需要更多权限。 上面列出的权限表示 以下最低要求 :
- 使用更改历史记录
- 处理各种大小的表,包括大于 10 GB 的表
即使当前未使用大于 10 GB 的表,建议启用所有最小权限以确保镜像成功。
有关详细信息,请参见:
重要
源 BigQuery 仓库中定义的任何精细安全性必须在 Microsoft Fabric 的镜像数据库中重新配置。 有关详细信息,请参阅 Microsoft Fabric 中的 SQL 粒度权限。
创建镜像数据库
在本部分中,将从镜像的 BigQuery 数据源创建新的镜像数据库。
可以使用现有工作区(而不是“我的工作区”)或创建新的工作区。
- 在工作区中,导航到 “创建 ”中心。
- 选择要使用的工作区后,选择“ 创建”。
- 选择 镜像的 Google BigQuery 卡。
- 输入新数据库的名称。
- 选择 创建。
通过任何云平台访问你的 BigQuery 实例
注释
可能需要更改云防火墙,以允许镜像连接到 BigQuery 实例。 我们支持 OPDG 3000.286.6 或更高版本的 Google BigQuery 数据镜像功能。 我们还支持 VNET。
选择“新建连接”下的 BigQuery,或选择现有连接。
如果选择了 “新建连接”,请输入 BigQuery 数据库的连接详细信息。
连接设置 Description 服务帐户电子邮件 如果你有预先存在的服务帐户:可以通过转到 Google BigQuery 控制台中的 服务帐户 来查找服务帐户电子邮件和现有密钥。 如果没有预先存在的服务帐户:请转到 Google BigQuery 控制台中的“服务帐户”,然后选择“ 创建服务帐户”。 输入服务帐户名称(服务帐户 ID 根据输入的服务帐户名自动生成),以及服务帐户说明。 选择“完成”。 将服务帐户电子邮件复制并粘贴到 Fabric 中的指定连接凭据部分。 服务帐户 JSON 密钥文件内容 在“服务帐户”仪表板中,为新建的服务帐户选择 “操作”。 选择“ 管理密钥”。 如果每个服务帐户已有密钥,请下载其 JSON 密钥文件内容。
如果还没有服务帐户的密钥,请选择 “添加密钥 ”和 “创建新密钥”。 然后选择 JSON。 JSON 密钥文件应自动下载。 将 JSON 密钥复制并粘贴到 Fabric 门户中的指定连接凭据部分。连接 创建新连接。 连接名称 应自动填写。将其更改为要使用的名称。 从下拉列表中选择数据库。
启动镜像过程
“配置镜像”屏幕允许你镜像数据库中的所有数据,这是默认选项。
镜像所有数据意味着,镜像启动后创建的任何新表都会被镜像。
也可选择只镜像某些对象。 禁用“镜像所有数据”选项,然后从数据库中选择单独的表。
对于此示例,我们使用 镜像所有数据 选项。
选择“镜像数据库”。 镜像过程开始。
等待 2-5 分钟。 然后,选择“监视复制”以查看状态。
几分钟后,状态应变为“正在运行”,这表明正在同步表。
如果未看到表和相应的复制状态,请等待几秒钟,然后刷新面板。
完成表的初始复制后,“上次刷新”列中会显示一个日期。
现在,你的数据已经正常运行,在整个 Fabric 平台中具有各种可用的分析方案。
重要
- Google BigQuery 的镜像在变更反映方面有大约 15 分钟的延迟。 这是 Google BigQuery 更改历史记录功能的限制。
- 必须在 Microsoft Fabric 的镜像数据库中重新配置在源数据库中建立的任何精细安全性设置。
监视网络架构镜像
配置镜像后,将定向到“镜像状态”页。 可以在此处监视复制的当前状态。
有关复制状态的详细信息,请参阅监控 Fabric 镜像数据库复制。
重要
如果 BigQuery 数据库中的源表没有更新,复制引擎(支持 BigQuery 镜像更改数据的引擎)将减慢速度,每小时仅复制一次表。 如果初始加载后的数据花费的时间超过预期,请不要感到惊讶,尤其是在源表中没有任何新更新时。 快照后,镜像引擎将等待大约 15 分钟,然后提取更改;这是由于 Google BigQuery 的限制,它颁布了 10 分钟的延迟,以反映任何新的更改。 详细了解 BigQuery 的更改反射延迟