安排 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.getbigquery.datasets.update 权限

    预定义的 IAM 角色 bigquery.admin 包含 bigquery.transfers.updatebigquery.datasets.updatebigquery.datasets.get 权限。如需详细了解 BigQuery Data Transfer Service 中的 IAM 角色,请参阅访问权限控制

  • Google Merchant Center

设置 Google Merchant Center 转移作业

为 Google Merchant Center 报告设置数据转移作业需要以下信息:

如需为 Google Merchant Center 报告创建数据转移作业,请执行以下操作:

控制台

  1. 前往 Google Cloud 控制台中的“数据转移”页面。

    转到“数据传输”

  2. 点击 创建转移作业

  3. 创建转移作业页面上:

    • 来源类型部分的来源中,选择 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 Merchant Center 转移作业数据。

    • 服务账号菜单中,从与您的 Google Cloud 项目关联的服务账号中选择一个服务账号。您可以将服务账号与数据转移作业相关联,而不是使用用户凭据。如需详细了解如何将服务账号用于数据转移,请参阅使用服务账号

      • 如果您使用联合身份登录,则需要有服务账号才能创建数据转移作业。如果您使用 Google 账号登录,则转移作业的服务账号是可选的。
      • 服务账号必须具有所需的权限
    • (可选)在通知选项部分,执行以下操作:

      • 点击切换开关以启用电子邮件通知。启用此选项后,转移作业管理员会在转移作业运行失败时收到电子邮件通知。
      • 选择 Pub/Sub 主题部分,选择您的主题名称,或点击创建主题。此选项用于为您的转移作业配置 Pub/Sub 运行通知
  4. 点击保存

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 参数指定是否转移产品业绩数据。
  • 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 转移作业问题