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. Consulta 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 usará para conectarse a la API de Google Ads. Consulta el artículo sobre cómo 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 delcreateDisposition
especificado, 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_EMPTY
oWRITE_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_NEEDED
yCREATE_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:
latest
para 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-central1
CUSTOMER_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ón.GOOGLE_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:
latest
para 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-central1
CUSTOMER_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ón.GOOGLE_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.