将 PayPal 数据加载到 BigQuery 中
您可以使用 BigQuery Data Transfer Service 的 PayPal 连接器将数据从 PayPal 加载到 BigQuery。借助 PayPal 连接器,您可以安排周期性转移作业,以将 PayPal 中的最新数据添加到 BigQuery。
PayPal 连接器支持生产和沙盒 PayPal 账号。
支持的对象
PayPal 对象类型 | BigQuery 支持的对象 | 日期过滤条件支持 |
---|---|---|
交易 | TransactionReports | 支持 |
TransactionReportsCartInfoItemDetails | 支持 | |
TransactionReportsIncentiveDetails | 支持 | |
争议 | 争议 | 支持 |
DisputeDetails | 支持 | |
DisputeTransactions | 支持 | |
付款 | 付款 | 支持 |
PaymentTransactions | 支持 | |
余额 | 余额 | 不支持 |
产品 | 产品 | 不支持 |
ProductDetails | 不支持 | |
账单 | 账单 | 支持 |
限制
PayPal 数据转移作业受到以下限制:
- PayPal 交易可能需要延迟几个小时才能通过 PayPal API 提供。
- 我们建议您以更长的时间间隔(不超过每小时一次)安排后续数据转移,以防数据丢失。
- PayPal 连接器仅支持过去 3 年的交易数据。
- PayPal 连接器仅支持过去 6 个月内的争议数据。
- PayPal API 针对每个数据对象使用不同的页面大小限制。PayPal 连接器在数据传输中使用 PayPal 允许的最大网页大小。
- 不过,某些对象(例如
Payments
或Payment Transactions
)使用的页面大小限制较小。这可能会导致数据传输速度变慢,尤其是在处理大型数据集时。
- 不过,某些对象(例如
准备工作
以下部分介绍了在创建 PayPal 数据转移作业之前需要执行的步骤。
PayPal 前提条件
如需启用 PayPal 数据转移,您必须满足以下条件:
- 您必须拥有 PayPal 开发者账号。如需了解详情,请参阅 PayPal 开发者计划。
- 创建 PayPal REST API 应用。如需了解详情,请参阅 PayPal REST API 使用入门。
- 在应用和凭据部分中,记下应用的客户端 ID 和密钥。
- 在功能部分,启用交易搜索和账单 API 权限。
所需 BigQuery 角色
如需获得创建转移作业所需的权限,请让您的管理员为您授予 BigQuery Admin (roles/bigquery.admin
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色可提供创建转移作业所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
创建转移作业需要以下权限:
-
针对用户的
bigquery.transfers.update
权限 -
针对目标数据集的
bigquery.datasets.get
权限 -
针对目标数据集的
bigquery.datasets.update
权限
BigQuery 前提条件
- 确认您已完成启用 BigQuery Data Transfer Service 所需的所有操作。
- 创建 BigQuery 数据集来存储数据。
- 如果您想要为 Pub/Sub 设置转移作业运行通知,请确保拥有
pubsub.topics.setIamPolicy
Identity and Access Management (IAM) 权限。如果您只是要设置电子邮件通知,则无需 Pub/Sub 权限。如需了解详情,请参阅 BigQuery Data Transfer Service 运行通知。
设置 PayPal 数据转移作业
通过使用以下选项之一设置转移配置,将 PayPal 数据添加到 BigQuery 中:
控制台
前往 Google Cloud 控制台中的“数据转移”页面。
点击
创建转移作业。在来源类型部分的来源中,选择 PayPal。
在数据源详细信息部分,执行以下操作:
- 在客户端 ID 部分,输入 PayPal 客户端 ID。如需了解详情,请参阅 PayPal 前提条件。
- 在客户端密钥部分,输入 PayPal 客户端密钥。如需了解详情,请参阅 PayPal 前提条件。
- 如果您使用的是沙盒 PayPal 账号,请选择 Is Sandbox。
- 对于开始日期,请输入格式为
YYYY-MM-DD
的日期。数据转移会加载自此日期起的 PayPal 数据。- 如果此字段留空,则默认情况下,此转移会检索过去 3 年的数据。
- 如需了解哪些对象支持开始日期过滤条件,请参阅支持的对象。
- 在 PayPal objects to transfer(要转移的 PayPal 对象)部分,输入要转移的 PayPal 对象的名称,或点击浏览并选择要转移的对象。
在目标设置部分的数据集中,选择您创建用来存储数据的数据集。
在转移配置名称部分的显示名称中,输入数据转移作业的名称。
在时间表选项部分,执行以下操作:
- 在重复频率列表中,选择一个选项来指定此数据转移作业的运行频率。如需指定自定义重复频率,请选择自定义。如果您选择按需,则当您手动触发转移作业时,此转移作业会运行。
- 如果适用,请选择立即开始或从设置的时间开始,并提供开始日期和运行时间。
可选:在通知选项部分,执行以下操作:
- 如需启用电子邮件通知,请将电子邮件通知切换开关切换到开启位置。启用此选项后,转移作业管理员会在转移作业运行失败时收到电子邮件通知。
- 如需为此转移作业启用 Pub/Sub 转移作业运行通知,请将 Pub/Sub 通知切换开关切换到开启位置。您可以选择主题名称,也可以点击创建主题来创建一个主题。
点击保存。
bq
输入 bq mk
命令并提供转移作业创建标志 --transfer_config
:
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=DISPLAY_NAME --target_dataset=DATASET --params='PARAMETERS'
其中:
- PROJECT_ID(可选):您的 Google Cloud 项目 ID。如果未提供
--project_id
来指定具体项目,则系统会使用默认项目。 - DATA_SOURCE:数据源,
paypal
。 - DISPLAY_NAME:数据转移作业配置的显示名称。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。
- DATASET:转移作业配置的目标数据集。
PARAMETERS:所创建转移作业配置的参数(采用 JSON 格式)。例如
--params='{"param":"param_value"}'
。以下是 PayPal 数据转移作业的参数:assets
:要包含在此转移中的 PayPal 对象列表。connector.authentication.clientId
:PayPal 应用的客户端 ID。connector.authentication.clientSecret
:PayPal 应用的客户端密钥。connector.isSandbox
:如果您使用的是沙盒 PayPal 账号,请将值设置为true
;如果您使用的是正式版 PayPal 账号,请将值设置为false
。connector.createdStartDate
:(可选)输入日期,格式为YYYY-MM-DD
。数据转移会加载自此日期起的 PayPal 数据。
例如,以下命令会使用所有必需参数在默认项目中创建 PayPal 数据转移作业:
bq mk \ --transfer_config \ --target_dataset=mydataset \ --data_source=PayPal \ --display_name='My Transfer' \ --params='{"assets": ["Payments", "TransactionReports"], "connector.authentication.clientId": "112233445566", "connector.authentication.clientSecret":"123456789", "connector.isSandbox":"false", "connector.createdStartDate": "2025-01-01"}'
使用 bq 命令行工具创建数据转移作业时,转移作业配置会安排每 8 小时转移一次数据。
API
使用 projects.locations.transferConfigs.create
方法并提供 TransferConfig
资源实例。
如需在常规安排之外手动运行数据转移,您可以启动回填运行。
数据类型映射
下表将 PayPal 数据类型映射到相应的 BigQuery 数据类型。
PayPal 数据类型 | BigQuery 数据类型 |
---|---|
String |
STRING |
Decimal |
BIGNUMERIC |
Boolean |
BOOL |
Datetime |
TIMESTAMP |
排查转移作业设置问题
如果您在设置数据转移作业时遇到问题,请参阅 PayPal 转移作业问题。
价格
将 PayPal 数据转移到 BigQuery 的功能处于预览版阶段时,您无需付费即可使用此功能。
后续步骤
- 如需大致了解 BigQuery Data Transfer Service,请参阅 BigQuery Data Transfer Service 简介。
- 如需了解如何管理转移作业配置,包括如何获取信息、列出配置和查看运行历史记录,请参阅管理转移作业。
- 了解如何通过跨云操作加载数据。