适用于:
Azure 数据工厂
Azure Synapse Analytics
本文介绍如何使用 Azure 数据工厂和 Synapse Analytics 管道中的复制活动来复制 Google BigQuery 的数据。 本文基于总体概述复制活动的复制活动概述一文。
Important
Google BigQuery V1 连接器处于 删除阶段。 建议将 Google BigQuery 连接器 从 V1 升级到 V2。
支持的功能
以下功能支持此 Google BigQuery 连接器:
| 支持的功能 | IR |
|---|---|
| 复制活动(源/-) | (1) (2) |
| 查找活动 | (1) (2) |
① Azure 集成运行时 ② 自承载集成运行时
有关复制活动支持作为源或接收器的数据存储列表,请参阅支持的数据存储表。
服务提供了内置驱动程序,用来启用连接。 因此,无需要手动安装驱动程序即可使用此连接器。
Note
此 Google BigQuery 连接器在 BigQuery API 的基础上构建。 请注意,BigQuery 会限制传入请求的最大速率并按项目强制实施适当的配额,请参阅配额和限制 - API 请求。 请确保不会发送过多对帐户的并发请求。
开始
若要使用管道执行复制活动,可以使用以下工具或 SDK 之一:
使用 UI 创建一个到 Google BigQuery 的链接服务
使用以下步骤在 Azure 门户 UI 中创建一个到 Google BigQuery 的链接服务。
浏览到 Azure 数据工厂或 Synapse 工作区中的“管理”选项卡并选择“链接服务”,然后单击“新建”:
搜索 Google BigQuery 并选择连接器。
配置服务详细信息、测试连接并创建新的链接服务。
连接器配置详细信息
在以下部分中,可详细了解用于定义特定于 Google BigQuery 连接器的实体的属性。
链接服务属性
Google BigQuery 链接服务支持以下属性。
| Property | Description | Required |
|---|---|---|
| 类型 | type 属性必须设置为 GoogleBigQueryV2。 | Yes |
| 版本 | 指定的版本。 建议升级到最新版本,以利用最新的增强功能。 | 是的,用于版本 1.1。 |
| projectId | 用于查询的默认 BigQuery 项目的项目 ID。 | Yes |
| authenticationType | 用于身份验证的 OAuth 2.0 身份验证机制。
允许的值是 UserAuthentication 和 ServiceAuthentication。 有关这些身份验证类型的其他属性和 JSON 示例,请分别参阅此表格下面的部分。 |
Yes |
使用用户身份验证
将“authenticationType”属性设置为“UserAuthentication” ,并指定以下属性及上节所述的泛型属性:
| Property | Description | Required |
|---|---|---|
| clientId | 用于生成刷新令牌的应用程序 ID。 | Yes |
| clientSecret | 应用程序的机密,用于生成刷新令牌。 将此字段标记为 SecureString 以安全地存储它,或引用存储在 Azure Key Vault 中的机密。 | Yes |
| refreshToken | 从 Google 获得的刷新令牌,用于授权访问 BigQuery。 从获取 OAuth 2.0 访问令牌和此社区博客了解如何获取刷新令牌。 将此字段标记为 SecureString 以安全地存储它,或引用存储在 Azure Key Vault 中的机密。 | Yes |
Example:
{
"name": "GoogleBigQueryLinkedService",
"properties": {
"type": "GoogleBigQueryV2",
"version": "1.1",
"typeProperties": {
"projectId" : "<project ID>",
"authenticationType" : "UserAuthentication",
"clientId": "<client ID>",
"clientSecret": {
"type": "SecureString",
"value":"<client secret>"
},
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
}
}
}
}
使用服务身份验证
将“authenticationType”属性设置为“ServiceAuthentication” ,并指定以下属性及上节所述的泛型属性。
| Property | Description | Required |
|---|---|---|
| keyFileContent | 用于对服务帐户进行身份验证的密钥文件(采用 JSON 格式)。 将此字段标记为 SecureString 以安全地存储它,或引用存储在 Azure Key Vault 中的机密。 | Yes |
Example:
{
"name": "GoogleBigQueryLinkedService",
"properties": {
"type": "GoogleBigQueryV2",
"version": "1.1",
"typeProperties": {
"projectId": "<project ID>",
"authenticationType": "ServiceAuthentication",
"keyFileContent": {
"type": "SecureString",
"value": "<key file JSON string>"
}
}
}
}
数据集属性
有关可用于定义数据集的各部分和属性的完整列表,请参阅数据集一文。 本部分提供 Google BigQuery 数据集支持的属性列表。
要从 Google BigQuery 复制数据,请将数据集的 type 属性设置为 GoogleBigQueryV2Object。 支持以下属性:
| Property | Description | Required |
|---|---|---|
| 类型 | 数据集的 type 属性必须设置为:GoogleBigQueryV2Object | Yes |
| 数据集 | Google BigQuery 数据集的名称。 | 否(如果指定了活动源中的“query”) |
| 表 | 表的名称。 | 否(如果指定了活动源中的“query”) |
Example
{
"name": "GoogleBigQueryDataset",
"properties": {
"type": "GoogleBigQueryV2Object",
"linkedServiceName": {
"referenceName": "<Google BigQuery linked service name>",
"type": "LinkedServiceReference"
},
"schema": [],
"typeProperties": {
"dataset": "<dataset name>",
"table": "<table name>"
}
}
}
复制活动属性
有关可用于定义活动的各部分和属性的完整列表,请参阅管道一文。 本部分提供 Google BigQuery 源类型支持的属性列表。
以 GoogleBigQuerySource 作为源类型
要从 Google BigQuery 复制数据,请将复制活动中的源类型设置为 GoogleBigQueryV2Source。 复制活动的 source 节支持以下属性。
| Property | Description | Required |
|---|---|---|
| 类型 | 复制活动源的 type 属性必须设置为 GoogleBigQueryV2Source。 | Yes |
| 查询 | 使用自定义 SQL 查询读取数据。 示例为 "SELECT * FROM MyTable"。 有关详细信息,请转到查询语法。 |
否(如果指定了数据集中的“dataset”和“table”) |
Example:
"activities":[
{
"name": "CopyFromGoogleBigQuery",
"type": "Copy",
"inputs": [
{
"referenceName": "<Google BigQuery input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "GoogleBigQueryV2Source",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
查找活动属性
若要了解有关属性的详细信息,请查看 Lookup 活动。
Google BigQuery 连接器生命周期和升级
下表显示了不同版本的 Google BigQuery 连接器的发布阶段和更改日志:
| Version | 发布阶段 | 更改日志 |
|---|---|---|
| Google BigQuery V1 | Removed | 不適用。 |
| Google BigQuery V2 (版本 1.0) | GA版本现已可用 | • Azure 集成运行时和自承载集成运行时支持服务身份验证。 属性 trustedCertPath、useSystemTrustStore、email和keyFilePath不受支持,因为它们仅在自承载集成运行时上可用。 • requestGoogleDriveScope 不受支持。 还需要通过引用选择 Google 云端硬盘 API 范围和查询云端硬盘数据在 Google BigQuery 服务中进一步申请权限。 • additionalProjects 不受支持。 或者,使用 Google Cloud 控制台查询公共数据集。• NUMBER 被读取为十进制数据类型。 • 时间戳和日期时间作为 DateTimeOffset 数据类型进行读取。 |
| Google BigQuery V2 (版本 1.1) | GA版本现已可用 | • 修复了 bug:执行多个语句时, query 现在在排除计算语句后返回第一个语句的结果,而不是始终返回第一个语句的结果。 |
升级 Google BigQuery 连接器
要升级您的 Google BigQuery 连接器:
从 V1 到 V2:
创建新的 Google BigQuery 链接服务,并通过引用 链接服务属性对其进行配置。从 V2 版本 1.0 到版本 1.1:
在 “编辑链接服务 ”页中,为版本选择 1.1 。 有关详细信息,请参阅链接服务属性。
相关内容
有关复制活动支持作为源和接收器的数据存储的列表,请参阅受支持的数据存储。