La plantilla de Google Ads a BigQuery es un flujo de procesamiento por lotes que lee informes de Google Ads y los escribe en BigQuery.
Requisitos del flujo de procesamiento
- Los IDs de las cuentas de Google Ads que se van a usar.
- Consulta del lenguaje de consultas de Google Ads para obtener los datos.
- Credenciales de OAuth para la API de Google Ads.
Parámetros de plantilla
Parámetros obligatorios
- customerIds lista de IDs de cuentas de Google Ads que se usarán para ejecutar la consulta. Por ejemplo,
12345,67890. - query: la consulta que se va a usar para obtener los datos. Consulte el lenguaje de consulta de Google Ads (https://developers.google.com/google-ads/api/docs/query/overview). Por ejemplo,
SELECT campaign.id, campaign.name FROM campaign. - qpsPerWorker la frecuencia de solicitudes de consulta por segundo (CPS) que se enviarán a Google Ads. Divide las CPS por canalización deseadas entre el número máximo de trabajadores. No superes los límites por cuenta o por token de desarrollador. Consulte la sección sobre límites de frecuencia (https://developers.google.com/google-ads/api/docs/best-practices/rate-limits).
- googleAdsClientId: el ID de cliente de OAuth 2.0 que identifica la aplicación. Consulta el artículo sobre cómo crear un ID de cliente y un secreto de cliente (https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsClientSecret el secreto de cliente de OAuth 2.0 que corresponde al ID de cliente especificado. Consulta el artículo sobre cómo crear un ID de cliente y un secreto de cliente (https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsRefreshToken el token de actualización de OAuth 2.0 que se usa para conectarse a la API de Google Ads. Consulta la verificación en dos pasos (https://developers.google.com/google-ads/api/docs/oauth/2sv).
- googleAdsDeveloperToken el token de desarrollador de Google Ads que se debe usar para conectarse a la API de Google Ads. Consulte Obtener un token de desarrollador (https://developers.google.com/google-ads/api/docs/get-started/dev-token).
- outputTableSpec la ubicación de la tabla de salida de BigQuery en la que se escribirán los resultados. Por ejemplo,
<PROJECT_ID>:<DATASET_NAME>.<TABLE_NAME>.En función delcreateDispositionespecificado, la tabla de salida se puede crear automáticamente con el esquema Avro proporcionado por el usuario.
Parámetros opcionales
- loginCustomerId ID de una cuenta de administrador de Google Ads que se usará para acceder a los IDs de las cuentas. Por ejemplo,
12345. - bigQueryTableSchemaPath la ruta de Cloud Storage al archivo JSON del esquema de BigQuery. Si no se define este valor, el esquema se deduce del esquema Proto. Por ejemplo,
gs://MyBucket/bq_schema.json. - writeDisposition valor de WriteDisposition de BigQuery (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload). Por ejemplo,
WRITE_APPEND,WRITE_EMPTYoWRITE_TRUNCATE. El valor predeterminado esWRITE_APPEND. - createDisposition el valor de CreateDisposition de BigQuery (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload). Por ejemplo,
CREATE_IF_NEEDEDyCREATE_NEVER. El valor predeterminado esCREATE_IF_NEEDED.
Ejecutar la plantilla
Consola
- Ve a la página Crear tarea a partir de plantilla de Dataflow. Ir a Crear tarea a partir de plantilla
- En el campo Nombre de la tarea, introduce un nombre único.
- Opcional: En Endpoint regional, seleccione un valor en el menú desplegable. La región predeterminada es
us-central1.Para ver una lista de las regiones en las que puedes ejecutar una tarea de Dataflow, consulta Ubicaciones de Dataflow.
- En el menú desplegable Plantilla de flujo de datos, seleccione the Google Ads to BigQuery template.
- En los campos de parámetros proporcionados, introduzca los valores de los parámetros.
- Haz clic en Ejecutar trabajo.
gcloud
En tu shell o terminal, ejecuta la plantilla:
gcloud dataflow flex-template run JOB_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/flex/Google_Ads_to_BigQuery \ --project=PROJECT_ID \ --region=REGION_NAME \ --parameters \ customerIds=CUSTOMER_IDS,\ query=QUERY,\ qpsPerWorker=QPS_PER_WORKER,\ googleAdsClientId=GOOGLE_ADS_CLIENT_ID,\ googleAdsClientSecret=GOOGLE_ADS_CLIENT_SECRET,\ googleAdsRefreshToken=GOOGLE_ADS_REFRESH_TOKEN,\ googleAdsDeveloperToken=GOOGLE_ADS_DEVELOPER_TOKEN,\ outputTableSpec=OUTPUT_TABLE_SPEC,\
Haz los cambios siguientes:
JOB_NAME: un nombre de trabajo único que elijasVERSION: la versión de la plantilla que quieres usarPuedes usar los siguientes valores:
latestpara usar la última versión de la plantilla, que está disponible en la carpeta principal sin fecha del contenedor: gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00, para usar una versión específica de la plantilla, que se encuentra anidada en la carpeta principal correspondiente con la fecha en el bucket: gs://dataflow-templates-REGION_NAME/
REGION_NAME: la región en la que quieras desplegar tu trabajo de Dataflow. Por ejemplo,us-central1CUSTOMER_IDS: los IDs de las cuentas de Google AdsQUERY: la consulta del lenguaje de consulta de Google AdsQPS_PER_WORKER: la tasa de solicitudes de Google Ads obligatoria por trabajadorGOOGLE_ADS_CLIENT_ID: el ID de cliente de OAuth 2.0 que identifica la aplicaciónGOOGLE_ADS_CLIENT_SECRET: el secreto de cliente de OAuth 2.0 que corresponde al ID de cliente especificadoGOOGLE_ADS_REFRESH_TOKEN: el token de actualización de OAuth 2.0 que se usa para conectarse a la API de Google Ads.GOOGLE_ADS_DEVELOPER_TOKEN: el token de desarrollador de Google Ads que se usa para conectarse a la API de Google Ads.OUTPUT_TABLE_SPEC: la tabla de salida de BigQuery
API
Para ejecutar la plantilla mediante la API REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus ámbitos de autorización, consulta projects.templates.launch.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch { "launchParameter": { "jobName": "JOB_NAME", "parameters": { "customerIds": "CUSTOMER_IDS", "query": "QUERY", "qpsPerWorker": "QPS_PER_WORKER", "googleAdsClientId": "GOOGLE_ADS_CLIENT_ID", "googleAdsClientSecret": "GOOGLE_ADS_CLIENT_SECRET", "googleAdsRefreshToken": "GOOGLE_ADS_REFRESH_TOKEN", "googleAdsDeveloperToken": "GOOGLE_ADS_DEVELOPER_TOKEN", "outputTableSpec": "OUTPUT_TABLE_SPEC", }, "containerSpecGcsPath": "gs://dataflow-templates-LOCATION/VERSION/flex/Google_Ads_to_BigQuery", "environment": { "maxWorkers": "10" } } }
Haz los cambios siguientes:
PROJECT_ID: el ID del proyecto Google Cloud en el que quieres ejecutar la tarea de DataflowJOB_NAME: un nombre de trabajo único que elijasVERSION: la versión de la plantilla que quieres usarPuedes usar los siguientes valores:
latestpara usar la última versión de la plantilla, que está disponible en la carpeta principal sin fecha del contenedor: gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00, para usar una versión específica de la plantilla, que se encuentra anidada en la carpeta principal correspondiente con la fecha en el bucket: gs://dataflow-templates-REGION_NAME/
LOCATION: la región en la que quieras desplegar tu trabajo de Dataflow. Por ejemplo,us-central1CUSTOMER_IDS: los IDs de cuenta de Google AdsQUERY: la consulta del lenguaje de consulta de Google AdsQPS_PER_WORKER: la tasa de solicitudes de Google Ads obligatoria por trabajadorGOOGLE_ADS_CLIENT_ID: el ID de cliente de OAuth 2.0 que identifica la aplicaciónGOOGLE_ADS_CLIENT_SECRET: el secreto de cliente de OAuth 2.0 que corresponde al ID de cliente especificadoGOOGLE_ADS_REFRESH_TOKEN: el token de actualización de OAuth 2.0 que se usa para conectarse a la API de Google Ads.GOOGLE_ADS_DEVELOPER_TOKEN: el token de desarrollador de Google Ads que se usa para conectarse a la API de Google Ads.OUTPUT_TABLE_SPEC: la tabla de salida de BigQuery
Siguientes pasos
- Consulta información sobre las plantillas de Dataflow.
- Consulta la lista de plantillas proporcionadas por Google.