安排 Comparison Shopping Service Center 转移作业

本文档介绍如何使用 BigQuery Data Transfer Service 安排和管理 CSS Center 报告数据的周期性加载作业。

准备工作

创建 CSS Center 转移作业之前的准备工作:

  • 启用 BigQuery Data Transfer Service
  • 创建 BigQuery 数据集以存储 CSS Center 数据。
    • 对于数据集区域,我们支持在美国或欧盟使用默认选项“多区域”。
    • 如果您要在特定区域中创建数据集,则只有以下区域才支持 CSS Center 数据转移:
    • us-east4 (Northern Virginia)
    • asia-northeast1 (Tokyo)
    • asia-southeast1 (Singapore)
    • australia-southeast1 (Sydney)
    • europe-north1 (Findland)
    • europe-west2 (London)
    • europe-west6 (Zurich)
  • 您必须具有 CSS 网域 ID 才能创建 CSS Center 转移作业。
  • 如果您要设置 Pub/Sub 的转移作业运行通知,必须拥有 pubsub.topics.setIamPolicy 权限。如果您只是要设置电子邮件通知,则无需 Pub/Sub 权限。如需了解详情,请参阅 BigQuery Data Transfer Service 运行通知

所需权限

请确保创建转移作业的用户拥有以下所需权限。

对于 BigQuery:

如需获得创建转移作业所需的权限,请让管理员向您授予 BigQuery Admin (roles/bigquery.admin) IAM 角色。如需详细了解如何授予角色,请参阅管理访问权限

此预定义角色可提供创建转移作业所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

创建转移作业需要以下权限:

  • 针对用户的 bigquery.transfers.update 权限
  • 针对目标数据集的 bigquery.datasets.get 权限
  • 针对目标数据集的 bigquery.datasets.update 权限

您也可以使用自定义角色或其他预定义角色来获取这些权限。

对于 CSS Center:

您必须有权访问在转移作业配置中使用的 CSS Center 账号。

设置 CSS Center 转移作业

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

控制台

  1. 转到 Google Cloud 控制台中的 BigQuery 页面。

    转到 BigQuery 页面

  2. 点击转移

  3. 点击创建转移作业

  4. 创建转移作业页面中执行以下操作:

    • 来源类型部分的来源中,选择 Google CSS Center

    • 转移配置名称部分的显示名中,输入转移作业的名称,例如 My Transfer。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。

      转移作业名称

    • 时间表选项部分不可配置。CSS Center 转移作业计划每 24 小时运行一次。

    • Destination settings 部分的 Destination dataset 中,选择您创建的用来存储数据的数据集。

    • 数据源详细信息部分的 CSS ID 中,输入您的 CSS 网域 ID。

      选择您要转移的报告。如需了解详情,请参阅支持的报告

      CSS Center 转移作业数据。

    • (可选)在通知选项部分,执行以下操作:

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

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

其中:

  • project_id 是项目 ID。
  • dataset 是转移作业配置的目标数据集。
  • name 是转移作业配置的显示名。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。
  • parameters 包含所创建转移作业配置的参数(采用 JSON 格式),例如:--params='{"param":"param_value"}'
    • css_id:CSS 网域 ID。
    • export_products:是否转移商品和商品问题数据。即使您未指定 export_products 参数,系统也会默认包含此参数。我们建议您明确添加此参数,并将其设置为 true
  • data_source 是数据源,即 css_center

例如,以下命令使用 CSS 网域 ID 1234 和目标数据集 mydataset 创建名为 My Transfer 的 CSS Center 转移作业。该转移作业将在默认项目中创建。

bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"css_id":"1234","export_products":"true","export_regional_inventories":"true","export_local_inventories":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=css_center

首次运行此命令时,您会收到如下消息:

[URL omitted] Please copy and paste the above URL into your web browser and follow the instructions to retrieve an authentication code.

请按照该消息中的说明操作,并将身份验证代码粘贴到命令行中。

API

使用 projects.locations.transferConfigs.create 方法并提供一个 TransferConfig 资源实例。