Google Ads to BigQuery 템플릿

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 쿼리 언어를 참조하세요. 예를 들면 SELECT campaign.id, campaign.name FROM campaign입니다.
qpsPerWorker Google Ads에 제출할 초당 쿼리 요청 수(QPS) 비율입니다. 원하는 파이프라인당 QPS를 최대 작업자 수로 나눕니다. 계정별 또는 개발자 토큰 한도를 초과하지 마세요. 비율 제한을 참조하세요.
googleAdsClientId 애플리케이션을 식별하는 OAuth 2.0 클라이언트 ID입니다. 클라이언트 ID 및 클라이언트 보안 비밀번호 만들기를 참조하세요.
googleAdsClientSecret 지정된 클라이언트 ID에 해당하는 OAuth 2.0 클라이언트 보안 비밀번호입니다. 클라이언트 ID 및 클라이언트 보안 비밀번호 만들기를 참조하세요.
googleAdsRefreshToken Google Ads API에 연결하는 데 사용할 OAuth 2.0 갱신 토큰입니다. 2단계 인증을 참조하세요.
googleAdsDeveloperToken Google Ads API에 연결하는 데 사용할 Google Ads 개발자 토큰입니다. 개발자 토큰 가져오기를 참조하세요.
outputTableSpec 출력을 작성할 BigQuery 테이블 위치입니다. 이름은 <project>:<dataset>.<table_name> 형식이어야 합니다. 테이블 스키마가 입력 객체와 일치해야 합니다.
loginCustomerId 선택사항: 계정 ID에 액세스하는 데 사용할 Google Ads 관리자 계정 ID입니다. 예를 들면 12345입니다.
bigQueryTableSchemaPath 선택사항: BigQuery 스키마 JSON 파일에 대한 Cloud Storage 경로입니다. 이 값이 설정되지 않으면 스키마가 Proto 스키마에서 유추됩니다. 예를 들면 gs://MyBucket/bq_schema.json입니다.
writeDisposition 선택사항: BigQuery WriteDisposition 값입니다. 예를 들면 WRITE_APPEND, WRITE_EMPTY 또는 WRITE_TRUNCATE입니다. 기본값은 WRITE_APPEND입니다.
createDisposition 선택사항: BigQuery CreateDisposition 값입니다. 예를 들면 CREATE_IF_NEEDED, CREATE_NEVER입니다. 기본값은 CREATE_IF_NEEDED입니다.

템플릿 실행

콘솔

  1. Dataflow 템플릿에서 작업 만들기 페이지로 이동합니다.
  2. 템플릿에서 작업 만들기로 이동
  3. 작업 이름 필드에 고유한 작업 이름을 입력합니다.
  4. (선택사항): 리전 엔드포인트의 드롭다운 메뉴에서 값을 선택합니다. 기본 리전은 us-central1입니다.

    Dataflow 작업을 실행할 수 있는 리전 목록은 Dataflow 위치를 참조하세요.

  5. Dataflow 템플릿 드롭다운 메뉴에서 the Google Ads to BigQuery template을 선택합니다.
  6. 제공된 매개변수 필드에 매개변수 값을 입력합니다.
  7. 작업 실행을 클릭합니다.

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: 사용할 템플릿 버전

    다음 값을 사용할 수 있습니다.

  • REGION_NAME: Dataflow 작업을 배포할 리전(예: us-central1)
  • CUSTOMER_IDS: Google Ads 계정 ID
  • QUERY: Google Ads 쿼리 언어 쿼리
  • QPS_PER_WORKER: 작업자별로 필요한 Google Ads 요청 비율
  • GOOGLE_ADS_CLIENT_ID: 애플리케이션을 식별하는 OAuth 2.0 클라이언트 ID
  • GOOGLE_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 프로젝트 ID
  • JOB_NAME: 선택한 고유한 작업 이름
  • VERSION: 사용할 템플릿 버전

    다음 값을 사용할 수 있습니다.

  • LOCATION: Dataflow 작업을 배포할 리전(예: us-central1)
  • CUSTOMER_IDS: Google Ads 계정 ID
  • QUERY: Google Ads 쿼리 언어 쿼리
  • QPS_PER_WORKER: 작업자별로 필요한 Google Ads 요청 비율
  • GOOGLE_ADS_CLIENT_ID: 애플리케이션을 식별하는 OAuth 2.0 클라이언트 ID
  • GOOGLE_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 출력 테이블

다음 단계