Google Ads to BigQuery 템플릿은 Google Ads 보고서를 읽고 BigQuery에 쓰는 일괄 파이프라인입니다.
파이프라인 요구사항
- 사용할 Google Ads 계정 ID입니다.
- 데이터를 가져올 Google Ads 쿼리 언어 쿼리입니다.
- Google Ads API의 OAuth 사용자 인증 정보입니다.
템플릿 매개변수
필수 매개변수
- customerIds: 쿼리를 실행하는 데 사용할 Google Ads 계정 ID 목록입니다. 예를 들면
12345,67890
입니다. - query: 데이터를 가져오는 데 사용할 쿼리입니다. Google Ads 쿼리 언어를 참고하세요 (https://developers.google.com/google-ads/api/docs/query/overview). 예를 들면
SELECT campaign.id, campaign.name FROM campaign
입니다. - qpsPerWorker: Google Ads에 제출할 초당 쿼리 요청 수 (QPS) 비율입니다. 원하는 파이프라인당 QPS를 최대 작업자 수로 나눕니다. 계정별 또는 개발자 토큰 한도를 초과하지 마세요. 비율 제한을 참조하세요(https://developers.google.com/google-ads/api/docs/best-practices/rate-limits).
- googleAdsClientId: 애플리케이션을 식별하는 OAuth 2.0 클라이언트 ID입니다. 클라이언트 ID 및 클라이언트 보안 비밀번호 만들기를 참조하세요(https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsClientSecret: 지정된 클라이언트 ID에 해당하는 OAuth 2.0 클라이언트 보안 비밀번호입니다. 클라이언트 ID 및 클라이언트 보안 비밀번호 만들기를 참조하세요(https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsRefreshToken: Google Ads API에 연결하는 데 사용할 OAuth 2.0 갱신 토큰입니다. 2단계 인증을 참조하세요(https://developers.google.com/google-ads/api/docs/oauth/2sv).
- googleAdsDeveloperToken: Google Ads API에 연결하는 데 사용할 Google Ads 개발자 토큰입니다. 개발자 토큰 가져오기(https://developers.google.com/google-ads/api/docs/get-started/dev-token)를 참조하세요.
- outputTableSpec: 출력을 작성할 BigQuery 출력 테이블 위치입니다. 예를 들면
<PROJECT_ID>:<DATASET_NAME>.<TABLE_NAME>
입니다. 지정된createDisposition
에 따라 사용자가 제공한 Avro 스키마를 사용하여 출력 테이블을 자동으로 만들 수 있습니다.
선택적 매개변수
- loginCustomerId: 계정 ID에 액세스하는 데 사용할 Google Ads 관리자 계정 ID입니다. 예를 들면
12345
입니다. - bigQueryTableSchemaPath: BigQuery 스키마 JSON 파일에 대한 Cloud Storage 경로입니다. 이 값이 설정되지 않으면 스키마가 Proto 스키마에서 추론됩니다. 예를 들면
gs://MyBucket/bq_schema.json
입니다. - writeDisposition: BigQuery WriteDisposition (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload) 값입니다. 예를 들면
WRITE_APPEND
,WRITE_EMPTY
,WRITE_TRUNCATE
입니다. 기본값은WRITE_APPEND
입니다. - createDisposition: BigQuery CreateDisposition (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload)입니다. 예를 들면
CREATE_IF_NEEDED
및CREATE_NEVER
입니다. 기본값은CREATE_IF_NEEDED
입니다.
템플릿 실행
콘솔
- Dataflow 템플릿에서 작업 만들기 페이지로 이동합니다. 템플릿에서 작업 만들기로 이동
- 작업 이름 필드에 고유한 작업 이름을 입력합니다.
- (선택사항): 리전 엔드포인트의 드롭다운 메뉴에서 값을 선택합니다. 기본 리전은
us-central1
입니다.Dataflow 작업을 실행할 수 있는 리전 목록은 Dataflow 위치를 참조하세요.
- Dataflow 템플릿 드롭다운 메뉴에서 the Google Ads to BigQuery template을 선택합니다.
- 제공된 매개변수 필드에 매개변수 값을 입력합니다.
- 작업 실행을 클릭합니다.
gcloud
셸 또는 터미널에서 템플릿을 실행합니다.
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,\
다음을 바꿉니다.
JOB_NAME
: 선택한 고유한 작업 이름VERSION
: 사용할 템플릿 버전다음 값을 사용할 수 있습니다.
latest
: 버킷의 날짜가 지정되지 않은 상위 폴더(gs://dataflow-templates-REGION_NAME/latest/)에서 사용할 수 있는 최신 버전의 템플릿을 사용합니다.- 버전 이름(예:
2023-09-12-00_RC00
): 버킷의 날짜가 지정된 해당 상위 폴더(gs://dataflow-templates-REGION_NAME/)에 중첩되어 있는 특정 버전의 템플릿을 사용합니다.
REGION_NAME
: Dataflow 작업을 배포할 리전(예:us-central1
)CUSTOMER_IDS
: Google Ads 계정 IDQUERY
: Google Ads 쿼리 언어 쿼리QPS_PER_WORKER
: 작업자별로 필요한 Google Ads 요청 비율GOOGLE_ADS_CLIENT_ID
: 애플리케이션을 식별하는 OAuth 2.0 클라이언트 IDGOOGLE_ADS_CLIENT_SECRET
: 지정된 클라이언트 ID에 해당하는 OAuth 2.0 클라이언트 보안 비밀번호GOOGLE_ADS_REFRESH_TOKEN
: Google Ads API에 연결하는 데 사용할 OAuth 2.0 갱신 토큰GOOGLE_ADS_DEVELOPER_TOKEN
: Google Ads API에 연결하는 데 사용할 Google Ads 개발자 토큰OUTPUT_TABLE_SPEC
: BigQuery 출력 테이블
API
REST API를 사용하여 템플릿을 실행하려면 HTTP POST 요청을 전송합니다. API 및 승인 범위에 대한 자세한 내용은 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" } } }
다음을 바꿉니다.
PROJECT_ID
: Dataflow 작업을 실행하려는 Google Cloud 프로젝트 IDJOB_NAME
: 선택한 고유한 작업 이름VERSION
: 사용할 템플릿 버전다음 값을 사용할 수 있습니다.
latest
: 버킷의 날짜가 지정되지 않은 상위 폴더(gs://dataflow-templates-REGION_NAME/latest/)에서 사용할 수 있는 최신 버전의 템플릿을 사용합니다.- 버전 이름(예:
2023-09-12-00_RC00
): 버킷의 날짜가 지정된 해당 상위 폴더(gs://dataflow-templates-REGION_NAME/)에 중첩되어 있는 특정 버전의 템플릿을 사용합니다.
LOCATION
: Dataflow 작업을 배포할 리전(예:us-central1
)CUSTOMER_IDS
: Google Ads 계정 IDQUERY
: Google Ads 쿼리 언어 쿼리QPS_PER_WORKER
: 작업자별로 필요한 Google Ads 요청 비율GOOGLE_ADS_CLIENT_ID
: 애플리케이션을 식별하는 OAuth 2.0 클라이언트 IDGOOGLE_ADS_CLIENT_SECRET
: 지정된 클라이언트 ID에 해당하는 OAuth 2.0 클라이언트 보안 비밀번호GOOGLE_ADS_REFRESH_TOKEN
: Google Ads API에 연결하는 데 사용할 OAuth 2.0 갱신 토큰GOOGLE_ADS_DEVELOPER_TOKEN
: Google Ads API에 연결하는 데 사용할 Google Ads 개발자 토큰OUTPUT_TABLE_SPEC
: BigQuery 출력 테이블
다음 단계
- Dataflow 템플릿 알아보기
- Google 제공 템플릿 목록 참조