安排 Google Merchant Center 转移作业
准备工作
在创建 Google Merchant Center 转移作业之前,请执行以下操作:
- 确认您已完成启用 BigQuery Data Transfer Service 所需的所有操作。
- 创建 BigQuery 数据集以存储 Google Merchant Center 数据。
- 对于数据集区域,我们支持在美国或欧盟使用默认选项“多区域”。
- 如果您要在特定区域中创建数据集,则只有以下区域才支持 Merchant Center 数据转移:
us-east4 (Northern Virginia)
、asia-northeast1 (Tokyo)
、asia-southeast1 (Singapore)
、australia-southeast1 (Sydney)
、europe-north1 (Finland)
、europe-west2 (London)
、europe-west6 (Zurich)
。
- 如果您要设置 Pub/Sub 的转移作业运行通知,必须拥有
pubsub.topics.setIamPolicy
权限。如果您只是要设置电子邮件通知,则无需 Pub/Sub 权限。如需了解详情,请参阅 BigQuery Data Transfer Service 运行通知。
所需权限
请确保创建转移作业的人员拥有以下所需权限:
BigQuery:
- 创建转移作业所需的
bigquery.transfers.update
权限 - 针对目标数据集的
bigquery.datasets.get
和bigquery.datasets.update
权限
预定义的 IAM 角色
bigquery.admin
包含bigquery.transfers.update
、bigquery.datasets.update
和bigquery.datasets.get
权限。如需详细了解 BigQuery Data Transfer Service 中的 IAM 角色,请参阅访问权限控制。- 创建转移作业所需的
Google Merchant Center:
对转移作业配置中使用的 Google Merchant Center 账号的标准访问权限。您可以点击 Google Merchant Center 界面中的用户部分来验证访问权限。
如需访问价格竞争力和畅销商品数据,您必须满足获得市场洞察的资格要求。
设置 Google Merchant Center 转移作业
为 Google Merchant Center 报告设置数据转移作业需要以下信息:
- 商家 ID 或多客户账号 ID:这是 Google Merchant Center 界面中显示的商家 ID。
如需为 Google Merchant Center 报告创建数据转移作业,请执行以下操作:
控制台
转到 Google Cloud 控制台中的 BigQuery 页面。
点击数据传输。
点击创建转移作业。
在创建转移作业页面上:
在来源类型部分的来源中,选择 Google Merchant Center。
在转移配置名称部分的显示名中,输入转移作业的名称,例如
My Transfer
。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。在时间表选项部分中,执行以下操作:
选择重复频率。如果您选择小时、天、周或月,则还必须指定频率。您还可以选择自定义来指定自定义重复频率。如果您选择按需,则当您手动触发转移作业时,此转移作业会运行。
如果适用,请选择立即开始或在设置的时间开始,并提供开始日期和运行时间。
在开始日期和运行时间部分,输入开始转移作业的日期和时间。此值应该比当前世界协调时间 (UTC) 至少晚 24 小时。如果选择立即开始,则此选项处于停用状态。
如果将时间表选项设置为立即开始,则第一次转移作业将立即开始运行,它将失败,并显示以下错误消息:
No data to transfer found for the Merchant account. If you have just created this transfer, you may need to wait for up to a day before the data of your Merchant account are prepared and available for the transfer.
。安排的下一次运行应会成功。如果您的商家账号数据在采用世界协调时间 (UTC) 的同一日期准备就绪,则可以为当天的运行设置回填。
在目标设置部分的目标数据集中,选择您创建用来存储数据的数据集。
在数据源详细信息部分的商家 ID 中,输入您的商家 ID 或 MCA ID。
选择您要转移的报告。如需了解详情,请参阅支持的报告。
在服务账号菜单中,从与您的 Google Cloud 项目关联的服务账号中选择一个服务账号。您可以将服务账号与转移作业相关联,而不是使用用户凭据。如需详细了解如何将服务账号用于数据转移,请参阅使用服务账号。
(可选)在通知选项部分,执行以下操作:
点击保存。
bq
输入 bq mk
命令并提供转移作业创建标志 --transfer_config
。此外,还必须提供以下标志:
--data_source
--target_dataset
--display_name
--params
您还可以提供 --project_id
标志以指定具体项目。如果未指定 --project_id
,系统会使用默认项目。
bq mk \ --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source --service_account_name=service_account_name
其中:
- project_id 是项目 ID。
- dataset 是转移作业配置的目标数据集。
- name 是转移作业配置的显示名。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。
- parameters 包含所创建转移作业配置的参数(采用 JSON 格式),例如:
--params='{"param":"param_value"}'
。- 对于 Google Merchant Center 转移作业,您必须提供
merchant_id
参数。 export_products
参数指定是否转移商品和商品问题数据。即使您未指定export_products
参数,系统也会默认包含此参数。Google 建议您明确添加此参数,并将其设置为“true”。export_regional_inventories
参数指定是否转移地区商品目录数据。export_local_inventories
参数指定是否转移本地商品目录数据。export_price_competitiveness
参数指定是否转移价格竞争力数据。export_price_insights
参数指定是否转移价格分析数据。export_best_sellers_v2
参数指定是否转移畅销商品数据。export_performance
参数指定是否转移产品业绩数据。
- 对于 Google Merchant Center 转移作业,您必须提供
- data_source 是数据源,即
merchant_center
。 - service_account_name 是用于对转移作业进行身份验证的服务账号名称。该服务账号应属于用于创建转移作业的同一
project_id
,并且应具有所有所需的权限。
例如,以下命令使用商家 ID 1234
和目标数据集 mydataset
创建名为 My Transfer
的 Google Merchant Center 转移作业。该转移作业将在默认项目中创建。
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"merchant_id":"1234","export_products":"true","export_regional_inventories":"true","export_local_inventories":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=merchant_center
首次运行此命令时,您会收到如下消息:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
请按照该消息中的说明操作,并将身份验证代码粘贴到命令行中。
如果您刚刚创建了此转移作业,则最长可能需要等待一天,您的商家账号的数据才会准备就绪,可进行转移。安排的下一次运行应会成功。如果您的商家账号数据在采用世界协调时间 (UTC) 的同一日期准备就绪,则可以为当天的运行设置回填。
API
使用 projects.locations.transferConfigs.create
方法并提供一个 TransferConfig
资源实例。
排查 Google Merchant Center 转移作业设置问题
如果您在设置转移作业时遇到问题,请参阅排查 BigQuery Data Transfer Service 转移作业设置问题中的 Google Merchant Center 转移作业问题。