検索広告 360 の転送(非推奨)
検索広告 360(旧称 Doubleclick Search)用 BigQuery Data Transfer Service を使用すると、検索広告 360 レポートデータの定期的な読み込みジョブを自動的にスケジュールし、管理できます。
サポートされるレポート
検索広告 360 用 BigQuery Data Transfer Service では現在、次のレポート オプションがサポートされています。
- 検索広告 360 の account レポート
- 検索広告 360 の ad レポート
- 検索広告 360 の advertiser レポート
- 検索広告 360 の adGroup レポート
- 検索広告 360 の adGroupTarget レポート
- 検索広告 360 の bidStrategy レポート
- 検索広告 360 の campaign レポート
- 検索広告 360 の campaignTarget レポート
- 検索広告 360 の conversion レポート
- 検索広告 360 の feedItem レポート
- 検索広告 360 の floodlightActivity レポート
- 検索広告 360 の keyword レポート
- 検索広告 360 の negativeAdGroupKeyword レポート
- 検索広告 360 の negativeAdGroupTarget レポート
- 検索広告 360 の negativeCampaignKeyword レポート
- 検索広告 360 の negativeCampaignTarget レポート
- 検索広告 360 の productAdvertised レポート
- 検索広告 360 の productGroup レポート
- 検索広告 360 の productLeadAndCrossSell レポート
- 検索広告 360 の visit レポート
検索広告 360 レポートが BigQuery Data Transfer Service のテーブルとビューに変換される仕組みについては、検索広告 360 レポートの変換をご覧ください。
レポート オプション | サポート |
---|---|
サポートされている API バージョン | |
スケジュール | 毎日、転送が最初に作成される時刻(デフォルト) 時刻を設定できます。 |
ウィンドウの更新 | 過去 7 日間(デフォルト) 構成可能(最大 30 日) マッチテーブルのスナップショットは 1 日に 1 回取得され、最新の実行日付のパーティションに保存されます。マッチテーブルのスナップショットは、バックフィルや、リフレッシュ ウィンドウによって読み込まれた日には更新されません。リフレッシュ ウィンドウでどのマッチテーブルが更新されないかについては、転送を手動でトリガーするをご覧ください。 |
最大バックフィル期間 | 上限なし 検索広告 360 にはデータ保持期間の上限はありませんが、BigQuery Data Transfer Service には、1 回のバックフィルでリクエストできる日数に上制限があります。バックフィルの詳細については、転送を手動でトリガーするをご覧ください。 |
始める前に
検索広告 360 の転送を作成する前に、以下の作業を完了しておきます。
- BigQuery Data Transfer Service を有効にするために必要なすべての操作が完了していることを確認します。
- 検索広告 360 のデータを保存する BigQuery Data Transfer Service データセットを作成します。
- Pub/Sub の転送実行通知を設定する場合は、
pubsub.topics.setIamPolicy
権限が必要です。メール通知を設定するだけの場合、Pub/Sub の権限は必要ありません。詳細については、BigQuery Data Transfer Service の実行通知をご覧ください。 - プロジェクトで検索広告 360 API へのアクセスを有効にします。
必要な権限
転送を作成するユーザーに、次の必要な権限が付与されていることを確認します。
BigQuery Data Transfer Service:
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 Cloud:
- プロジェクトに対して検索広告 360 からデータをダウンロードするための
serviceusage.services.use
権限
IAM 事前定義ロール
editor
、owner
、serviceusage.serviceUsageConsumer
にはserviceusage.services.use
権限が含まれています。Service Usage の IAM ロールの詳細については、アクセス制御のリファレンスをご覧ください。- プロジェクトに対して検索広告 360 からデータをダウンロードするための
Google 検索広告 360: 転送構成で使用されている Google 検索広告 360 の代理店 ID と広告主 ID に対する読み取りアクセス権。詳細については、Google アカウントの作成と SA360 の権限の取得をご覧ください。
検索広告 360 のデータ転送を設定する
検索広告 360 レポートのデータ転送を設定するには、以下が必要です。
- 代理店 ID: Google 検索広告 360 の代理店 ID。検索広告 360 の代理店 ID を取得する方法については、Google アカウントの作成と SA360 の権限の取得をご覧ください。
- 広告主 ID: Google 検索広告 360 の広告主 ID。検索広告 360 の広告主 ID を取得する方法については、Google アカウントの作成と SA360 の権限の取得をご覧ください。
検索広告 360 レポートのデータ転送を作成するには:
コンソール
Google Cloud Console の [BigQuery] ページに移動します。
[転送] をクリックします。
[転送を作成] をクリックします。
[転送の作成] ページで、次の操作を行います。
[ソースタイプ] セクションの [ソース] で、[検索広告 360(旧称: Doubleclick Search)] を選択します。
[転送構成名] セクションの [表示名] に、転送名(例:
My Transfer
)を入力します。転送名には、後で修正が必要になった場合に簡単に識別できる任意の名前を使用できます。[スケジュール オプション] セクションで:
[繰り返しの頻度] で、転送を実行する頻度のオプションを選択します。[日数] を選択した場合は、有効な時刻を UTC で入力します。
- 時間
- 日数
- オンデマンド
必要に応じて、[すぐに開始可能] を選択、または [設定した時間に開始] を選択して、開始日と実行時間を指定します。
[転送先の設定] セクションの [宛先データセット] で、データを保存するために作成したデータセットを選択します。
[データソースの詳細] セクションで、次の操作を行います。
- [代理店 ID] に代理店 ID を入力します。
- [Advertiser ID] に広告主 ID を入力します。
- 削除されたエンティティと指標を転送対象として含めるには [include removed items] チェックボックスをオンにします。
(省略可)すべてのテーブルを読み込む場合は、[表のフィルタ] フィールドを空白のままにします。サポートされる一部のテーブルのデータだけをインポートするには、対象とするテーブル名のプレフィックスを空白文字で区切ってリストします(例:
Account AccountDeviceStats AccountFloodlightAndDeviceStats
)。サポートされているすべてのテーブル名については、検索広告 360 レポートの変換をご覧ください。(省略可)検索広告 360 レポートの変換で事前定義されている列だけをインポートする場合は、[カスタム Floodlight 変数] フィールドを空白のままにします。
検索広告 360 で作成したカスタム Floodlight 変数をインポートするには、対象とするフィールド名を JSON 形式で指定します。次に例を示します。[{ "cfv_name": "variable_name", "cfv_type": "metric or dimension", "campaign_manager_type": "number or string", "destination_table_name": "table_name", "bigquery_column_name": "custom_column_name" },{ "cfv_name": "variable_name_2", "cfv_type": "metric or dimension", "campaign_manager_type": "number or string", "destination_table_name": ["table_name_2","table_name_3"], "bigquery_column_name": "custom_column_name_2" }]
- JSON リストのすべての項目に、次の要素を含めます。
- cfv_name は、キャンペーン マネージャーでカスタム Floodlight 変数を作成する際に指定した「わかりやすい」名前です。カスタムのディメンションと指標を設定するときにも、このわかりやすい名前が検索広告 360 の UI に表示されます。
- cfv_type には、指標またはディメンションのいずれかを指定する必要があります。検索広告 360 の UI でカスタム Floodlight 変数を設定した方法に合わせてください。
- campaign_manager_type には、数値または文字列のいずれかを指定する必要があります。検索広告 360 の UI でカスタム Floodlight 変数を設定した方法に合わせてください。
- destination_table_name は、カスタム Floodlight 変数の追加先とする宛先テーブルの名前の接頭辞または名前の接頭辞のリストです。例:
AccountDeviceStats
、[AdDeviceStats,CampaignFloodtlightAndDeviceStats]
。 - bigquery_column_name は、BigQuery 宛先テーブルでこのカスタム Floodlight 変数に使用される列名です。列名は、BigQuery の列名形式の要件に従う必要があります。
(省略可)[通知オプション] セクションで、次の操作を行います。
[保存] をクリックします。
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
ここで
- project_id は、プロジェクト ID です。
- dataset は、転送構成の抽出先データセットです。
- name は、転送構成の表示名です。転送名には、後で修正が必要になった場合に簡単に識別できる任意の名前を使用できます。
parameters には、作成される転送構成のパラメータを JSON 形式で指定します。例:
--params='{"param":"param_value"}'
。検索広告 360 では、advertiser_id
パラメータとagency_id
パラメータを指定する必要があります。必要に応じて、次のパラメータを設定できます。- (省略可)サポートされている一部のテーブルのデータだけをインポートするには
table_filter
を設定し、対象とするテーブル名の接頭辞を空白文字で区切ってリストします(例:Account AccountDeviceStats AccountFloodlightAndDeviceStats
)。サポートされているすべてのテーブル名については、検索広告 360 レポートの変換をご覧ください。 - (省略可)検索広告 360 で作成したカスタム Floodlight 変数をインポートするには
custom_floodlight_variables
を設定し、対象とするフィールド名を JSON 形式で指定します。次に例を示します。[{ "cfv_name": "variable_name", "cfv_type": "metric or dimension", "campaign_manager_type": "number or string", "destination_table_name": "table_name", "bigquery_column_name": "custom_column_name" },{ "cfv_name": "variable_name_2", "cfv_type": "metric or dimension", "campaign_manager_type": "number or string", "destination_table_name": "table_name_2", "bigquery_column_name": "custom_column_name_2" }]
- JSON リストのすべての項目に、次の要素を含めます。
- cfv_name は、キャンペーン マネージャーでカスタム Floodlight 変数を作成する際に指定した「わかりやすい」名前です。カスタムのディメンションと指標を設定するときにも、このわかりやすい名前が検索広告 360 の UI に表示されます。
- cfv_type には、指標またはディメンションのいずれかを指定する必要があります。検索広告 360 の UI でカスタム Floodlight 変数を設定した方法に合わせてください。
- campaign_manager_type には、数値または文字列のいずれかを指定する必要があります。検索広告 360 の UI でカスタム Floodlight 変数を設定した方法に合わせてください。
- destination_table_name は、カスタム Floodlight 変数の追加先とする宛先テーブル名の接頭辞です例:
AccountDeviceStats
- bigquery_column_name は、BigQuery 宛先テーブルでこのカスタム Floodlight 変数に使用される列名です。列名は、BigQuery の列名形式の要件に従う必要があります。
- (省略可)削除されたエンティティと指標を転送対象として含めるには、
include_removed_entities
を設定します。
- (省略可)サポートされている一部のテーブルのデータだけをインポートするには
data_source は、データソース(
doubleclick_search
)です。
たとえば、次のコマンドは、広告主 ID 123
、代理店 ID 123
、ターゲット データセット mydataset
を使用して、My Transfer
という名前の検索広告の転送を作成します。この転送はデフォルトのプロジェクトで作成されます。
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"agency_id":"123", "advertiser_id":"123","include_removed_entities":"true"}' \
--data_source=doubleclick_search
コマンドの初回実行時に、次のようなメッセージが表示されます。
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
メッセージの指示に従って、認証コードをコマンドラインに貼り付けます。
API
projects.locations.transferConfigs.create
メソッドを使用して、TransferConfig
リソースのインスタンスを指定します。
検索広告 360 の転送を手動でトリガーする
検索広告 360 の転送を手動でトリガーする場合、マッチテーブルのスナップショットが 1 日に 1 回取得され、最新の実行日のパーティションに保存されます。手動転送をスケジュールすると、次のテーブルのマッチテーブル スナップショットは更新されません。
- Account
- Ad
- Advertiser
- AdGroup
- AdGroupTarget
- BidStrategy
- Campaign
- CampaignTarget
- FeedItem
- FloodlightActivity
- Keyword
- NegativeAdGroupKeyword
- NegativeAdGroupTarget
- NegativeCampaignKeyword
- NegativeCampaignTarget
- ProductAdvertised
- ProductGroup
- ProductLeadAndCrossSellFloodlightStats
- 動画
- Placement
- 動画
検索広告 360 の転送設定のトラブルシューティング
転送を設定する際に問題が発生した場合は、BigQuery Data Transfer Service 転送設定のトラブルシューティングをご覧ください。
データに対するクエリを実行する
データが BigQuery Data Transfer Service に転送されると、取り込み時間パーティション分割テーブルにそのデータが書き込まれます。詳細については、パーティション分割テーブルの概要をご覧ください。
自動生成されたビューを使用せずに、テーブルでクエリを直接実行する場合は、そのクエリで _PARTITIONTIME
疑似列を使用する必要があります。詳細については、パーティション分割テーブルのクエリをご覧ください。
発生しうる割り当ての問題
Google Search Ads 360 API は、Google プロジェクトで 1 日に送信できるリクエストの数に割り当てを適用します。BigQuery Data Transfer Service と他のサービスに 1 つのプロジェクトを使用している場合、両方のサービスが割り当てを共有します。このため、どちらのサービスでも割り当て上限に達する可能性があります。
この発生しうる問題を回避して既存のワークフローに影響を与えないようにするには、次のオプションを検討してください。
BigQuery Data Transfer Service 用に別個のプロジェクトを設定します。
プロジェクト間のテーブル結合の例:
#standardSQL select count(a.item1) from (select item1, item2 from
project-A.data_set_a.table_name_a
) a inner join (select item3, item4 fromproject-B.data_set_b.table_name_b
) b on a.item1 = b.item3検索広告 360 のサポートにお問い合わせのうえ、追加の割り当てをリクエストします。詳細については、割り当ての追加リクエストをご覧ください。