Google BigQuery (Microsoft Entra ID)

总结

项目 说明
发布状态 正式版
支持的产品 Power BI(语义模型)
Power BI(数据流)
Fabric(数据流 Gen2)
Power Apps(数据流)
支持的身份验证类型 组织帐户

注意

由于部署计划和特定于主机的功能,某些功能可能只存在于一个产品中。

先决条件

需要 Microsoft Entra ID 帐户才能登录到 Google BigQuery (Microsoft Entra ID)。

支持的功能

  • 导入
  • DirectQuery(Power BI 语义模型)

从 Power Query Desktop 连接到 Google BigQuery (Microsoft Entra ID) 数据

要从 Power Query Desktop 连接到 Google BigQuery (Microsoft Entra ID),请执行以下步骤:

  1. 在“获取数据”体验中,搜索并选择 Google BigQuery (Microsoft Entra ID)。 详细信息:获取数据的位置

    “获取数据”对话框的屏幕截图,重点介绍 Google BigQuery (Microsoft Entra ID) 连接器。

  2. 指定使用此连接器所需的计费项目 ID。 如果要使用任何高级选项,请选择高级选项。 否则,选择导入DirectQuery,然后选择确定继续。 详细信息:使用高级选项进行连接

    Google BigQuery(Microsoft Entra ID) 对话框的屏幕截图,可在其中输入计费项目 ID,选择“导入”或 DirectQuery,并选择高级选项。

  3. Google BigQuery (Microsoft Entra ID) 连接器支持通过 Microsoft Entra ID 帐户进行连接。 选择登录继续。

    身份验证对话框的屏幕截图,指示你当前未登录。

  4. 登录后,选择连接继续。

    登录后身份验证对话框的屏幕截图。

  5. 成功连接后,将出现导航器窗口,其中显示服务器上可用的数据。 在导航器中选择数据。 然后选择转换数据以在 Power Query 中转换数据,或选择加载以在 Power BI Desktop 中加载数据。

从 Power Query Online 连接到 Google BigQuery (Microsoft Entra ID) 数据

要从 Power Query Online 连接到 Google BigQuery (Microsoft Entra ID),请执行以下步骤:

  1. 在“获取数据”体验中,搜索 Google,然后选择 Google BigQuery (Microsoft Entra ID)。 详细信息:获取数据的位置

    “选择数据源”对话框的屏幕截图,其中突出显示了 Google BigQuery (Microsoft Entra ID) 连接器。

  2. 在 Google BigQuery (Microsoft Entra ID) 对话框中,可能需要创建新连接或选择现有连接。 如果要创建新连接,请输入计费项目 ID。 如果使用的是本地数据,请选择本地数据网关。

    “连接到数据源”对话框的屏幕截图,可在其中输入 Google BigQuery (Microsoft Entra ID) 连接设置和凭证。

  3. 如果要使用任何高级选项,请选择高级选项。 详细信息:使用高级选项进行连接

  4. 登录后,选择下一步继续。

  5. 成功连接后,将出现导航器窗口,其中显示服务器上可用的数据。 在导航器中选择数据。 然后选择下一步以在 Power Query 中转换数据。

使用高级选项进行连接

Power Query Desktop 和 Power Query Online 都提供一组高级选项,可以根据需要将其添加到查询中。

下表列出了可以在 Power Query Desktop 和 Power Query Online 中设置的所有高级选项。

高级选项 说明
使用存储 API 一个标志,它允许使用 Google BigQuery Storage API。 默认情况下,此选项为 true。 此选项可以设置为 false,以不使用 Storage API,而是使用 REST API。
连接超时持续时间 标准连接设置(以秒为单位),用于控制 Power Query 等待连接完成的时间。 如果连接在 15 秒(默认值)之前未完成,则可以更改此值。
命令超时持续时间 Power Query 等待查询完成并返回结果的时间。 默认值取决于驱动程序默认值。 可以输入另一个值(以分钟为单位),使连接保持打开更长时间。
受众 URI 包含 < 员工池 ID> 的 URI,必须更改为设置 OIDC 配置时使用的员工池名称。 受众 URI 值的格式为 //iam.googleapis.com/locations/global/workforcePools/<workforce pool ID>/providers/azuread<员工池 ID> 的默认值是 powerquery-<TenantId>,其中 <TenantId> 是当前的 Power BI 租户 ID。 如果更新受众 URI,则输入的字符串将按原样使用。
ProjectID 要在其中运行本机查询的项目。 此选项仅在 Power Query Desktop 中可用。
本机查询 有关信息,请参阅使用本机数据库查询从数据库导入数据。 在此版本的本机数据库查询功能中,需要使用格式 Database.Schema.Table 的完全限定表名,例如 SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE。 此选项仅在 Power Query Desktop 中可用。

选择所需的高级选项后,在 Power Query Desktop 中选择确定,或在 Power Query Online 中选择下一步,以连接到 Google BigQuery 数据。

限制和注意事项

本节介绍 Google BigQuery (Microsoft Entra ID) 连接器的任何限制或注意事项。

OIDC 配置

Google BigQuery (Microsoft Entra ID) 连接器利用 Microsoft Entra ID JWT 令牌,将基于 Microsoft Entra ID 的身份验证与 Google Workforce Federation 功能相结合。 因此,身份验证端的设置必须是基于 OIDC 的设置,以便与 Microsoft Entra ID JWT 令牌保持一致。 请联系 Google BigQuery 联系点,了解有关 Google 端的身份验证设置和支持的详细信息。

在 Power BI Desktop 中连接到 Google BigQuery (Microsoft Entra ID)

将 Google BigQuery 连接器与 Power BI 配合使用时,需要牢记一些限制和注意事项。

嵌套字段

为了优化性能注意事项,Google BigQuery 在非规范化、平展和嵌套时能很好地处理大型数据集。

Google BigQuery (Microsoft Entra ID) 连接器支持嵌套字段,这些字段以 JSON 格式加载为文本列。

Google BigQuery 嵌套字段支持的屏幕截图。

用户应选择转换数据 ,然后使用 Power Query 编辑器中的 JSON 分析功能提取数据。

  1. 转换功能区选项卡下,选择文本列类别,选择分析,然后选择 JSON
  2. 使用展开列选项提取 JSON 记录字段。

无法使用 Google BigQuery Storage API 进行身份验证

默认情况下,Google BigQuery (Microsoft Entra ID) 连接器使用 Google BigQuery Storage API。 此功能由名为 UseStorageApi 的高级选项控制。 如果使用精细权限,则此功能可能会出现问题。 在此场景中,可能会看到以下错误消息,或无法从查询中获取任何数据:

ERROR [HY000] [Microsoft][BigQuery] (131) Unable to authenticate with Google BigQuery Storage API. Check your account permissions

通过正确调整 BigQuery Storage API 的用户权限,可以解决此问题。 需要这些存储 API 权限才能使用 BigQueryStorage API 正确访问数据:

  • bigquery.readsessions.create:通过 BigQuery Storage API 创建新的读取会话。
  • bigquery.readsessions.getData:通过 BigQuery Storage API 从读取会话读取数据。
  • bigquery.readsessions.update:通过 BigQuery Storage API 更新读取会话。

这些权限通常在 BigQuery.User 角色中提供。 有关详细信息,请参阅 Google BigQuery 预定义角色和权限

如果上述步骤无法解决问题,可以禁用 BigQuery Storage API。

无法在 DirectQuery 模式下使用 DateTime 类型数据

存在一个已知问题,即通过 DirectQuery 不支持 DateTime 类型。 选择具有 DateTime 类型的列会导致“查询无效”错误或视觉对象错误。

为 Google BigQuery 启用 Microsoft Entra ID 单一登录 (SSO)

我们同时通过 Power BI 服务(云)和本地数据网关支持 Microsoft Entra ID SSO。 有关为所有连接器启用 Microsoft Entra ID SSO 的详细信息,请转到 Power BI 中本地数据网关的单一登录 (SSO) 概述。 在尝试在 Power BI 中连接之前,直接与 Google 联系人确认是否已为 Microsoft Entra ID SSO 正确设置系统和帐户。

通过 Power BI 服务 的 Microsoft Entra ID 单一登录 (SSO)

要在 Power BI 服务中配置新连接:

  1. 在 Power BI 服务中,从设置列表中选择管理门户

    “设置”菜单已打开并突出显示“管理门户”的屏幕截图。

  2. 启用 Google BigQuery SSO 选项。

    已启用“启用”按钮的 Google BigQuery SSO 选项的屏幕截图。

使用本地数据网关进行 Google BigQuery 的 Microsoft Entra ID 单一登录 (SSO)

必须先为使用本地数据网关支持 Microsoft Entra ID SSO 的所有数据源启用 Microsoft Entra ID SSO,然后才能为 Google BigQuery 启用 Microsoft Entra ID SSO。 此外,确保已升级到至少 2022 年 12 月版本的本地数据网关:

  1. 在 Power BI 服务中,从设置列表中选择管理门户

    “设置”菜单的另一张屏幕截图,其中突出显示了管理门户。

  2. 在“集成设置”下,启用“网关的 Azure AD 单一登录 (SSO)”

为所有数据源启用 Microsoft Entra ID SSO 后,再为 Google BigQuery 启用 Microsoft Entra ID SSO:

  1. 启用 Google BigQuery SSO 选项。

  2. 从设置列表中选择管理网关

    突出显示“管理网关”的“设置”菜单的屏幕截图。

  3. 选择网关,然后选择选择数据源

  4. 数据源设置选项卡下,在计费项目 ID 中输入值。 使用 Microsoft Entra ID 时需要“计费项目 ID”参数,需要在“高级设置”中指定。 此外,选择通过 Azure AD 使用 SSO 进行 DirectQuery 查询