Copia de datos de Google Ads con Azure Data Factory o Synapse Analytics
SE APLICA A: Azure Data Factory Azure Synapse Analytics
Sugerencia
Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.
En este artículo, se explica cómo usar la actividad de copia en una canalización de Azure Data Factory o Synapse Analytics para copiar datos de Google Ads. El documento se basa en el artículo de introducción a la actividad de copia que describe información general de la actividad de copia.
Importante
Por favor, actualice la versión del controlador de Google Ads antes del 18 de febrero de 2024. En caso de no hacerlo, la conexión comenzará a producir un error debido a la entrada en desuso del controlador heredado.
Funcionalidades admitidas
Este conector de Google Ads es compatible con las siguientes funcionalidades:
Funcionalidades admitidas | IR |
---|---|
Actividad de copia (origen/-) | ① ② |
Actividad de búsqueda | ① ② |
① Azure Integration Runtime ② Entorno de ejecución de integración autohospedado
Para obtener una lista de los almacenes de datos que se admiten como orígenes y receptores, consulte la tabla de almacenes de datos admitidos.
El servicio proporciona un controlador integrado para habilitar la conectividad. Por lo tanto, no es necesario instalar manualmente ningún controlador mediante este conector.
Introducción
Para realizar la actividad de copia con una canalización, puede usar una de los siguientes herramientas o SDK:
- La herramienta Copiar datos
- Azure Portal
- El SDK de .NET
- El SDK de Python
- Azure PowerShell
- API REST
- La plantilla de Azure Resource Manager
Creación de un servicio vinculado a Google Ads mediante la interfaz de usuario
Siga estos pasos para crear un servicio vinculado a Google Ads en la interfaz de usuario de Azure Portal.
Vaya a la pestaña "Administrar" de su área de trabajo de Azure Data Factory o Synapse y seleccione "Servicios vinculados"; a continuación, haga clic en "Nuevo":
Busque Google Ads y seleccione el conector de Google Ads.
Configure los detalles del servicio, pruebe la conexión y cree el nuevo servicio vinculado.
Detalles de configuración del conector
En las secciones siguientes, se proporcionan detalles sobre las propiedades que se usan para definir entidades de Data Factory específicas para el conector Google Ads.
Propiedades del servicio vinculado
Las propiedades siguientes son compatibles con el servicio vinculado de Google Ads:
Propiedad | Descripción | Obligatorio |
---|---|---|
type | La propiedad type debe establecerse en: GoogleAdWords | Sí |
googleAdsApiVersion | Versión de la API de Google Ads que usa al seleccionar la versión del controlador recomendada. Puede consultar este artículo para obtener información sobre la versión de la API. | Sí |
clientCustomerID | El identificador de cliente del cliente de la cuenta de Ads para la que quiere capturar datos de informes. | Sí |
loginCustomerID | Identificador de cliente de la cuenta de administrador de Google Ads mediante el cual desea capturar los datos del informe de un cliente específico. | No |
developerToken | Token de desarrollador asociado a la cuenta de administrador que usó para conceder acceso a la API de Ads. Puede elegir marcar este campo como SecureString para almacenarlo de forma segura o almacenar la contraseña en Azure Key Vault y permitir que la actividad de copia incorpore los cambios desde allí al realizar la copia de datos. Obtenga más información sobre el Almacenamiento de credenciales en Key Vault. | Sí |
authenticationType | Mecanismo de autenticación OAuth 2.0 que se usa para autenticar. Los valores permitidos son: ServiceAuthentication y UserAuthentication. ServiceAuthentication solo puede utilizarse en IR autohospedados. |
Sí |
Para UserAuthentication: | ||
refreshToken | Token de actualización obtenido de Google para autorizar el acceso a Ads para UserAuthentication. Puede elegir marcar este campo como SecureString para almacenarlo de forma segura o almacenar la contraseña en Azure Key Vault y permitir que la actividad de copia incorpore los cambios desde allí al realizar la copia de datos. Obtenga más información sobre el Almacenamiento de credenciales en Key Vault. | No |
clientId | El identificador de cliente de la aplicación de Google que se ha usado para adquirir el token de actualización. Puede elegir marcar este campo como SecureString para almacenarlo de forma segura o almacenar la contraseña en Azure Key Vault y permitir que la actividad de copia incorpore los cambios desde allí al realizar la copia de datos. Obtenga más información sobre el Almacenamiento de credenciales en Key Vault. | No |
clientSecret | El secreto de cliente de la aplicación de Google que se ha usado para adquirir el token de actualización. Puede elegir marcar este campo como SecureString para almacenarlo de forma segura o almacenar la contraseña en Azure Key Vault y permitir que la actividad de copia incorpore los cambios desde allí al realizar la copia de datos. Obtenga más información sobre el Almacenamiento de credenciales en Key Vault. | No |
Para ServiceAuthentication: | ||
Correo electrónico | Id. de correo electrónico de la cuenta de servicio usado para ServiceAuthentication y que solo puede utilizarse en IR autohospedados. | No |
privateKey | Clave privada del servicio que se usa para ServiceAuthentication para la versión recomendada del controlador y solo se puede usar en IR autohospedado. Puede elegir marcar este campo como SecureString para almacenarlo de forma segura o almacenar la contraseña en Azure Key Vault y permitir que la actividad de copia incorpore los cambios desde allí al realizar la copia de datos. Obtenga más información sobre el Almacenamiento de credenciales en Key Vault. | No |
Para ServiceAuthentication con la versión del controlador heredada: | ||
Correo electrónico | Id. de correo electrónico de la cuenta de servicio usado para ServiceAuthentication y que solo puede utilizarse en IR autohospedados. | No |
keyFilePath | Ruta de acceso completa al archivo de clave .p12 o .json que se usa para autenticar la dirección de correo electrónico de la cuenta de servicio y que solo puede utilizarse en IR autohospedados. |
No |
trustedCertPath | Ruta de acceso completa del archivo .pem que contiene certificados de CA de confianza para comprobar el servidor al conectarse a través de TLS. Esta propiedad solo puede establecerse al utilizar TLS en IR autohospedados. El valor predeterminado es el archivo cacerts.pem instalado con el IR. | No |
useSystemTrustStore | Especifica si se utiliza un certificado de CA del almacén de confianza del sistema o de un archivo PEM especificado. El valor predeterminado es false. | No |
Ejemplo:
{
"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"
}
}
}
Propiedades del conjunto de datos
Si desea ver una lista completa de las secciones y propiedades disponibles para definir conjuntos de datos, consulte el artículo sobre conjuntos de datos. En esta sección, se proporciona una lista de las propiedades compatibles con el conjunto de datos de Google Ads.
Para copiar datos de Google Ads, establezca la propiedad type del conjunto de datos en GoogleAdWordsObject. Se admiten las siguientes propiedades:
Propiedad | Descripción | Obligatorio |
---|---|---|
type | La propiedad type del conjunto de datos debe establecerse en: GoogleAdWordsObject | Sí |
tableName | Nombre de la tabla. Especifique esta propiedad cuando use la versión del controlador heredada. | No (si se especifica "query" en el origen de la actividad) |
Ejemplo
{
"name": "GoogleAdsDataset",
"properties": {
"type": "GoogleAdWordsObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<GoogleAds linked service name>",
"type": "LinkedServiceReference"
}
}
}
Propiedades de la actividad de copia
Si desea ver una lista completa de las secciones y propiedades disponibles para definir actividades, consulte el artículo sobre canalizaciones. En esta sección, se proporciona una lista de las propiedades compatibles con el origen de Google Ads.
Google Ads como origen
Para copiar datos de Google Ads, establezca el tipo de origen de la actividad de copia en GoogleAdWordsSource. Se admiten las siguientes propiedades en la sección source de la actividad de copia:
Propiedad | Descripción | Obligatorio |
---|---|---|
type | La propiedad type del origen de la actividad de copia debe establecerse en: GoogleAdWordsObject | Sí |
consulta | Utilice la consulta GAQL para leer los datos. Por ejemplo: SELECT campaign.id FROM campaign . |
No (si se especifica "tableName" en el conjunto de datos) |
Ejemplo:
"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>"
}
}
}
]
Propiedades de la actividad de búsqueda
Para obtener información detallada sobre las propiedades, consulte Actividad de búsqueda.
Actualización de la versión del controlador de Google Ads
Para actualizar la versión del controlador de Google Ads, debe actualizar el servicio vinculado y aprender a migrar de SQL al lenguaje de consulta de Google Ads (GAQL).
Actualización de la configuración del servicio vinculado
En la página Editar servicio vinculado, seleccione Recomendado en Versión del controlador y configure el servicio vinculado haciendo referencia a las propiedades del servicio vinculado.
Migración de SQL a GAQL
Convierta las instrucciones de consulta y los nombres de campo al migrar de SQL a GAQL.
Instrucciones de consulta
Si usa una consulta SQL en el origen de la actividad de copia o en la actividad de búsqueda que hace referencia al servicio vinculado heredado de Google Ads, debe convertirla a una consulta GAQL.
A diferencia de SQL, la consulta en GAQL se compone de seis tipos de cláusulas:
SELECT
FROM
WHERE
ORDER BY
LIMIT
PARAMETERS
Vaya a Gramática del lenguaje de consulta de Google Ads para obtener una introducción a GAQL.
Tome la siguiente instrucción SQL como ejemplo:
SELECT *|FieldName FROM ResourceName WHERE FieldName Operator Value
Puede seguir las instrucciones que aparecen a continuación para convertir la instrucción SQL en la instrucción GAQL correspondiente:
- Si se usa
*
(asterisco) después de la cláusulaSELECT
, debe especificar todos los campos necesarios en lugar del asterisco, ya que GAQL no admiteSELECT *
. Vaya a este artículo para ver todos los campos seleccionables del recurso específico. - Si se usa el nombre del campo después de la cláusula
SELECT
, debe convertir el nombre en el nombre de campo correspondiente en GAQL, ya que tienen convenciones de nomenclatura diferentes. Por ejemplo, el nombre de campocampaign_id
en la instrucción de consulta SQL se debe convertir encampaign.id
en GAQL. Consulte Nombre de campo para obtener más información sobre la conversión de nombres de campo. - El nombre del recurso se puede dejar tal cual, a menos que el uso de mayúsculas y minúsculas sea incoherente con lo que se especifica aquí.
- La cláusula
WHERE
se debe actualizar según la gramática de GAQL, ya que los operadores admitidos por GAQL no son coherentes con SQL y el nombre de campo también se debe convertir como se describe en el segundo punto.
Estas son dos herramientas muy útiles que ofrece Google y son muy recomendables al crear las instrucciones de consulta GAQL correspondientes:
Nombre del campo
El nombre de campo usado en SQL no está alineado con GAQL. También debe aprender las reglas de conversión de nombres de campo en SQL a nombres de campo en GAQL. La regla de conversión se puede resumir de la siguiente manera:
Si el nombre del campo pertenece a un recurso, el carácter de subrayado (
_
) en SQL se cambiará a un punto (.
) en GAQL. Y para las palabras que hay entre el punto, la instrucción de tipo camelCase empleada en SQL se cambiará a palabras independientes con caracteres de subrayado agregados. La primera cadena de tipo PascalCase en SQL se cambiará al nombre de recurso correspondiente en GAQL.Si el nombre del campo pertenece a segmentos o métricas, se debe agregar el prefijo
segments.
ometrics.
en GAQL y, a continuación, seguir la misma regla que se describe en el primer punto para convertir el nombre.
Estos son ejemplos específicos de la conversión del nombre de campo:
Category | Nombres de campo en SQL | Nombres de campo en GAQL |
---|---|---|
Campos de recursos | Campaign_startDate |
campaign.start_date |
Campos de recursos | Customer_conversionTrackingSetting_conversionTrackingStatus |
customer.conversion_tracking_setting.conversion_tracking_status |
Segmentos | DayOfWeek |
segments.day_of_week |
Métricas | VideoViews |
metrics.video_views |
Diferencias entre Google Ads con la versión recomendada del controlador y la versión heredada del controlador
En la tabla siguiente se muestran las diferencias de características entre Google Ads con la versión recomendada y heredada del controlador.
Versión recomendada del controlador | Versión heredada del controlador |
---|---|
Se admite la especificación de la versión de la API de Google Ads. | No se admite la especificación de la versión de la API de Google Ads. |
ServiceAuthentication admite dos propiedades: • Correo electrónico • privateKey |
ServiceAuthentication admite cuatro propiedades: • Correo electrónico • keyFilePath • trustedCertPath • useSystemTrustStore |
No se admite la selección de una tabla en un conjunto de datos. | Compatibilidad con la selección de una tabla en un conjunto de datos y la consulta de la tabla en las actividades de copia. |
Compatibilidad con la sintaxis GAQL como lenguaje de consulta. | Admite la sintaxis SQL como lenguaje de consulta. |
Los nombres de columna de salida son los mismos que los nombres de campo definidos en Google Ads. | Los nombres de columna de salida no coinciden con los nombres de campo definidos en Google Ads. |
Se utilizan las siguientes correspondencias entre los tipos de datos de Google Ads y los tipos de datos provisionales utilizados internamente por el servicio. float -> float int32 -> int int64 -> long |
Se utilizan las siguientes correspondencias entre los tipos de datos de Google Ads y los tipos de datos provisionales utilizados internamente por el servicio. float -> cadena int32 -> cadena int64 -> cadena |
Actualización del conector de Google AdWords al conector de Google Ads
Actualice el servicio vinculado de Google AdWords al servicio vinculado de Google Ads más reciente siguiendo estos pasos:
Seleccione Recomendado como versión del controlador para crear un nuevo servicio vinculado de Google Ads y configúrelo haciendo referencia a las propiedades del servicio vinculado.
Actualice las canalizaciones que hacen referencia al servicio vinculado heredado de Google AdWords. Tenga en cuenta que el servicio vinculado de Google Ads solo admite el uso de consultas para copiar datos, por lo que:
Si la canalización recupera directamente datos del informe de Google AdWords, busque el nombre de recurso correspondiente de Google Ads en la tabla siguiente y use esta herramienta para crear la consulta.
Informe de Google AdWords Recurso de Google Ads ACCOUNT_PERFORMANCE_REPORT cliente 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 campaña 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 Ya no está disponible en la API de Google Ads. URL_PERFORMANCE_REPORT detail_placement_view USER_AD_DISTANCE_REPORT distance_view VIDEO_PERFORMANCE_REPORT video Si la canalización usa una consulta para recuperar datos de Google AdWords, use la herramienta de migración de consultas para traducir de AWQL (lenguaje de consulta de AdWords) a GAQL (lenguaje de consulta de Google Ads).
Tenga en cuenta que hay ciertas limitaciones con esta actualización:
- No todos los tipos de informe de AWQL se admiten en GAQL.
- No todas las consultas AWQL se traducen de forma limpia a consultas GAQL.
Contenido relacionado
Para obtener una lista de almacenes de datos que la actividad de copia admite como orígenes y receptores, vea Almacenes de datos que se admiten.