このページでは、小売商品データとユーザー イベントデータを BigQuery にアップロードする方法について説明します。データが BigQuery に取り込まれると、そのデータを使用して Vertex AI で販売予測を行い、事前構築済みの Looker ダッシュボードでデータを確認できるようになります。
コマースデータが BigQuery の商品テーブルとユーザー イベント テーブルにすでに存在する場合、Vertex AI Search for Commerce 形式では、このページをスキップして重要業績評価指標を表示するダッシュボードを取得すると小売データから販売予測を生成するに直接進むことができます。形式の詳細については、商品スキーマとユーザー イベントについてをご覧ください。
始める前に
コマース データを BigQuery にエクスポートするには、初期設定の手順を完了している必要があります。
以下に例を示します。
BigQuery でデータセットを作成する
商品データとユーザー イベントデータを保持するには、BigQuery で 1 つまたは 2 つのデータセットを作成する必要があります。
1 つのデータセットを使用して両方のタイプのデータを保持することも、データのタイプごとに 1 つずつ、計 2 つのデータセットを作成することもできます。
コマース向け Vertex AI Search を実装したプロジェクトと同じプロジェクト内にデータセットを作成する必要があります。
プロジェクトで BigQuery を初めて使用する場合は、BigQuery API を有効にして、データセットとテーブルを作成できる IAM ロールがあることを確認します。
BigQuery ドキュメントの、始める前にと IAM によるアクセス制御をご覧ください。
BigQuery で米国マルチリージョンにデータセットを作成します。たとえば、
retail_dataという名前を付けます。省略可: ユーザー イベント データを商品データとは別のデータセットに配置するには、2 番目のデータセットを作成します。たとえば、
retail_user_event_dataという名前を付けます。
BigQuery データセットの作成の詳細については、BigQuery のドキュメントをご覧ください。
このデータセットは、エクスポートするデータテーブルを保持するために使用されます。次の手順では、エクスポート方法について説明します。
Vertex AI Search for Commerce カタログを BigQuery テーブルにエクスポートする
export メソッドを使用して、Retail カタログを BigQuery テーブルにエクスポートします。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: BigQuery データセットを作成したコマース向け Vertex AI 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 データセットを作成したコマース向け Vertex AI Search API プロジェクトの ID。
-
DATASET_ID: BigQuery でデータセットを作成するで作成したデータセットの名前。たとえば、
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 テーブルにエクスポートするコマース データについては、次の点に注意してください。
プロジェクトの BigQuery テーブルにエクスポートされるデータは、マテリアライズド ビューではなく、承認済みビューです。
これらのテーブルのデータの変更や更新はできません。
商品は 1 時間ごとに更新されます。
ユーザー イベントは準リアルタイムで更新されます。
エクスポートされるユーザー イベント データについて
エクスポートされるユーザー イベントデータに含まれる商品情報について、以下の点を確認してください。
商品の価格情報
userEvents.export メソッドによって商品の価格情報が返される方法は、次によって異なります。
取り込み時にユーザー イベントデータに価格情報が含まれていた。
userEvents.exportメソッドを呼び出す際に、ユーザー イベントと同時に返される価格は、イベント発生時の商品の価格になります。ユーザー イベントデータに価格情報は含まれていなかったが、取り込み時に商品データに価格情報が含まれていた。
userEvents.exportメソッドを呼び出す際に、ユーザー イベントと同時に返される価格は、必ずしもイベント発生時の商品価格にはなりません。取り込み時に商品データに含まれていた価格情報です。ユーザー イベントデータに価格情報は含まれていなかったため、商品データで利用できる価格情報がない。
userEvents.exportメソッドを呼び出す際に、ユーザー イベントと同時に返される価格はありません。
その他の商品情報
userEvents.export メソッドを呼び出すときに、すべての商品情報(価格を除く)がユーザー イベント情報に結合されます。商品の値は、ユーザー イベントの時刻から userEvents.export を呼び出す時刻まで変更できます。このため、ユーザー イベント テーブルで返される価格以外の商品の値は、ユーザー イベント時の商品の値とは異なる場合があります。
省略可: 新しいテーブルが BigQuery にあることを確認する
商品データとユーザー イベント データを BigQuery にエクスポートした後、新しいテーブルが存在することを確認してください。
BigQuery で、BigQuery にデータセットを作成するで作成したデータセットに移動します。
データセットを開いて、エクスポートした 2 つのテーブルが表示されていることを確認します。たとえば、名前に
_retail_products_BRANCH_IDとretail_user_eventsが含まれるテーブルを探します。
BigQuery テーブルの操作の詳細については、データのクエリと表示をご覧ください。
Vertex AI Search for Commerce で顧客データを処理する方法の詳細については、データ ガバナンスのページをご覧ください。