このページでは、小売業向け Vertex AI Search の分析指標を BigQuery にエクスポートする方法について説明します。分析指標をエクスポートすると、指標を保持し、独自の分析用の SQL を記述できます。
小売業向け Vertex AI Search の分析指標は自動的に生成されます。 分析指標を使用して小売業向け Vertex AI Search のビジネスへの影響を測定する方法については、分析を表示をご覧ください。
BigQuery に指標データをエクスポートする場合、次の制限があります。
小売業向け Vertex AI Search プロジェクトの BigQuery テーブルにエクスポートされるデータは、マテリアライズド ビューではなく、承認済みビューです。
これらのテーブルのデータの変更や更新はできません。データを変更または更新する必要がある場合は、ビューをエクスポートまたは別の宛先にコピーします。
180 日以上経過したユーザー イベントの指標、または 180 日以上前に生成された指標はエクスポートできません。180 日間が経過する前に生成された指標は取得できません。
始める前に
指標を BigQuery にエクスポートする前に、始める前にの手順を完了する必要があります。これには、ユーザー イベントと、必要に応じてカタログ情報のインポートが含まれます。
インポートの詳細については、以下をご覧ください。
BigQuery でデータセットを作成する
分析指標データを保持するには、BigQuery にデータセットを作成する必要があります。
小売業向け Vertex AI Search を実装したプロジェクトと同じプロジェクト内にデータセットを作成する必要があります。
プロジェクトで BigQuery を初めて使用する場合は、BigQuery API を有効にして、データセットとテーブルを作成できる IAM ロールがあることを確認します。
BigQuery ドキュメントの、始める前にと IAM によるアクセス制御
をご覧ください。
BigQuery で米国(米国の複数のリージョン)のマルチリージョンのデータセットを作成します。たとえば、
retail_data
という名前を付けます。別のリージョンにデータセットを作成すると、BigQuery へのデータのエクスポートは失敗します。 データセットの CMEK はサポートされていません。有効にするとエクスポートが失敗します。データセットの作成方法については、BigQuery ドキュメントのデータセットの作成をご覧ください。
このデータセットは、エクスポートするデータテーブルを保持するために使用されます。次の手順では、エクスポートする方法について説明します。
分析指標を BigQuery テーブルにエクスポートする
exportAnalyticsMetrics
メソッドを使用して、Retail カタログを BigQuery テーブルにエクスポートします。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: BigQuery データセットを作成した小売業向け Vertex AI Search API プロジェクトの ID。
-
DATASET_ID: BigQuery でデータセットを作成するで作成したデータセットの名前。たとえば、
retail_data
またはretail_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" } ] } } }
指標の定義
エクスポートされた指標はカウント指標です。bot フィルタリングでは指標の計算から一部のイベントを除外する場合があるため、一部のカウント指標ではわずかなブレが生じることがあります。bot フィルタリングは、より正確なパフォーマンス測定値を提供するのに役立ちます。これは A/B テストには影響しません。A/B テストはディメンション external_experiment_ids
に依存しますが、bot フィルタリングはすべてのトラフィックに適用されます。
指標のディメンション
カウント指標は、同じディメンションの関連するユーザー イベントから直接集計された未加工のカウントです。指標を解釈するには、指標がどのディメンションに基づいているかを把握する必要があります。分析指標の目的上、検索イベントと閲覧イベントはインプレッション イベントと呼ばれ、detail_page_view
イベント、add_to_cart
イベント、purchase
イベントはコンバージョン イベントと呼ばれます。次の表に、指標のディメンションを定義します。
指標のディメンション | 説明 |
---|---|
日付 |
指標を生成した関連イベントの日付。 インプレッション指標の場合、これはインプレッション イベントの日付です。 セッション指標とユーザー指標の場合、これはセッション / ユーザーの最初のインプレッション イベントの日付です。 |
external_experiment_ids |
指標を生成した関連イベントのテスト ID。 インプレッション指標の場合、これはインプレッション イベントのテスト ID です。 セッション指標とユーザー指標の場合、セッション / ユーザーに表示されるすべてのインプレッション イベントの固有の外部テスト ID を連結したものです。たとえば、セッション / ユーザー内に 2 つの検索イベントがある場合、最初の検索イベントには external_experiment_ids 'test_arm_1,test_arm_2' があり、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 以外」です。 |
エンティティ |
1 つの商品カタログで複数のブランドサイトや地域にサービスを提供している小売店が使用します。エンティティは通常、ブランドや場所を表します。 インプレッション指標の場合、これはインプレッション イベントのエンティティです。 セッション指標とユーザーの指標の場合、これはセッション / ユーザーのインプレッション イベントの上位 5 つのカウント対象エンティティです。 |
インプレッション指標
インプレッション指標は前提条件に従って計算されます。コンバージョン イベント(detail_page_view
イベント、add_to_cart
イベント、purchase
イベント)は、次の条件に一致する場合にのみ、インプレッション イベントに帰属させることができます。
インプレッション イベントとコンバージョン イベントが同じユーザーである。
コンバージョン イベントの商品 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 分延長されます。セッションが終了した後、ユーザーがシステムと再度やり取りすると、新しいセッションが開始されます。
セッション指標を特徴づけるディメンションは、セッション内のすべてのユーザー イベントでまとめて定義されます。セッションにディメンション値を設定する方法については、指標のディメンションをご覧ください。
指標名 | 説明 |
---|---|
セッション | セッション数 |
検索セッション指標
検索セッションとは、少なくとも 1 つの検索イベントを含むセッションです。検索セッションは、閲覧セッションの指標で定義される閲覧セッションにすることもできます。
指標名 | 説明 |
---|---|
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 | 検索セッション内で 1 ページだけ閲覧した後、サイトを離れたユーザーのセッション数 |
閲覧セッション指標
閲覧セッションとは、少なくとも 1 つの閲覧イベントを含むセッションです。閲覧セッションは、検索セッション指標で定義されている検索セッションにすることもできます。
指標名 | 説明 |
---|---|
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 | 閲覧セッション内で 1 ページだけ閲覧した後、サイトを離れたユーザーのセッション数 |
ユーザー指標
ユーザーは訪問者 ID によって一意に識別されます。ユーザー指標は、ユーザーのすべてのユーザー イベント情報を集計します。
ユーザー指標を特徴とするディメンションは、そのユーザーのすべてのユーザー イベントによってまとめて定義されます。ユーザーにディメンション値を設定する方法については、指標のディメンションをご覧ください。
指標名 | 説明 |
---|---|
訪問者 | ユーザー数 |
検索ユーザー指標
検索ユーザーとは、少なくとも 1 つの検索イベントを行ったユーザーです。検索ユーザーは、閲覧ユーザー指標で定義されているように、閲覧ユーザーにすることもできます。
指標名 | 説明 |
---|---|
search_visitor | 検索を 1 回以上行ったユーザー数 |
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 | 検索ユーザーの収益 |
閲覧ユーザー指標
閲覧ユーザーとは、少なくとも 1 つの閲覧イベントを実行するユーザーです。なお、閲覧ユーザーは、検索ユーザー指標で定義されているように、検索ユーザーにすることもできます。
指標名 | 説明 |
---|---|
browse_visitor | 少なくとも 1 回の閲覧を行ったユーザー数 |
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)
トラフィックの宛先ごとの 1 デバイスタイプの 1 日あたりの検索のコンピューティング クリック率。
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
閲覧ドリブンな詳細ページ表示数を取得する
test_arm
を含む external_experiment_ids
で Google トラフィックの閲覧イベントから発生した詳細ページ表示イベントを取得し、すべてのディメンション情報を表示します。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)
よく使うサービス構成を取得する
Google トラフィックに対して「2023-10-01」から「2023-11-01」の間に最もよく使用されたサービス構成を取得します。各検索イベントには、サービス構成が関連付けられている必要があります。
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