将分析指标导出到 BigQuery

本页介绍了如何将 Vertex AI Search 商务版分析指标导出到 BigQuery。导出分析指标后,您可以保留这些指标,并编写 SQL 以进行自己的分析。

系统会自动为您生成 Vertex AI Search 商务解决方案分析指标。如需详细了解如何使用分析指标衡量 Vertex AI Search for Commerce 的业务影响,请参阅查看分析数据

将指标数据导出到 BigQuery 时存在以下限制:

  • 导出到 Vertex AI Search for commerce 项目中的 BigQuery 表的数据是授权视图,而不是具体化视图

  • 您无法更改或更新这些表中的数据。如果您需要更改或更新数据,请将视图导出或复制到其他目标位置。

  • 您无法导出存在时间超过 180 天的用户事件的指标,也无法导出生成时间超过 180 天的指标。在 180 天窗口期之前生成的所有指标都无法检索。

准备工作

在将指标导出到 BigQuery 之前,您必须已完成准备工作中的步骤。这包括导入用户事件,以及选择性地导入目录信息。

如需详细了解导入,请参阅:

在 BigQuery 中创建数据集

您需要在 BigQuery 中创建一个数据集来存放分析指标数据。

您必须在实现 Vertex AI Search for Commerce 的同一项目中创建数据集。

  1. 如果您之前未在项目中用过 BigQuery,请启用 BigQuery API,并确保您拥有可创建数据集和表的 IAM 角色。

    请参阅准备工作使用 IAM 进行访问权限控制

    BigQuery 文档中。

  2. 在 BigQuery 中创建一个数据集,位置为美国(美国的多个区域)多区域。例如,将其命名为 retail_data。如果您在其他区域中创建数据集,则将数据导出到 BigQuery 会失败。不支持为数据集启用 CMEK;启用该功能会导致导出失败。

    如需了解如何创建数据集,请参阅 BigQuery 文档中的创建数据集

    此数据集将用于保存您导出的数据表。以下步骤介绍了如何导出。

将分析指标导出到 BigQuery 表

使用 exportAnalyticsMetrics 方法将零售目录导出到 BigQuery 表。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您在其中创建了 BigQuery 数据集的 Vertex AI Search for Commerce API 项目的 ID。
  • DATASET_ID:您在 在 BigQuery 中创建数据集中创建的数据集的名称。例如,使用 retail_dataretail_metrics_data
  • TABLE_ID_PREFIX:表 ID 的前缀。此前缀不得为空字符串。添加后缀 retail_analytics_metrics 以完成表名称。例如,如果前缀为 test,则表名为 test_retail_analytics_metrics

请求 JSON 正文:

{
  "catalog": "projects/PROJECT_ID/locations/global/catalogs/default_catalog",
  "outputConfig":
  {
    "bigqueryDestination":
    {
      "datasetId": "DATASET_ID",
        "tableIdPrefix": "TABLE_ID_PREFIX",
        "tableType": "view"
    }
  }
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/operations/12310973052792775280",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.retail.v2.ExportAnalyticsMetricsResponse",
    "outputResult": {
      "bigqueryResult": [
        {
          "datasetId": "DATASET_ID",
          "tableId": "TABLE_ID_PREFIX_retail_analytics_metrics"
        }
      ]
    }
  }
}

指标定义

导出的指标是计数指标。由于机器人过滤可能会从指标计算中排除某些事件,因此某些计数指标可能会出现轻微的漂移。通过过滤机器人流量,您可以更准确地衡量广告效果。这不会影响 A/B 测试,因为 A/B 测试依赖于维度 external_experiment_ids,而过滤机器人流量适用于所有流量。

指标维度

次数指标是直接从具有相同维度的相关用户事件汇总而来的原始次数。如需解读指标,您需要了解指标所基于的维度。为了便于分析指标,搜索和浏览事件称为展示事件,而 detail_page_viewadd_to_cartpurchase 事件称为转化事件。下表定义了指标维度。

指标维度 说明
日期

生成相应指标的相关事件的日期。

对于展示指标,这是展示事件的日期。

对于会话和访问者指标,这是相应会话/访问者的第一个展示事件的日期。

external_experiment_ids

生成相应指标的相关事件的实验 ID。

对于展示指标,这是展示事件的实验 ID。

对于会话和访问者指标,这是会话/访问者中出现的所有展示事件的唯一外部实验 ID 的串联。例如,如果某个会话/访问者中有两个搜索事件,第一个搜索事件的 external_experiment_ids 为“test_arm_1,test_arm_2”,第二个搜索事件的 external_experiment_ids 为“test_arm_1,test_arm_3”,那么相应会话/访问者的 external_experiment_ids 为“test_arm_1,test_arm_2,test_arm_3”

device_type

生成相应指标的相关事件的设备类型,例如,事件是来自移动设备还是桌面设备。

对于展示指标,这是展示事件的设备类型。

对于会话和访问者指标,如果会话/访问者有多个不同的设备类型,则此值为空;如果整个会话/访问者只有一个设备类型,则此值为 1。

serving_config

生成相应指标的相关事件的投放配置。

对于展示指标,这是展示事件的投放配置。

对于会话和访问者指标,如果会话/访问者有多个不同的投放配置,则此值为空;如果整个会话/访问者只有一个投放配置,则此值为 1。

traffic_destination

生成相应指标的相关事件的来源。

对于展示指标,如果展示是由 Google 投放的,则为“Google”;如果展示是由您自己的解决方案投放的,则为“非 Google”。

对于会话和访问者指标,如果会话/访问者既有 Google 投放的展示事件,也有您自己的解决方案投放的展示事件,则为“混合”。如果展示事件完全由 Google 提供,则为“Google”;如果展示事件完全由您的解决方案为整个会话/访问者提供,则为“非 Google”。

实体

如果零售商使用一个商品目录为多个品牌网站或区域提供服务,则可以使用此属性。实体通常表示品牌或位置。

对于展示指标,这是展示事件的实体。

对于会话和访问者指标,这是相应会话/访问者的展示事件中排名前 5 的实体。

展示次数指标

展示次数指标是根据前提条件计算的。转化事件(detail_page_viewadd_to_cartpurchase 事件)只有在符合以下条件时才能归因于展示事件。

  • 展示事件和转化事件的访问者相同。

  • 转化事件的商品 ID 必须出现在展示事件的结果中。

  • 转化事件发生在展示事件发生后的必需时间范围内。不同的转化时间范围适用于不同类型的转化事件。

    转化路径 转化时间范围
    展示次数 -> 详情页面浏览 60 秒
    展示次数 -> 添加到购物车 24 小时
    展示 -> 购买 48 小时

搜索展示次数指标

指标名称 说明
search_event 搜索事件数
detail_page_view_from_search 来自搜索的详情页面浏览事件数
add_to_cart_unit_from_search 搜索带来的“加入购物车”商品数量
purchase_unit_from_search 源自搜索的购买单位数
revenue_from_search 搜索带来的收入
search_event_without_result 未产生任何结果的搜索事件数
search_request_personalization_enabled 启用个性化功能的搜索请求数
search_request_personalization_result_served 提供个性化结果的搜索请求数

浏览展示次数指标

指标名称 说明
browse_event 浏览事件数
detail_page_view_from_browse 来自浏览的详情页面浏览事件数
add_to_cart_unit_from_browse 浏览时添加的购物车商品数量
purchase_unit_from_browse 浏览带来的购买单元数
revenue_from_browse 浏览带来的收入
browse_event_without_result 浏览未产生任何结果的事件数
browse_request_personalization_enabled 启用了个性化的浏览请求数
browse_request_personalization_result_served 提供个性化结果的浏览请求数

会话指标

会话是指用户与系统之间持续的互动时间段。任何用户事件都标志着会话的开始,如果接下来 30 分钟内没有发生其他事件,则标志着会话的结束。每当用户在已开始的会话中发生事件时,会话时长都会再延长 30 分钟。会话结束后,当用户再次与系统互动时,系统会开始新的会话。

会话指标的特征维度由会话中的所有用户事件共同定义。请参阅指标维度,了解如何为会话设置维度值。

指标名称 说明
session 会话数

搜索会话指标

搜索会话是指包含至少一个搜索事件的会话。请注意,搜索会话也可以是浏览会话,具体取决于浏览会话指标的定义。

指标名称 说明
search_session 涉及搜索的会话数
search_event_in_search_session 搜索会话中的搜索事件数
browse_event_in_search_session 搜索会话中的浏览事件数
detail_page_view_in_search_session 搜索会话中的详情页面浏览次数
add_to_cart_in_search_session 搜索会话中的“添加到购物车”事件数量
add_to_cart_unit_in_search_session 搜索会话中的“加入购物车”商品数量
purchase_order_in_search_session 搜索会话中的购买订单数量
purchase_unit_in_search_session 搜索会话中的购买单位数
revenue_in_search_session 搜索会话内的收入
bounce_count_in_search_session 在搜索会话中仅查看一个网页后便离开网站的访问者的会话数

浏览会话指标

浏览会话是指包含至少一个浏览事件的会话。请注意,浏览会话也可以是搜索会话指标定义的搜索会话。

指标名称 说明
browse_session 涉及浏览的会话数
search_event_in_browse_session 浏览会话中的搜索事件数
browse_event_in_browse_session 浏览会话中的浏览事件数
detail_page_view_in_browse_session 浏览会话中的详情页面浏览次数
add_to_cart_in_browse_session 浏览会话中的“添加到购物车”事件数量
add_to_cart_unit_in_browse_session 浏览会话期间的“加入购物车”单位数
purchase_order_in_browse_session 浏览会话中的购买订单数量
purchase_unit_in_browse_session 浏览会话中的购买单元数
revenue_in_browse_session 浏览会话中的收入
bounce_count_in_browse_session 在浏览会话中仅查看一个网页后便离开网站的访问者的会话数

访问者指标

访问者由访问者 ID 唯一标识。访问者指标会汇总访问者的所有用户事件信息。

用于表征访问者指标的维度由访问者的所有用户事件共同定义。请参阅指标维度,了解如何为访问者设置维度值。

指标名称 说明
访问者 访问者数量

搜索访问者指标

搜索访问者是指至少执行过一次搜索事件的访问者。请注意,搜索访问者也可能是浏览访问者(如浏览访问者指标所定义)。

指标名称 说明
search_visitor 执行过至少一次搜索的访问者数量
search_event_from_search_visitor 搜索访问者的搜索事件数
browse_event_from_search_visitor 来自搜索访问者的浏览事件数
detail_page_view_from_search_visitor 来自搜索访问者的详情页面浏览次数
add_to_cart_from_search_visitor 来自搜索访问者的“加入购物车”事件数量
add_to_cart_unit_from_search_visitor 搜索访问者带来的“加入购物车”商品数量
purchase_order_from_search_visitor 来自搜索访问者的购买订单数
purchase_unit_from_search_visitor 搜索访问者的购买次数单位
revenue_from_search_visitor 来自搜索访问者的收入

浏览访问者指标

浏览型访问者是指至少执行过一次浏览事件的访问者。请注意,浏览型访问者也可以是搜索型访问者指标所定义的搜索型访问者。

指标名称 说明
browse_visitor 至少浏览过一次的访问者数量
search_event_from_browse_visitor 浏览访问者的搜索事件数
browse_event_from_browse_visitor 浏览访问者的浏览事件数
detail_page_view_from_browse_visitor 浏览访问者的详情页面浏览次数
add_to_cart_from_browse_visitor 浏览访问者的“添加到购物车”事件数量
add_to_cart_unit_from_browse_visitor 浏览访问者的“加入购物车”商品数量
purchase_order_from_browse_visitor 浏览访问者的购买订单数
purchase_unit_from_browse_visitor 浏览访问者的购买单位数
revenue_from_browse_visitor 浏览访问者带来的收入

用法示例

如果您将指标数据复制或导出到其他目标位置,则可以使用 SQL 获取有关导出指标的概括性或具体信息。以下部分介绍了使用 SQL 探索导出指标的一些常见方法。

计算点击率 (CTR)

计算每次搜索的点击率,按日期、设备类型和流量目的地划分。

SELECT
  `date`,
  device_type,
  traffic_destination,
  SUM(detail_page_view_from_search) / SUM(search_event) as search_CTR
FROM copied_table
GROUP BY `date`, device_type, traffic_destination

获取浏览驱动的详情页面浏览次数

获取来自 Google 流量的浏览事件的详情页面浏览事件,其中 external_experiment_ids 包含 test_arm,并显示所有维度信息。external_experiment_ids 重复了 string 次。

SELECT
  `date`,
  external_experiment_ids,
  device_type,
  serving_config,
  traffic_destination,
  entity,
  detail_page_view_from_browse
FROM copied_table
WHERE
  traffic_destination = 'Google' AND 'test_arm' in UNNEST(external_experiment_ids)

获取最常用的服务配置

获取 2023 年 10 月 1 日至 2023 年 11 月 1 日期间 Google 流量中最常用的服务配置。每个搜索事件都应具有关联的投放配置。

SELECT
  serving_config,
  SUM(search_event) as total_search_count
FROM copied_table
WHERE `date` between '2023-10-01' and '2023-11-01' AND traffic_destination = 'Google'
GROUP BY serving_config
ORDER BY total_search_count