與 Google Ads 整合
本頁面說明必要設定,可將 Google Ads 的資料做為 Cortex Framework Data Foundation 行銷工作負載的資料來源。
Google Ads 是一個線上廣告平台,可讓商家在各種 Google 資源上宣傳產品或服務。Cortex Framework 會整合 Google Ads 資料和其他行銷管道,全面分析資料,並運用 AI 提升廣告活動成效。
下圖說明如何透過 Cortex Framework Data Foundation 的行銷工作負載取得 Google Ads 資料:
設定檔
config.json
檔案會設定從任何資料來源 (包括 Google Ads) 移轉資料所需的設定。這個檔案包含下列 Google Ads 參數:
"marketing": {
"deployGoogleAds": true,
"GoogleAds": {
"deployCDC": true,
"lookbackDays": 180,
"datasets": {
"cdc": "",
"raw": "",
"reporting": "REPORTING_GoogleAds"
}
}
}
下表說明各個 Google Ads 行銷參數的值:
參數 | 意義 | 預設值 | 說明 |
marketing.deployGoogleAds
|
部署 Google Ads | true
|
執行 Google Ads 資料來源的部署作業。 |
marketing.GoogleAds.deployCDC
|
為 Google Ads 部署 CDC | true
|
產生 Google Ads CDC 處理指令碼,在 Cloud Composer 中以 DAG 形式執行。 |
marketing.GoogleAds.lookbackDays
|
Google Ads 的回溯天數 | 180
|
開始從 Google Ads API 擷取資料的天數。 |
marketing.GoogleAds.datasets.cdc
|
Google Ads 適用的 CDC 資料集 | Google Ads 的 CDC 資料集。 | |
marketing.GoogleAds.datasets.raw
|
Google Ads 原始資料集 | Google Ads 的原始資料集。 | |
marketing.GoogleAds.datasets.reporting
|
Google Ads 報表資料集 | "REPORTING_GoogleAds"
|
Google Ads 的報表資料集。 |
資料模型
本節將透過實體關係圖 (ERD) 說明 Google Ads 資料模型。
基本檢視畫面
這些是 ERD 中的藍色物件,也是 CDC 資料表上的檢視畫面,除了部分資料欄名稱別名外,沒有任何轉換。請參閱src/marketing/src/GoogleAds/src/reporting/ddls
中的指令碼。
報表資料檢視
這些是 ERD 中的綠色物件,也是包含匯總指標的報表檢視畫面。請參閱src/marketing/src/GoogleAds/src/reporting/ddls
中的指令碼。
API 連線
Cortex Framework 擷取範本會使用 Google Ads API,從 Google Ads 擷取報表屬性和指標。目前的 Cortex Framework 範本使用 Google Ads API 17.1 版。請注意 Google Ads API 的限制:
- 每日基本存取作業:15000 (含有有效
next_page_token
的分頁要求不計入)。 - 每頁最多可顯示的資料列數:10000 列。
- 建議的預設參數:每頁大小等於每頁 10000 列。
如要進一步瞭解 API 連線,請參閱 Google Ads API 說明文件。
帳戶驗證
如要設定帳戶驗證,請按照下列步驟操作:
- 在Google Cloud 控制台中,依序點選「導覽選單」>「API 和服務」>「憑證」>「建立憑證」。
建立具有下列特徵的 OAuth 用戶端 ID 憑證。 詳情請參閱「使用 OAuth 2.0 存取 Google API」。
Application type: "Web Application" Name: CHOSEN_NAME #(For example,"Cortex Authentication Client"). Authorized redirect URIs: http://127.0.0.1
將
CHOSEN_NAME
替換為 OAuth 用戶端 ID 憑證帳戶的所選名稱。設定憑證後,請儲存
Client ID
和Client secret
。 稍後會需要用到。使用 OAuth 2.0 存取 Google API 產生新權杖。Cortex Data Foundation 會自動偵測並擷取所有客戶 (帳戶) 的資料,這些客戶可透過用於產生權杖的憑證存取。
使用 Secret Manager 建立密鑰:
- 在 Google Cloud 控制台中,按一下「Secret Manager」。
- 使用下列格式建立名為
cortex-framework-google-ads-yaml
的密鑰,並根據您的設定變更值:
{"developer_token": "DEVELOPER_TOKEN_VALUE", "refresh_token": "REFRESH_TOKEN_VALUE", "client_id": "CLIENT_ID_VALUE", "client_secret": "CLIENT_SECRET_VALUE", "use_proto_plus": False}
更改下列內容:
DEVELOPER_TOKEN_VALUE
,並使用 Google Ads 帳戶中提供的開發人員權杖值。REFRESH_TOKEN_VALUE
換成步驟 4 中取得的重新整理權杖值。CLIENT_ID_VALUE
替換為您在步驟 2 的 OAuth 設定中取得的用戶端 ID 值。CLIENT_SECRET_VALUE
,並在步驟 2 的 OAuth 設定中取得用戶端密鑰值。
資料更新間隔和延遲
一般來說,Cortex Framework 資料來源的資料更新頻率取決於上游連線允許的頻率,以及 DAG 的執行頻率。調整 DAG 執行頻率,以配合上游頻率、資源限制和業務需求。
使用 Google Ads API 擷取的資料通常會有 3 小時以上的延遲。系統可能會在之後根據轉換和無效流量偵測結果調整收益。詳情請參閱 Google Ads 說明中心的「關於資料即時性」一文。
Cloud Composer 連線權限
在 Cloud Composer 中建立下列連線。詳情請參閱「管理 Airflow 連線」說明文件。
連線名稱 | 目的 |
googleads_raw_dataflow
|
Google Ads API > BigQuery 原始資料集。 |
googleads_cdc_bq
|
原始資料集 > CDC 資料集移轉。 |
googleads_reporting_bq
|
將 CDC 資料集轉移至報表資料集。 |
Cloud Composer 服務帳戶權限
將 Dataflow 權限授予 Cloud Composer 中使用的服務帳戶 (如googleads_raw_dataflow
連線中設定)。請參閱 Dataflow 說明文件中的操作說明。
內容攝入設定
透過 src/GoogleAds/config/ingestion_settings.yaml
檔案中的設定,控制 Source to Raw
和 Raw to CDC
資料管道。本節說明各資料管道的參數。
來源到原始資料表
本節說明 API 擷取的實體和方式。每個項目都對應一個 Google Ads 實體。根據這項設定,Cortex 會建立 Airflow DAG,執行 Dataflow 管道,並使用 Google Ads API 擷取資料。
下列參數可控制每個項目的 Source to Raw
設定:
參數 | 說明 |
load_frequency
|
這個實體的 DAG 從 Google Ads 擷取資料的頻率。如要進一步瞭解可能的值,請參閱 Airflow 說明文件。 |
api_name
|
API 資源名稱 (例如 customer )。 |
table_name
|
原始資料集中的資料表,用於儲存擷取的資料 (例如 customer )。 |
schema_file
|
src/table_schema 目錄中的結構定義檔案,可將 API 回應欄位對應至目的地資料表的資料欄名稱。 |
key
|
以逗號分隔的資料欄,這些資料欄會構成這個資料表的專屬記錄。 |
is_metrics_table
|
指出指定項目是否為指標實體 (在 Google Ads API 中)。由於這類表格的性質為匯總,系統會以稍微不同的方式處理。 |
partition_details
|
選用:如要根據效能考量分割這個表格,詳情請參閱「資料表分區」。 |
cluster_details
|
選用:如要根據成效考量,將這個表格叢集化,詳情請參閱「叢集設定」。 |
原始資料表到 CDC 資料表
本節說明哪些項目會控管資料從原始資料表移至 CDC 資料表的方式。每個項目都對應一個原始表格 (而原始表格又對應到前述的 Google Ads API 實體)。
下列參數可控制每個項目的 Raw to CDC
設定:
參數 | 說明 |
table_name
|
CDC 資料集中的資料表,用於儲存 CDC 轉換後的原始資料 (例如 customer )。 |
raw_table
|
已複製原始資料的資料表。 |
key
|
以逗號分隔的資料欄,可構成這個資料表的專屬記錄。 |
load_frequency
|
這個實體的 DAG 執行頻率,用於填入 CDC 資料表。如要進一步瞭解可能的值,請參閱 Airflow 說明文件。 |
schema_file
|
src/table_schema 目錄中的結構定義檔案,可將原始資料欄對應至 CDC 資料欄,以及 CDC 資料欄的資料類型。這與上一節中提及的結構定義檔案相同。
|
partition_details
|
選用:如要根據效能考量分割這個表格,詳情請參閱「資料表分區」。 |
cluster_details
|
選用:如要根據成效考量,將這個表格叢集化,詳情請參閱「叢集設定」。 |
報表設定
您可以使用報表設定檔 src/GoogleAds/config/reporting_settings.yaml
,設定及控管 Cortex 架構產生 Google Ads 最終報表層資料的方式。這個檔案會控管報表層 BigQuery 物件 (資料表、檢視區塊、函式或預存程序) 的產生方式。
詳情請參閱「自訂報表設定檔」。
後續步驟
- 如要進一步瞭解其他資料來源和工作負載,請參閱「資料來源和工作負載」一文。
- 如要進一步瞭解在正式環境中部署的步驟,請參閱 Cortex Framework Data Foundation 部署作業的必要條件。