YouTube 频道转移作业

借助适用于 YouTube 的 BigQuery Data Transfer Service,您可以自动安排和管理 YouTube 频道报告的周期性加载作业。

支持的报告

适用于 YouTube 频道报告的 BigQuery Data Transfer Service 目前支持以下报告选项:

如需了解 YouTube 频道报告如何转换为 BigQuery 表和视图,请参阅 YouTube 频道报告转换

报告选项 支持
支持的 API 版本 2018 年 6 月 18 日
时间安排

每天,约在 14:10 UTC

您可以配置时段

刷新时段

过去 1 天

无法配置。

回填时长上限

30 天

自 2018 年 7 月起,包含历史数据的 YouTube 报告自生成之日起 30 天内可用。(包含非历史数据的报告在政策更改后的 60 天内可用。)如需了解详情,请参阅 YouTube Reporting API 文档中的历史数据

准备工作

创建 YouTube 频道转移作业之前,请先做好以下准备工作:

  • 验证您是否已完成启用 BigQuery Data Transfer Service 所需的所有操作。
  • 创建 BigQuery 数据集以存储 YouTube 数据。
  • 如果您打算使用经典版 BigQuery 网页界面创建转移作业,请允许显示来自 bigquery.cloud.google.com 的弹出式窗口,这样才能查看权限窗口。您必须向 BigQuery Data Transfer Service 授予您的 YouTube 报告数据的管理权限,才能成功转移数据。
  • 转移作业运行通知目前为 Alpha 版。如果您打算为 Cloud Pub/Sub 设置转移作业运行通知,那么您必须拥有 pubsub.topics.setIamPolicy 权限。如果您只是设置电子邮件通知,则无需 Cloud Pub/Sub 权限。如需了解详情,请参阅 BigQuery Data Transfer Service 运行通知

所需权限

请确保创建转移作业的人员拥有以下所需权限:

  • BigQuery

    • 创建转移作业所需的 bigquery.transfers.update 权限,以及针对目标数据集的 bigquery.datasets.update 权限。

    预定义的项目级 IAM 角色 bigquery.admin 具有 bigquery.transfers.updatebigquery.transfers.update 权限。如需详细了解 BigQuery 中的 IAM 角色,请参阅访问权限控制

  • YouTube:YouTube 频道的所有者。

设置 YouTube 频道转移作业

设置 YouTube 频道转移作业需要提供以下信息:

  • 表后缀:您在设置转移作业时为频道提供的简单易懂的名称。系统会将此后缀附加到作业 ID 的后面以创建表名称,例如 [reportTypeId]_[suffix]。此后缀用于防止不同的转移作业写入相同的表。在将数据加载到同一数据集的所有转移作业中,表后缀必须是唯一的,而且后缀要简短,以尽量缩短所生成的表名称的长度。

如果您目前在使用 YouTube Reporting API,并有现有报告作业,则 BigQuery Data Transfer Service 会加载您的报告数据。如果您目前没有报告作业,设置转移作业会自动启用 YouTube 报告作业。

要创建 YouTube 频道转移作业,请执行以下操作:

Console

  1. 转到 BigQuery 网页界面。

    转到 BigQuery 网页界面

  2. 点击转移作业

  3. 点击 + 创建

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

    • 来源类型部分的来源中,选择 YouTube 频道

      转移作业来源

    • 转移配置名称部分的显示名中,输入转移作业的名称,例如 My Transfer。转移作业名称可以是任何容易辨识的值,方便以后需要时对其进行修改。

      转移作业名称

    • 时间安排选项部分的时间安排中,保留默认值(立即开始)或点击在设置的时间开始 (Start at a set time)。

      • 重复频率部分,从以下选项中选择转移作业的运行频率。
        • 每日一次(默认值)
        • 每周一次
        • 每月一次
        • 自定义
        • 按需运行
      • 开始日期和运行时间部分,输入转移作业的开始日期和时间。如果您选择的是立即开始,则此选项处于停用状态。

        转移作业时间安排

    • 目标设置部分的目标数据集中,选择您创建用来存储数据的数据集。

      转移作业数据集

    • 数据源详细信息部分,执行以下操作:

      • 客户 ID 部分中,输入您的客户 ID 或经理帐号。
      • 选中排除已移除/已停用的项 (Exclude removed/disabled Items),以阻止转移已移除或已停用的实体及指标。

        YouTube 频道来源详细信息

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

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

经典版界面

  1. 转到 BigQuery 网页界面。

    转到 BigQuery 网页界面

  2. 点击 Transfers

  3. 点击 Add Transfer

  4. New Transfer 页面上,执行以下操作:

    • Source 部分,选择 YouTube Channel
    • 显示名部分中,输入转移作业的名称,例如 My Transfer
    • 时间安排 (Schedule) 部分中,保留默认值,或点击修改来更改时间。

      频道转移作业自定义时间安排

    • Destination dataset 部分,选择相应的数据集。

    • Channel page ID 部分,输入您的频道页 ID。

    • 表后缀 (Table suffix) 部分中,输入后缀,例如 MT

    • 勾选 Configure jobs,允许 BigQuery Transfer Service 为您管理 YouTube 报告作业。如果您的频道目前没有对应的 YouTube 报告,系统会创建新的报告作业来启用报告。

      YouTube 频道转移作业

    • (可选)展开高级部分,并为转移作业配置运行通知。转移作业运行通知目前为 Alpha 版

      • Cloud Pub/Sub 主题部分,输入您的主题名称,例如 projects/myproject/topics/mytopic
      • 勾选 Send email notifications,让系统在转移作业运行失败时发送电子邮件通知。
      • 设置转移作业时请勿勾选 Disabled。请参阅处理转移作业以停用现有转移作业。

        Cloud Pub/Sub 主题

  5. 点击 Add

  6. 出现提示时点击 Allow,向 BigQuery Transfer Service 授予您的 YouTube 报告数据的管理权限。您必须允许显示来自 bigquery.cloud.google.com 的弹出式窗口,才能查看权限窗口。如果您有多个帐号,系统可能还将提示您选择帐号。

    允许转移

命令行

输入 bq mk 命令并提供转移作业创建标志 - --transfer_config。此外,还必须提供以下标志:

  • --data_source
  • --target_dataset
  • --display_name
  • --params

    bq mk --transfer_config --project_id=[PROJECT_ID] --target_dataset=[DATASET] --display_name=[NAME] --params='[PARAMETERS]' --data_source=[DATA_SOURCE]
    

其中:

  • --project_id 是项目 ID。
  • --target_dataset 是转移作业配置的目标数据集。
  • --display_name 是转移作业配置的显示名称。转移作业名称可以是任何容易辨识的值,让您以后在需要修改时能够轻松识别。
  • --params 包含所创建的转移作业配置的参数(采用 JSON 格式)。例如:--params='{"param":"param_value"}'。对于 YouTube 频道转移作业,必须提供 page_idtable_suffix 参数。您可以选择将 configure_jobs 参数设置为 true,以允许 BigQuery Transfer Service 为您管理 YouTube 报告作业。如果您的频道目前不存在某些 YouTube 报告,系统会创建新的报告作业来启用它们。
  • --data_source 是数据源,即 youtube_channel。

您也可以提供 --project_id 标志来指定特定项目。如果未指定 --project_id,系统会使用默认项目。

例如,以下命令使用页面 ID 123123123、表后缀 MT 和目标数据集 mydataset 创建名为 My Transfer 的 YouTube 频道转移作业。该转移作业将在默认项目中创建:

bq mk --transfer_config --target_dataset=mydataset --display_name='My Transfer' --params='{"page_id":"123123123","table_suffix":"MT","configure_jobs":"true"}' --data_source=youtube_channel

API

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

查询数据

当数据转移到 BigQuery 时,数据会写入按提取时间分区的表。如需了解详情,请参阅分区表简介

如果您要直接查询表,而不是使用自动生成的视图,那么必须在查询中使用 _PARTITIONTIME 伪列。如需了解详情,请参阅查询分区表

YouTube 频道转移作业设置问题排查

如果您在设置转移作业时遇到问题,请参阅排查 BigQuery Data Transfer Service 转移作业设置问题中的 YouTube 转移作业问题

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
需要帮助?请访问我们的支持页面