Google Merchant Center 転送のスケジュールを設定する
始める前に
Google Merchant Center のデータ転送を作成する前に、次のことを行ってください。
- BigQuery Data Transfer Service を有効にするために必要なすべての操作が完了していることを確認します。
- Google Merchant Center のデータを保存する BigQuery データセットを作成します。
- データセット リージョンについては、US または EU のデフォルト オプションであるマルチリージョンの使用がサポートされています。
- 特定のリージョンでデータセットを作成する場合、Merchant Center のデータ転送は次のリージョンでのみサポートされます。
us-east4 (Northern Virginia)
asia-northeast1 (Tokyo)
asia-southeast1 (Singapore)
australia-southeast1 (Sydney)
europe-north1 (Finland)
europe-west2 (London)
europe-west6 (Zurich)
- Pub/Sub の転送実行通知を設定する場合は、
pubsub.topics.setIamPolicy
権限が必要です。メール通知を設定するだけの場合、Pub/Sub の権限は必要ありません。詳細については、BigQuery Data Transfer Service の実行通知をご覧ください。
必要な権限
データ転送を作成するユーザーに、次の必要な権限が付与されていることを確認します。
BigQuery:
- データ転送を作成する
bigquery.transfers.update
権限 bigquery.datasets.get
とbigquery.datasets.update
の両方(抽出先データセットに対する権限)
bigquery.transfers.update
権限、bigquery.datasets.update
権限、bigquery.datasets.get
権限は、IAM 事前定義ロールbigquery.admin
に含まれています。BigQuery Data Transfer Service での IAM ロールについて、詳しくはアクセス制御をご覧ください。- データ転送を作成する
Google Merchant Center
転送構成で使用されている Google Merchant Center アカウントへの標準アクセス。Google Merchant Center UI の [Users] セクションをクリックすると、アクセス権を確認できます。
価格競争力とベストセラーのデータにアクセスするには、マーケット インサイトの資格要件を満たす必要があります。
Google Merchant Center の転送を設定する
Google Merchant Center レポートのデータ転送を設定するには、以下が必要です。
- 販売者 ID またはマルチクライアント アカウント ID: これは、Google Merchant Center UI に表示されている販売者 ID です。
Google Merchant Center レポートのデータ転送を作成するには:
コンソール
Google Cloud コンソールの [データ転送] ページに移動します。
[
転送を作成] をクリックします。[転送の作成] ページで、次の操作を行います。
[ソースタイプ] セクションの [ソース] で、[Google Merchant Center] を選択します。
[転送構成名] セクションの [表示名] に、データ転送の名前(例:
My Transfer
)を入力します。転送名には、後で修正が必要になった場合に識別できる任意の名前を使用できます。[スケジュール オプション] セクションで:
[繰り返しの頻度] を選択します。[時間]、[日]、[週]、[月] を選択する場合は、頻度も指定する必要があります。[カスタム] を選択して、カスタムの繰り返しの頻度を指定することもできます。[オンデマンド] を選択した場合、手動で転送をトリガーすると、このデータ転送が実行されます。
必要に応じて、[すぐに開始可能] を選択するか、[設定した時刻に開始] を選択して開始日と実行時間を指定します。
[開始日と実行時間] に、転送を開始する日付と時刻を入力します。現在の UTC 時刻から 24 時間以上後の値を指定してください。[すぐに開始可能] を選択した場合、このオプションは無効になります。
スケジュール オプションの設定を [今すぐ開始] のままにすると、最初のデータ転送の実行が直ちに開始され、
No data to transfer found for the Merchant account. If you have just created this transfer, you may need to wait for up to a day before the data of your Merchant account are prepared and available for the transfer.
というエラー メッセージで失敗します。スケジュールされている次回の転送は正常に実行されます。販売アカウントのデータが UTC 時間の同じ日に準備されている場合は、当日の実行のためのバックフィルを設定できます。
[転送先の設定] セクションの [宛先データセット] で、データを保存するために作成したデータセットを選択します。
[データソースの詳細] セクションの [販売者 ID] に、販売者 ID または MCA ID を入力します。
転送するレポートを選択します。詳細については、サポートされるレポートをご覧ください。
[サービス アカウント] メニューで、Google Cloud プロジェクトに関連付けられたサービス アカウントからサービス アカウントを選択します。ユーザー認証情報を使用する代わりに、サービス アカウントをデータ転送に関連付けることができます。データ転送でサービス アカウントを使用する方法の詳細については、サービス アカウントの使用をご覧ください。
- フェデレーション ID でログインした場合、データ転送を作成するにはサービス アカウントが必要です。Google アカウントでログインした場合、転送用のサービス アカウントは省略可能です。
- サービス アカウントには必要な権限が付与されている必要があります。
(省略可)[通知オプション] セクションで、次の操作を行います。
[保存] をクリックします。
bq
bq mk
コマンドを入力して、転送作成フラグ --transfer_config
を指定します。次のフラグも必要です。
--data_source
--target_dataset
--display_name
--params
--project_id
フラグを指定して、特定のプロジェクトを指定することもできます。--project_id
を指定しない場合は、デフォルトのプロジェクトが使用されます。
bq mk \ --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source --service_account_name=service_account_name
ここで
- project_id は、プロジェクト ID です。
- dataset は、転送構成の抽出先データセットです。
- name は、転送構成の表示名です。転送名には、後で修正が必要になった場合に識別できる任意の名前を使用できます。
- parameters には、作成される転送構成のパラメータを JSON 形式で指定します(例:
--params='{"param":"param_value"}'
)。- Google Merchant Center のデータ転送では、
merchant_id
パラメータを指定する必要があります。 export_products
パラメータは、商品と商品問題のデータを転送するかどうかを指定します。export_products
パラメータを指定しなくても、このパラメータはデフォルトで含まれています。このパラメータを明示的に含めて、true に設定することをおすすめします。export_regional_inventories
パラメータは、地域別在庫データを転送するかどうかを指定します。export_local_inventories
パラメータは、ローカル在庫データを転送するかどうかを指定します。export_price_competitiveness
パラメータは、価格競争力データを転送するかどうかを指定します。export_price_insights
パラメータは、価格の検討データを転送するかどうかを指定します。export_best_sellers_v2
パラメータは、ベストセラー データを転送するかどうかを指定します。export_performance
パラメータは、商品のパフォーマンス データを転送するかどうかを指定します。
- Google Merchant Center のデータ転送では、
- data_source は、データソース(
merchant_center
)です。 - service_account_name は、データ転送の認証に使用されるサービス アカウント名です。サービス アカウントは、転送の作成に使用した
project_id
が所有している必要があります。また、必要な権限がすべて付与されている必要があります。
たとえば、次のコマンドは、販売者 ID 1234
とターゲット データセット mydataset
を使用して、My Transfer
という名前の Google Merchant Center のデータ転送を作成します。このデータ転送はデフォルトのプロジェクト内に作成されます。
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"merchant_id":"1234","export_products":"true","export_regional_inventories":"true","export_local_inventories":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=merchant_center
コマンドの初回実行時に、次のようなメッセージが表示されます。
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
メッセージの指示に従って、認証コードをコマンドラインに貼り付けます。
このデータ転送を作成した直後である場合は、販売アカウントのデータが準備されて転送に使用できるようになるまでに最長で 1 日待機することが必要になる可能性があります。スケジュールされている次回の転送は正常に実行されます。販売アカウントのデータが UTC 時間の同じ日に準備されている場合は、当日の実行のためのバックフィルを設定できます。
API
projects.locations.transferConfigs.create
メソッドを使用して、TransferConfig
リソースのインスタンスを指定します。
Google Merchant Center の転送設定のトラブルシューティング
データ転送を設定する際に問題が発生した場合は、BigQuery Data Transfer Service 転送設定のトラブルシューティングの Google Merchant Center の転送に関する問題をご覧ください。