Comparison Shopping Service Center 転送

Comparison Shopping Service(CSS)Center 対応の BigQuery Data Transfer Service では、CSS Center レポートデータの定期的な読み込みジョブを自動的にスケジュール設定して管理できます。

サポートされるレポート

CSS Center 対応の BigQuery Data Transfer Service では、関連する Merchant Center アカウントの商品と商品の問題に関するレポートに含まれる次のデータがサポートされています。

商品と商品の問題

このレポートには、CSS Center に関連付けられている販売者が Merchant Center アカウントにアップロードしたデータが含まれます。また、このレポートには Google が販売者の商品に関して検出したアイテムレベルの問題も含まれます。このデータがどのように BigQuery に読み込まれるかについては、CSS Center の商品テーブル スキーマをご覧ください。

CSS Center 転送からのデータの取り込み

CSS Center から BigQuery にデータを転送すると、データは日付でパーティション分割された BigQuery テーブルに読み込まれます。データが読み込まれるテーブル パーティションは、データソースの日付に対応します。同じ日付の複数の転送をスケジュールすると、BigQuery Data Transfer Service により、対象の日付のパーティションが最新のデータで上書きされます。同じ日に複数回の転送やバックフィルを実行しても、データは重複せず、他の日付のパーティションに対する影響はありません。

制限事項

レポートによっては、過去のバックフィルのサポート期間が異なるなど、独自の制約がある場合があります。商品と商品の問題に関するレポートでは、バックフィルはサポートされていません。

BigQuery 内の商品と商品の問題に関するデータは、CSS Center アカウントに関連付けられている Merchant Center アカウントのリアルタイムのデータではありません。BigQuery 内の商品と商品の問題に関するデータのレイテンシは最大 1 時間になることがあります。

CSS Center アカウントに関してエクスポートされたデータには、関連する CSS と情報を共有することに同意した販売者に関する情報のみが含まれます。詳しくは、CSS が Merchant Center アカウントにアクセスする方法をご覧ください。

CSS Center のデータアクセスと認可

CSS Center のユーザーがアクセスできる、Merchant Center アカウントの情報は、Merchant Center アカウントでそのユーザーに付与されているアクセス権レベルに基づいて制限されます。したがって、CSS Center 転送には、CSS Center のユーザーがアクセスできる販売者データのみが含まれます。詳しくは、CSS が Merchant Center アカウントにアクセスする方法をご覧ください。

CSS ユーザーのアクセス権を構成するには、CSS Center で CSS 管理者としてユーザーのアクセス権を構成します。

データに対するクエリを実行する

データが BigQuery に転送されると、取り込み時間パーティション分割テーブルにそのデータが書き込まれます。

CSS Center テーブルのクエリを実行する際は、そのクエリで _PARTITIONTIME または _PARTITIONDATE の疑似列を使用する必要があります。詳細については、パーティション分割テーブルのクエリをご覧ください。

Products_ テーブルにはネストされたフィールドと繰り返しフィールドが含まれています。ネストされたデータと繰り返しデータの処理については、繰り返しフィールドの処理の違いをご覧ください。

CSS Center のサンプルクエリ

転送されたデータを分析するには、CSS Center の以下のサンプルクエリを使用できます。このクエリは、Looker Studio などの可視化ツールでも使用できます。

以下の各クエリでは、dataset をデータセット名で置き換えてください。css_id は、実際の CSS ドメイン ID に置き換えます。

商品と商品の問題のサンプルクエリ

次のクエリでは、商品と商品の問題に関するレポートからのデータを分析します。

商品と商品の問題に関する統計情報

次の SQL サンプルクエリでは、商品の数、問題のある商品の数、日付ごとの問題の数を取得します。

SELECT
  _PARTITIONDATE AS date,
  COUNT(*) AS num_products,
  COUNTIF(ARRAY_LENGTH(item_issues) > 0) AS num_products_with_issues,
  SUM(ARRAY_LENGTH(item_issues)) AS num_issues
FROM
  dataset.Products_css_id
WHERE
  _PARTITIONDATE >= 'YYYY-MM-DD'
GROUP BY
  date
ORDER BY
  date DESC;

不承認となった商品

次の SQL サンプルクエリでは、表示が承認されていない商品の数をリージョンとレポート コンテキスト別に取得します。商品が承認されなかった原因として、レポート コンテキストが除外されていたか、商品に問題があったことが考えられます。

SELECT
  _PARTITIONDATE AS date,
  statuses.region as disapproved_region,
  reporting_context_status.reporting_context as reporting_context,
  COUNT(*) AS num_products
FROM
  dataset.Products_css_id,
  UNNEST(reporting_context_statuses) AS reporting_context_status,
  UNNEST(reporting_context_status.region_and_status) AS statuses
WHERE
  _PARTITIONDATE >= 'YYYY-MM-DD' AND statuses.status = 'DISAPPROVED'
GROUP BY
  date, disapproved_region, reporting_context
ORDER BY
  date DESC;

不承認の問題がある商品

次の SQL サンプルクエリでは、不承認の問題がある商品の数をリージョン別に取得します。

SELECT
  _PARTITIONDATE AS date,
  disapproved_region,
  COUNT(DISTINCT CONCAT(CAST(css_id AS STRING), ':', product_id))
      AS num_distinct_products
FROM
  dataset.Products_css_id,
  UNNEST(item_issues) AS issue,
  UNNEST(issue.severity.severity_per_reporting_context) as severity_per_rc,
  UNNEST(severity_per_rc.disapproved_regions) as disapproved_region
WHERE
  _PARTITIONDATE >= 'YYYY-MM-DD'
GROUP BY
  date, disapproved_region
ORDER BY
  date DESC;