Google Ad Manager 전송
Google Ad Manager용 BigQuery Data Transfer Service를 사용하면 Google Ad Manager(이전 명칭: DoubleClick for Publishers)의 보고 데이터를 반복적으로 로드하는 작업을 자동으로 만들고 관리할 수 있습니다.
지원되는 보고서
현재 Google Ad Manager용 BigQuery Data Transfer Service는 다음과 같은 보고 옵션을 지원합니다.
- 데이터 전송(Google Ad Manager DT) 파일
- 데이터 전송 필드
- PQL을 통해 제공되는 데이터 이동 색인
- CompanyService의 데이터 이동 색인(v201908)
- OrderService의 데이터 이동 색인(v201908)
- PlacementService의 데이터 이동 색인(v201908)
Google Ad Manager 보고서가 BigQuery 테이블 및 뷰로 변환되는 방식에 대한 자세한 내용은 Google Ad Manager 보고서 변환을 참조하세요.
보고 옵션 | 지원 |
---|---|
지원되는 API 버전 | v201908 |
일정 | 생성 시간을 기준으로 매 8시간 구성할 수 없음 |
새로고침 기간 | 지난 2일 구성할 수 없음 |
최대 백필 기간 | 최근 60일 Google Ad Manager는 최대 60일 동안 데이터 전송 파일을 보관합니다. 60일이 지난 파일은 Google Ad Manager에서 삭제됩니다. |
시작하기 전에
Google Ad Manager 전송을 만들기 전에 다음을 수행하세요.
- BigQuery Data Transfer Service를 사용하는 데 필요한 모든 작업을 완료했는지 확인합니다.
- Google Ad Manager 데이터를 저장할 BigQuery 데이터세트를 만듭니다.
-
조직이 Google Ad Manager 데이터 전송(Google Ad Manager DT) 파일에 액세스할 수 있어야 합니다. Google Ad Manager팀은 파일을 Google Cloud Storage 버킷으로 전달합니다. Google Ad Manager DT 파일에 대한 액세스 권한을 얻으려면 다음을 순서대로 완료하세요. Google Ad Manager팀에서 추가 요금이 청구될 수 있습니다.
- 데이터 전송 보고서 개요를 검토합니다.
- 페이지 오른쪽 상단의 Contact Us(문의하기)를 클릭합니다.
- 보고서를 클릭합니다.
- 이메일 또는 담당자와의 채팅을 통해 Google Ad Manager 데이터 전송 파일에 대한 액세스를 요청합니다.
이 단계를 마치고 나면 다음과 같은 Cloud Storage 버킷을 받게 됩니다.
gdfp-12345678
Google Cloud팀은 사용자를 대신하여 Google Ad Manager DT 파일에 대한 액세스 권한을 생성하거나 부여할 수 없습니다. Google Ad Manager DT 파일에 액세스하려면 Google Ad Manager 지원에 문의하세요.
- Google Ad Manager 네트워크에 대한 API 액세스를 사용 설정하세요.
pubsub.topics.setIamPolicy
권한이 있어야 합니다.
이메일 알림만 설정한다면 Pub/Sub 권한은 필요 없습니다. 자세한 내용은 BigQuery Data Transfer Service 실행 알림을 참조하세요.
필수 권한
BigQuery: 전송을 만드는 사람에게 다음과 같은 BigQuery의 권한이 있는지 확인합니다.
- 전송을 만들
bigquery.transfers.update
권한 - 대상 데이터 세트에 대한
bigquery.datasets.get
및bigquery.datasets.update
권한
사전 정의된 IAM 역할
bigquery.admin
에는bigquery.transfers.update
,bigquery.datasets.update
,bigquery.datasets.get
권한이 있습니다. BigQuery Data Transfer Service의 IAM 역할에 대한 자세한 내용은 액세스 제어를 확인하세요.- 전송을 만들
Google Ad Manager: Cloud Storage에 저장된 Google Ad Manager DT 파일에 대한 읽기 액세스. Google Ad Manager DT 파일에 대한 권한은 Google Ad Manager팀이 관리합니다. Google Ad Manager DT 파일 외에도 전송을 만드는 사람은 다양한 데이터 이동 색인(항목, 주문, 광고 단위 등)을 만드는 데 필요한 모든 항목에 대한 읽기 액세스 권한이 있는 Google Ad Manager 네트워크에 추가해야 합니다. Ad Manager의 모든 항목팀에 전송을 인증한 Ad Manager 사용자를 추가하면 이 작업을 가장 쉽게 수행할 수 있습니다.
Google Ad Manager 전송 설정
Google Ad Manager용 BigQuery 데이터 전송 설정에는 다음이 필요합니다.
Cloud Storage 버킷: Google Ad Manager DT 파일을 위한 Cloud Storage 버킷 URI(시작하기 전에 섹션 설명 참조). 버킷 이름은 다음과 같아야 합니다.
gdfp-12345678
네트워크 코드: 네트워크에 로그인하면 URL에서 Google Ad Manager 네트워크 코드를 찾을 수 있습니다. 예를 들어
https://admanager.google.com/2032576#delivery
URL에서2032576
이 네트워크 코드입니다. 자세한 내용은 Google Ad Manager 시작하기를 참조하세요.
Google Ad Manager용 BigQuery Data Transfer Service 전송을 만들려면 다음 안내를 따르세요.
Console
콘솔에서 BigQuery 페이지로 이동합니다.
데이터 전송을 클릭합니다.
전송 만들기를 클릭합니다.
전송 만들기 페이지에서 다음을 수행합니다.
소스 유형 섹션의 소스에 Google Ad Manager를 선택합니다.
전송 구성 이름 섹션의 표시 이름에 전송 이름(예:
My Transfer
)을 입력합니다. 전송 이름은 나중에 수정해야 할 경우에 대비해 전송을 식별할 수 있는 값이면 됩니다.대상 설정 섹션의 대상 데이터 세트에서 데이터를 저장하기 위해 만든 데이터 세트를 선택합니다.
데이터 소스 세부정보 섹션에서 다음을 수행합니다.
- Cloud Storage 버킷에 데이터 전송 파일이 저장되는 Cloud Storage 버킷 이름을 입력합니다. 버킷 이름에는
gs://
가 포함되면 안 됩니다. 네트워크 코드에 네트워크 코드를 입력합니다.
- Cloud Storage 버킷에 데이터 전송 파일이 저장되는 Cloud Storage 버킷 이름을 입력합니다. 버킷 이름에는
(선택사항) 알림 옵션 섹션에서 다음을 수행합니다.
저장을 클릭합니다.
bq
bq mk
명령어를 입력하고 전송 생성 플래그 --transfer_config
를 지정합니다. 다음 플래그도 필요합니다.
--data_source
--target_dataset
--display_name
--params
선택적 플래그:
--service_account_name
- 사용자 계정 대신 Google Ad Manager 전송 인증에 사용할 서비스 계정을 지정합니다.
bq mk --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source \ --service_account_name=service_account_name
각 항목의 의미는 다음과 같습니다.
- project_id는 프로젝트 ID입니다.
- dataset는 전송 구성 대상 데이터 세트입니다.
- name은 전송 구성의 표시 이름입니다. 전송 이름은 나중에 수정해야 할 경우에 전송을 식별할 수 있는 값이면 됩니다.
- parameters에는 JSON 형식으로 생성된 전송 구성의 매개변수가 있습니다. 예를 들면
--params='{"param":"param_value"}'
입니다. Google Ad Manager의 경우bucket
및network_code
매개변수를 제공해야 합니다.bucket
은 Google Ad Manager DT 파일이 포함된 Cloud Storage 버킷입니다.network_code
는 네트워크 코드입니다. - data_source는 데이터 소스입니다. 예를 들면
dfp_dt
(Google Ad Manager)입니다. - service_account_name은 Google Ad Manager 전송을 인증하는 데 사용되는 서비스 계정 이름입니다. 서비스 계정은 전송을 만드는 데 사용한 것과 동일한
project_id
가 소유해야 하며 위에 나열된 모든 필수 권한이 있어야 합니다.
또한 --project_id
플래그를 입력하여 특정 프로젝트를 지정할 수도 있습니다. --project_id
를 지정하지 않으면 기본 프로젝트가 사용됩니다.
예를 들어 다음 명령어는 네트워크 코드 12345678
, Cloud Storage 버킷 gdfp-12345678
, 대상 데이터세트 mydataset
를 사용하여 이름이 My Transfer
인 Google Ad Manager 전송을 만듭니다. 기본 프로젝트에 전송이 생성됩니다.
bq mk --transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"bucket": "gdfp-12345678","network_code": "12345678"}' \
--data_source=dfp_dt
명령어를 실행한 후 다음과 같은 메시지가 수신됩니다.
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
안내에 따라 인증 코드를 명령줄에 붙여넣습니다.
API
projects.locations.transferConfigs.create
메서드를 사용하고 TransferConfig
리소스의 인스턴스를 지정합니다.
자바
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 BigQuery 자바 API 참조 문서를 확인하세요.
Google Ad Manager 전송 설정 문제 해결
전송을 설정하는 데 문제가 발생하면 전송 구성 문제 해결에서 Google Ad Manager 전송 문제를 참조하세요.
데이터 쿼리
BigQuery로 전송되는 데이터는 내부 데이터화 시간별로 파티션을 나눈 테이블에 기록됩니다. 자세한 내용은 파티션을 나눈 테이블 소개를 참조하세요.
자동 생성된 뷰를 사용하지 않고 직접 테이블을 쿼리하는 경우에는 쿼리에서 _PARTITIONTIME
유사 열을 사용해야 합니다. 자세한 내용은 파티션을 나눈 테이블 쿼리를 참조하세요.
Google Ad Manager 샘플 쿼리
다음 Google Ad Manager 샘플 쿼리를 사용하여 전송된 데이터를 분석할 수 있습니다. 또한 Google 데이터 스튜디오와 같은 시각화 도구에서 쿼리를 사용할 수 있습니다. BigQuery로 Google Ad Manager 데이터 쿼리를 시작하는 데 유용합니다. 이 보고서로 할 수 있는 작업에 대해 추가 문의 사항이 있는 경우 Google Ad Manager 기술 담당자에게 문의하세요.
다음 각 쿼리에서 dataset와 같은 변수를 실제 값으로 바꿉니다. 예를 들어 network_code는 Google Ad Manager 네트워크 코드로 바꿉니다.
도시별 노출수와 순 사용자
다음 SQL 샘플 쿼리는 지난 30일 동안의 도시별 노출수와 순 사용자를 분석합니다.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT City, _DATA_DATE AS Date, count(*) AS imps, count(distinct UserId) AS uniq_users FROM `dataset.NetworkImpressionsnetwork_code` WHERE _DATA_DATE BETWEEN start_date AND end_date GROUP BY City, Date
항목 유형별 노출수와 순 사용자
다음 SQL 샘플 쿼리는 지난 30일 동안의 항목 유형별 노출수와 순 사용자를 분석합니다.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.LineItemType AS LineItemType, DT._DATA_DATE AS Date, count(*) AS imps, count(distinct UserId) AS uniq_users FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.LineItemId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY LineItemType, Date ORDER BY Date desc, imps desc
광고 단위별 노출수
다음 SQL 샘플 쿼리는 지난 30일 동안의 광고 단위별 노출수를 분석합니다.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.AdUnitCode AS AdUnitCode, DT.DATA_DATE AS Date, count(*) AS imps FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.AdUnitId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY AdUnitCode, Date ORDER BY Date desc, imps desc
광고 항목별 노출수
다음 SQL 샘플 쿼리는 지난 30일 동안의 광고 항목별 노출수를 분석합니다.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.Name AS LineItemName, DT._DATA_DATE AS Date, count(*) AS imps FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.LineItemId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY LineItemName, Date ORDER BY Date desc, imps desc