使用 Azure Data Factory 或 Synapse Analytics 從 Google Ads 複製數據

適用於: Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的單一分析解決方案。 Microsoft Fabric 涵蓋從數據移動到數據科學、即時分析、商業智慧和報告等所有專案。 瞭解如何 免費啟動新的試用版

本文概述如何使用 Azure Data Factory 或 Synapse Analytics 管線中的複製活動,從 Google Ads 複製數據。 它會以 複製活動概觀 一文為基礎,提供複製活動的一般概觀。

重要

請在 2024 年 2 月 18 日之前升級 Google Ads 驅動程式版本。 如果沒有,連線將會因為淘汰舊版驅動程式而開始失敗,併發生 錯誤

支援的功能

下列功能支援此 Google Ads 連接器:

支援的功能 IR
複製活動 (來源/-) (1) (2)
查閱活動 (1) (2)

(1) Azure 整合運行時間 (2) 自我裝載整合運行時間

如需支援作為來源/接收的數據存放區清單,請參閱 支持的數據存放區 數據表。

此服務提供內建驅動程式來啟用連線能力,因此您不需要使用此連接器手動安裝任何驅動程式。

開始使用

若要使用管線執行 複製活動,您可以使用下列其中一個工具或 SDK:

使用 UI 建立 Google Ads 的連結服務

使用下列步驟,在 Azure 入口網站 UI 中建立 Google Ads 的鏈接服務。

  1. 流覽至 Azure Data Factory 或 Synapse 工作區中的 [管理] 索引標籤,然後選取 [鏈接服務],然後按兩下 [新增]:

  2. 搜尋 Google Ads,然後選取 Google Ads 連接器。

    Screenshot of the Google Ads connector.

  3. 設定服務詳細數據、測試連線,並建立新的連結服務。

    Screenshot of linked service configuration for Google Ads.

連線 or 組態詳細數據

下列各節提供屬性的相關詳細數據,這些屬性是用來定義Google Ads連接器專屬的Data Factory實體。

鏈接的服務屬性

Google Ads 連結服務支援下列屬性:

屬性 描述 必要
type type 屬性必須設定為: GoogleAdWords Yes
googleAdsApiVersion 當您選取建議的驅動程式版本時,所使用的Google Ads API版本。 如需 API 版本資訊,請參閱這篇文章 Yes
clientCustomerID 您想要擷取報表數據的廣告帳戶客戶標識碼。 Yes
loginCustomerID 您想要透過該帳戶擷取特定客戶的報表資料之Google Ads管理員帳戶的客戶標識碼。 No
developerToken 與您用來授與廣告 API 存取權之管理員帳戶相關聯的開發人員令牌。 您可以選擇將此欄位標示為 SecureString 以安全地儲存,或將密碼儲存在 Azure 金鑰保存庫,並在執行數據複製時讓複製活動從該處提取 - 深入瞭解在 金鑰保存庫 中的市集認證。 Yes
authenticationType 用於驗證的 OAuth 2.0 驗證機制。
允許的值為: ServiceAuthenticationUserAuthentication
ServiceAuthentication 只能在自我裝載 IR 上使用。
Yes
針對 UserAuthentication
refreshToken 從 Google 取得的重新整理令牌,以授權存取 UserAuthentication 的廣告。 您可以選擇將此欄位標示為 SecureString 以安全地儲存,或將密碼儲存在 Azure 金鑰保存庫,並在執行數據複製時讓複製活動從該處提取 - 深入瞭解在 金鑰保存庫 中儲存認證。 No
clientId 用來取得重新整理令牌的 Google 應用程式的用戶端識別碼。 您可以選擇將此欄位標示為 SecureString 以安全地儲存,或將密碼儲存在 Azure 金鑰保存庫,並在執行數據複製時讓複製活動從該處提取 - 深入瞭解在 金鑰保存庫 中的市集認證。 No
clientSecret 用來取得重新整理令牌之 Google 應用程式的客戶端密碼。 您可以選擇將此欄位標示為 SecureString 以安全地儲存,或將密碼儲存在 Azure 金鑰保存庫,並在執行數據複製時讓複製活動從該處提取 - 深入瞭解在 金鑰保存庫 中的市集認證。 No
針對 ServiceAuthentication
電子郵件 服務帳戶電子郵件標識碼,用於 ServiceAuthentication,且只能在自我裝載 IR 上使用。 No
privateKey ServiceAuthentication 用於建議驅動程式版本的服務私鑰,而且只能在自我裝載 IR 上使用。 您可以選擇將此欄位標示為 SecureString 以安全地儲存,或將密碼儲存在 Azure 金鑰保存庫,並在執行數據複製時讓複製活動從該處提取 - 深入瞭解在 金鑰保存庫 中儲存認證。 No
針對使用舊版驅動程式的 ServiceAuthentication
電子郵件 服務帳戶電子郵件標識碼,用於 ServiceAuthentication,且只能在自我裝載 IR 上使用。 No
keyFilePath 用來驗證服務帳戶電子郵件位址且 .p12 只能在自我裝載 IR 上使用之 或 .json 金鑰檔案的完整路徑。 No
trustedCertPath .pem 檔案的完整路徑,其中包含信任的 CA 憑證,以在透過 TLS 連線時驗證伺服器。 只有在自我裝載 IR 上使用 TLS 時,才能設定此屬性。 默認值是隨 IR 一起安裝的 cacerts.pem 檔案。 No
useSystemTrustStore 指定是否要使用來自系統信任存放區或指定 PEM 檔案的 CA 憑證。 預設值為 false。 No

範例:

{
    "name": "GoogleAdsLinkedService",
    "properties": {
        "type": "GoogleAdWords",
        "typeProperties": {
            "clientCustomerID": "<clientCustomerID>",
            "loginCustomerID": "<loginCustomerID>",
            "developerToken": {
                "type": "SecureString",
                "value": "<developerToken>"
            },
            "authenticationType": "UserAuthentication",
            "refreshToken": {
                "type": "SecureString",
                "value": "<refreshToken>"
            },
            "clientId": {
                "type": "SecureString",
                "value": "<clientId>"
            },
            "clientSecret": {
                "type": "SecureString",
                "value": "<clientSecret>"
            },
            "googleAdsApiVersion": "v14"
        }
    }
}

資料集屬性

如需可用來定義資料集的完整區段和屬性清單,請參閱 數據集 一文。 本節提供Google Ads資料集所支援的屬性清單。

若要從Google Ads 複製數據,請將數據集的類型屬性設定為 GoogleAdWordsObject。 支援下列屬性:

屬性 描述 必要
type 數據集的類型屬性必須設定為: GoogleAdWordsObject Yes
tableName 資料表的名稱。 當您使用舊版驅動程式時,請指定此屬性。 否(如果已指定活動來源中的「查詢」)

範例

{
    "name": "GoogleAdsDataset",
    "properties": {
        "type": "GoogleAdWordsObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<GoogleAds linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

複製活動 屬性

如需可用來定義活動的區段和屬性的完整清單,請參閱 管線 一文。 本節提供Google Ads來源所支援的屬性清單。

若要從Google Ads 複製數據,請將複製活動中的來源類型設定為 GoogleAdWordsSource。 複製活動 來源 區段中支援下列屬性:

屬性 描述 必要
type 複製活動來源的類型屬性必須設定為: GoogleAdWordsSource Yes
query 使用 GAQL 查詢來讀取數據。 例如: SELECT campaign.id FROM campaign 否(如果已指定資料集中的 “tableName” )

範例:

"activities":[
    {
        "name": "CopyFromGoogleAds",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<GoogleAds input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "GoogleAdWordsSource",
                "query": "SELECT campaign.id FROM campaign"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

查閱活動屬性

若要瞭解屬性的詳細數據,請檢查 查閱活動

升級Google Ads驅動程式版本

若要升級 Google Ads 驅動程式版本,您需要更新連結的服務,並瞭解如何從 SQL 移轉至 Google Ads 查詢語言 (GAQL)。

更新連結的服務組態

在 [編輯鏈接服務] 頁面中,選取 [驅動程式版本] 底下的 [建議],並參考鏈接的服務屬性設定連結的服務。

從 SQL 遷移至 GAQL

從 SQL 移轉至 GAQL 時,將您的查詢語句和域名轉換成 GAQL。

查詢語句

如果您在複製活動來源或參照舊版 Google Ads 連結服務的查閱活動中使用 SQL 查詢,則必須將它們更新為 GAQL 查詢。

相較於 SQL,GAQL 中的查詢是由六種子句所組成:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT
  • PARAMETERS

移至 Google Ads 查詢語言文法 ,以取得 GAQL 的簡介。

以下列 SQL 語句為例:

SELECT *|FieldName FROM ResourceName WHERE FieldName Operator Value

您可以遵循下列指引,將 SQL 語句轉換成對應的 GAQL 語句:

  1. 如果在 * 子句之後 SELECT 使用 (星號),則您需要指定所有必要的欄位來取代星號,因為 GAQL 不支援 SELECT *。 移至本文,以查看特定資源中的所有可選取欄位。
  2. 如果在 子句之後 SELECT 使用功能變數名稱,則您必須將名稱轉換成 GAQL 中對應的功能變數名稱,因為它們有不同的命名慣例。 例如,SQL 查詢語句中的網域名稱 campaign_id 應該在 GAQL 中轉換成 campaign.id 。 如需域名轉換的詳細資訊,請參閱 功能變數名稱
  3. 除非資源名稱與此處指定的大小寫不一致,否則資源名稱可以保留為 。
  4. WHERE 子句應該根據 GAQL 文法 進行更新,因為 GAQL 支援的運算符與 SQL 不一致,而且功能變數名稱也應該如第二點所述來轉換。

以下是Google提供的兩個非常有用的工具,在建置對應的GAQL查詢語句時強烈建議使用:

欄位名稱

SQL 中使用的功能變數名稱與 GAQL 不一致。 您也需要瞭解從 SQL 中的網域名稱轉換成 GAQL 中的功能變數名稱的轉換規則。 轉換規則可以摘要如下:

  • 如果功能變數名稱屬於資源,SQL 中的底線 (_) 將會變更為 GAQL 中的點 (.)。 對於點之間的單字,SQL 中使用的 camelCase 類型語句將會變更為在 兩者之間新增底線的獨立單字。 SQL 中 PascalCase 類型的第一個字串將會變更為 GAQL 中的對應資源名稱。

  • 如果功能變數名稱屬於區段或計量,則前置 segments. 詞或 metrics. 應該新增在 GAQL 中,則遵循與第一個點中所述的相同規則來轉換名稱。

以下是網域名稱轉換的具體範例:

類別 SQL 中的功能變數名稱 GAQL 中的功能變數名稱
資源欄位 Campaign_startDate campaign.start_date
資源欄位 Customer_conversionTrackingSetting_conversionTrackingStatus customer.conversion_tracking_setting.conversion_tracking_status
區隔 DayOfWeek segments.day_of_week
計量 VideoViews metrics.video_views

將Google AdWords連接器升級至Google Ads連接器

遵循下列步驟,將您的 Google AdWords 鏈接服務升級至最新的 Google Ads 連結服務:

  1. 選取 [ 建議 ] 作為驅動程式版本,以建立新的Google Ads鏈接服務,並參考 [鏈接服務內容] 加以設定。

  2. 更新參考舊版Google AdWords連結服務的管線。 考慮到 Google Ads 連結服務僅支援使用查詢來複製資料,因此:

    1. 如果您的管線是直接從Google AdWords報表擷取數據,請在下表中找到對應的Google Ads資源名稱,並使用此工具來建置查詢。

      Google AdWords 報告 Google Ads 資源
      ACCOUNT_PERFORMANCE_REPORT 客戶
      AD_PERFORMANCE_REPORT ad_group_ad
      ADGROUP_PERFORMANCE_REPORT ad_group
      AGE_RANGE_PERFORMANCE_REPORT age_range_view
      AUDIENCE_PERFORMANCE_REPORT campaign_audience_view,ad_group_audience_view
      AUTOMATIC_PLACEMENTS_PERFORMANCE_REPORT group_placement_view
      BID_GOAL_PERFORMANCE_REPORT bidding_strategy
      BUDGET_PERFORMANCE_REPORT campaign_budget
      CALL_METRICS_CALL_DETAILS_REPORT call_view
      CAMPAIGN_AD_SCHEDULE_TARGET_REPORT ad_schedule_view
      CAMPAIGN_CRITERIA_REPORT campaign_criterion
      CAMPAIGN_PERFORMANCE_REPORT campaign
      CAMPAIGN_SHARED_SET_REPORT campaign_shared_set
      CAMPAIGN_LOCATION_TARGET_REPORT location_view
      CLICK_PERFORMANCE_REPORT click_view
      DISPLAY_KEYWORD_PERFORMANCE_REPORT display_keyword_view
      DISPLAY_TOPICS_PERFORMANCE_REPORT topic_view
      GENDER_PERFORMANCE_REPORT gender_view
      GEO_PERFORMANCE_REPORT geographic_view,user_location_view
      KEYWORDLESS_QUERY_REPORT dynamic_search_ads_search_term_view
      KEYWORDS_PERFORMANCE_REPORT keyword_view
      LABEL_REPORT label
      LANDING_PAGE_REPORT landing_page_view,expanded_landing_page_view
      PAID_ORGANIC_QUERY_REPORT paid_organic_search_term_view
      PARENTAL_STATUS_PERFORMANCE_REPORT parental_status_view
      PLACEHOLDER_FEED_ITEM_REPORT feed_item,feed_item_target
      PLACEHOLDER_REPORT feed_placeholder_view
      PLACEMENT_PERFORMANCE_REPORT managed_placement_view
      PRODUCT_PARTITION_REPORT product_group_view
      SEARCH_QUERY_PERFORMANCE_REPORT search_term_view
      SHARED_SET_CRITERIA_REPORT shared_criterion
      SHARED_SET_REPORT shared_set
      SHOPPING_PERFORMANCE_REPORT shopping_performance_view
      TOP_CONTENT_PERFORMANCE_REPORT Google Ads API 中已不再提供。
      URL_PERFORMANCE_REPORT detail_placement_view
      USER_AD_DISTANCE_REPORT distance_view
      VIDEO_PERFORMANCE_REPORT 影片
    2. 如果管線使用查詢從Google AdWords擷取數據,請使用 查詢移轉工具 將 AWQL (AdWords 查詢語言) 轉譯為 GAQL (Google Ads 查詢語言)。

  3. 請注意,此升級有某些限制:

    1. GAQL 不支援來自 AWQL 的所有報表類型。
    2. 並非所有 AWQL 查詢都會完全轉譯為 GAQL 查詢。

如需複製活動支援做為來源和接收的數據存放區清單,請參閱 支援的數據存放區