本页面介绍了如何将零售商品和用户事件数据上传到 BigQuery。将数据上传到 BigQuery 后,您就可以使用这些数据通过 Vertex AI 执行销售预测,并在预构建的 Looker 信息中心内查看数据。
如果您的商务数据已采用 AI Commerce Search 格式存储在 BigQuery 的商品和用户事件表中,则可以跳过本 页面,直接前往 获取显示关键绩效 指标的信息中心和 根据零售数据生成销售预测。如需详细了解该 格式,请参阅商品 架构和用户事件简介。
准备工作
您必须先完成初始设置中的步骤,然后才能将商务数据导出到 BigQuery。
其中包括:
在 BigQuery 中创建数据集
您需要在 BigQuery 中创建一个或两个数据集,以存储商品和用户事件数据。
您可以使用一个数据集来存储这两种类型的数据,也可以创建两个数据集,每种类型的数据使用一个数据集。
您必须在实现 AI Commerce Search 的同一项目中创建数据集。
如果您之前未在项目中用过 BigQuery,请启用 BigQuery API,并确保您拥有可用于创建数据集和表的 IAM 角色。
请参阅 BigQuery 文档中的准备工作和使用 IAM 进行访问权限控制 。
在 US 多区域 的 BigQuery 中创建一个数据集。例如,将其命名为
retail_data。可选:如需将用户事件数据与商品数据放在不同的数据集中,请创建第二个数据集。例如,将其命名为
retail_user_event_data。
如需详细了解如何创建 BigQuery 数据集,请参阅 BigQuery 文档。
此数据集将用于存储您导出的数据表。以下步骤介绍了如何导出。
将 AI Commerce Search 目录导出到 BigQuery 表
使用 export 方法将零售目录导出到
BigQuery 表。
在使用任何请求数据之前, 请先进行以下替换:
- PROJECT_ID:您在其中创建 BigQuery 数据集的 AI Commerce Search API 项目的 ID。
-
BRANCH_ID:目录
分支的 ID。使用
default_branch从默认分支获取数据。 如需了解详情,请参阅 目录分支。 -
DATASET_ID:您在
创建 BigQuery 数据集中创建的数据集的名称。例如,使用
retail_data或retail_product_data。数据集必须位于同一项目中。 请勿在此处的datasetId字段中添加项目 ID。 -
TABLE_ID_PREFIX:表 ID 的前缀
。此字段不能为空字符串。系统会添加
_retail_products_BRANCH_ID后缀以完成表名称。例如,如果前缀为test,则表名为_test_retail_products_BRANCH_ID。
请求 JSON 正文:
{
"outputConfig":
{
"bigqueryDestination":
{
"datasetId": "DATASET_ID",
"tableIdPrefix": "TABLE_ID_PREFIX",
"tableType": "view"
}
}
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/BRANCH_ID/operations/17986570020347019923",
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.retail.v2alpha.ExportProductsResponse",
"outputResult": {
"bigqueryResult": [
{
"datasetId": "DATASET_ID",
"tableId": "TABLE_ID_PREFIX_retail_products_BRANCH_ID"
}
]
}
}
}
将用户事件导出到 BigQuery 表
使用 userEvents.export 方法将零售用户事件导出到 BigQuery 表:
在使用任何请求数据之前, 请先进行以下替换:
- PROJECT_ID:您在其中创建 BigQuery 数据集的 AI Commerce Search API 项目的 ID。
-
DATASET_ID:您在创建数据集
中创建的数据集的名称。例如,使用
retail_data或retail_product_data. -
TABLE_ID_PREFIX:表 ID 的前缀
。此字段不能为空字符串。系统会添加
retail_products后缀以完成表名称。例如,如果前缀为test,则表名为test_retail_products.
请求 JSON 正文:
{
"outputConfig":
{
"bigqueryDestination":
{
"datasetId": "DATASET_ID",
"tableIdPrefix": "TABLE_ID_PREFIX",
"tableType": "view"
}
}
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/operations/17203443067109586170",
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.retail.v2alpha.ExportUserEventsResponse",
"outputResult": {
"bigqueryResult": [
{
"datasetId": "DATASET_ID",
"tableId": "TABLE_ID_PREFIX_retail_user_events"
}
]
}
}
}
导出的数据简介
以下是关于您导出到 BigQuery 表的商务数据的一些注意事项:
导出的用户事件数据简介
以下是关于导出的用户事件数据中包含的商品信息的一些注意事项。
商品价格信息
userEvents.export 方法返回商品价格信息的方式取决于以下因素:
您在提取时将价格信息包含在用户事件数据中。 当您调用
userEvents.export方法时,随用户事件返回的价格是事件发生时商品的价格。您未在用户事件数据中包含价格信息,但在提取时在商品数据中包含了价格信息。 当您调用
userEvents.export方法时,随用户事件返回的价格不一定是事件发生时商品的价格。它是提取时在商品数据中找到的价格。您未在用户事件数据中包含价格信息,并且商品数据中也没有价格信息。 当您调用
userEvents.export方法时,不会随用户事件返回任何价格。
其他商品信息
当您调用 userEvents.export 方法时,所有商品信息(价格除外)都会与用户事件信息联接。商品值可能会从用户事件发生时到您调用 userEvents.export 时发生变化。因此,在用户事件表中返回的非价格商品值可能与用户事件发生时的商品值不同。
可选:确认新表位于 BigQuery 中
将商品数据和用户事件数据导出到 BigQuery 后,请确保存在新表。
在 BigQuery 中,前往您在 创建 BigQuery 数据集 中创建的数据集。
打开数据集,确保您看到导出的两个表。 例如,查找名称以
_retail_products_BRANCH_ID和retail_user_events结尾的表。
如需详细了解如何使用 BigQuery 表,请参阅 查询和查看数据。
如需详细了解 AI Commerce Search 如何处理客户数据,请参阅数据治理页面。