Копирование данных из Google Ads с помощью Фабрика данных Azure или Synapse Analytics

Область применения:Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

В этой статье описывается, как использовать действие копирования в конвейере Фабрика данных Azure или Synapse Analytics для копирования данных из Google Ads. Это продолжение статьи об обзоре действия копирования, в которой представлены общие сведения о действии копирования.

Важно!

Пожалуйста, обновите версию драйвера Google Ads до 18 февраля 2024 года. В противном случае подключение завершится ошибкой из-за нерекомендуемого драйвера прежних версий.

Поддерживаемые возможности

Этот соединитель Google Ads поддерживается для следующих возможностей:

Поддерживаемые возможности IR
Действие копирования (источник/-) (1) (2)
Действие поиска (1) (2)

① Среда выполнения интеграции Azure ② Локальная среда выполнения интеграции

Список хранилищ данных, которые поддерживаются в качестве источников/приемников, см. в таблице Поддерживаемые хранилища данных.

Служба предоставляет встроенный драйвер для обеспечения подключения, поэтому вам не нужно вручную устанавливать какой-либо драйвер с помощью этого соединителя.

Начало работы

Чтобы выполнить действие копирования с конвейером, можно воспользоваться одним из приведенных ниже средств или пакетов SDK:

Создание связанной службы в Google Ads с помощью пользовательского интерфейса

Выполните следующие действия, чтобы создать связанную службу с Google Ads в пользовательском интерфейсе портал Azure.

  1. Перейдите на вкладку "Управление" в рабочей области Фабрики данных Azure или Synapse и выберите "Связанные службы", после чего нажмите "Создать":

  2. Найдите Google Ads и выберите соединитель Google Ads.

    Screenshot of the Google Ads connector.

  3. Настройте сведения о службе, проверьте подключение и создайте связанную службу.

    Screenshot of linked service configuration for Google Ads.

Сведения о конфигурации соединителя

В следующих разделах содержатся сведения о свойствах, которые используются для определения сущностей фабрики данных, относящихся к соединителю Google Ads.

Свойства связанной службы

Следующие свойства поддерживаются для связанной службы Google Ads:

Свойство Описание: Обязательное поле
type Для свойства type необходимо задать значение GoogleAdWords. Да
googleAdsApiVersion Версия API Google Ads, используемая при выборе рекомендуемой версии драйвера. См. эту статью для сведений о версии API. Да
clientCustomerID Идентификатор клиента учетной записи Рекламы, для которой требуется получить данные отчета. Да
loginCustomerID Идентификатор клиента учетной записи менеджера Google Ads, с помощью которой требуется получить данные отчета о конкретном клиенте. No
developerToken Маркер разработчика, связанный с учетной записью руководителя, используемой для предоставления доступа к API рекламы. Вы можете обозначить это поле как SecureString, чтобы безопасно хранить его, или сохранить пароль в Azure Key Vault и передавать его оттуда в действие копирования при фактическом копировании данных. Подробнее это описано в статье о хранении учетных данных в Key Vault. Да
authenticationType Механизм OAuth 2.0 для аутентификации.
Допустимые значения: ServiceAuthentication, UserAuthentication.
ServiceAuthentication может использоваться только в локальных IR.
Да
Для userAuthentication:
refreshtoken Маркер обновления, полученный от Google для авторизации доступа к Рекламе для UserAuthentication. Вы можете обозначить это поле как SecureString, чтобы безопасно хранить его, или сохранить пароль в Azure Key Vault и передавать его оттуда в действие копирования при фактическом копировании данных. Подробнее это описано в статье о хранении учетных данных в Key Vault. No
clientId Идентификатор клиента приложения Google, используемый для получения маркера обновления. Вы можете обозначить это поле как SecureString, чтобы безопасно хранить его, или сохранить пароль в Azure Key Vault и передавать его оттуда в действие копирования при фактическом копировании данных. Подробнее это описано в статье о хранении учетных данных в Key Vault. No
clientSecret Секрет клиента приложения Google, используемый для получения токена обновления. Вы можете обозначить это поле как SecureString, чтобы безопасно хранить его, или сохранить пароль в Azure Key Vault и передавать его оттуда в действие копирования при фактическом копировании данных. Подробнее это описано в статье о хранении учетных данных в Key Vault. No
Для ServiceAuthentication:
эл. почта Идентификатор электронной почты учетной записи службы, используемый для ServiceAuthentication. Может использоваться только в резидентных IR. No
privateKey Закрытый ключ службы, используемый для serviceAuthentication для рекомендуемой версии драйвера и может использоваться только в локальной среде IR. Вы можете обозначить это поле как SecureString, чтобы безопасно хранить его, или сохранить пароль в Azure Key Vault и передавать его оттуда в действие копирования при фактическом копировании данных. Подробнее это описано в статье о хранении учетных данных в Key Vault. No
Для ServiceAuthentication с использованием устаревшей версии драйвера:
эл. почта Идентификатор электронной почты учетной записи службы, используемый для ServiceAuthentication. Может использоваться только в резидентных IR. No
keyFilePath Полный путь к файлу ключа .p12 или .json, используемый для аутентификации адреса электронной почты учетной записи службы, также может использоваться только в локальной среде IR. No
trustedCertPath Полный путь к PEM-файлу, который содержит сертификаты доверенного ЦС для проверки сервера при подключении по протоколу TLS. Это свойство можно установить только при использовании TLS в локальных средах выполнения интеграции. Значением по умолчанию является файл cacerts.pem, который устанавливается вместе с IR. No
useSystemTrustStore Указывает, следует ли использовать сертификат ЦС из доверенного хранилища системы или из указанного PEM-файла. По умолчанию используется значение 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 Свойство type (Тип) для набора данных должно иметь значение: GoogleAdWordsObject Да
tableName Имя таблицы. Укажите это свойство при использовании устаревшей версии драйвера. Нет (если свойство query указано в источнике действия)

Пример

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

Свойства действия копирования

Полный список разделов и свойств, используемых для определения действий, см. в статье Конвейеры и действия в фабрике данных Azure. В этом разделе представлен список свойств, поддерживаемых источником Google Ads.

Чтобы скопировать данные из Google Ads, задайте тип источника в действии копирования в GoogleAdWordsSource. В разделе source действия копирования поддерживаются следующие свойства:

Свойство Описание: Обязательное поле
type Для свойства type источника действия копирования необходимо задать значение GoogleAdWordsSource. Да
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.

Инструкции запросов

Если вы используете SQL-запрос в источнике действия копирования или действии подстановки, ссылающейся на устаревшую связанную службу Google Ads, необходимо обновить их до 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, так как они имеют разные соглашения об именовании. Например, имя campaign_id поля в инструкции SQL-запроса должно быть преобразовано campaign.id в GAQL. Дополнительные сведения о преобразовании имен полей см. в разделе "Имя поля".
  3. Имя ресурса можно оставить, так как оно не является несогласованным с указанным здесь.
  4. WHEREпредложение должно быть обновлено в соответствии с грамматикой GAQL, так как операторы, поддерживаемые GAQL, не соответствуют SQL, а имя поля также должно быть преобразовано, как описано во второй точке.

Ниже приведены два очень полезных инструмента, предлагаемых Google, и они настоятельно рекомендуется при создании соответствующих инструкций запросов GAQL:

Имя поля

Имя поля, используемое в SQL, не соответствует GAQL. Кроме того, необходимо узнать правила преобразования из имен полей в SQL в имена полей в имена полей в GAQL. Правило преобразования можно свести следующим образом:

  • Если имя поля принадлежит ресурсу, символ подчеркивания (_) в SQL будет изменен на точку (.) в GAQL. И для слов между точкой оператор типа верблюдьего Регистра, используемого в SQL, будет изменен на автономные слова с добавленными подчеркиваниями между ними. Первая строка типа PascalCase в SQL будет изменена на соответствующее имя ресурса в GAQL.

  • Если имя поля принадлежит сегментам или метрикам, префикс segments. или metrics. следует добавить в GAQL, то следуйте тому же правилу, как описано в первой точке, чтобы преобразовать имя.

Ниже приведены конкретные примеры преобразования имени поля:

Категория Имена полей в SQL Имена полей в GAQL
Поля ресурсов Campaign_startDate campaign.start_date
Поля ресурсов Customer_conversionTrackingSetting_conversionTrackingStatus customer.conversion_tracking_setting.conversion_tracking_status
Segments 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_ключевое слово_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 ключевое слово_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 Больше не доступен в API Google Ads.
      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. Не все типы отчетов из AWQL поддерживаются в GAQL.
    2. Не все запросы AWQL претворяются в запросы GAQL.

Список хранилищ данных, которые поддерживаются в качестве источников и приемников для действия Copy, приведен в таблице Поддерживаемые хранилища данных и форматы.