[GA4] BigQuery Export 스키마

이 자료에는 BigQuery로 내보낸 Google 애널리틱스 4 속성 데이터와 Firebase용 Google 애널리틱스 데이터의 형식 및 스키마에 대한 설명이 나와 있습니다.

데이터 세트

각 Google 애널리틱스 4 속성과 BigQuery에 연결된 각 Firebase 프로젝트에 대해 'analytics_ <property_id>'라는 단일 데이터 세트가 BigQuery 프로젝트에 추가됩니다. 속성 ID는 Google 애널리틱스 4 속성의 속성 설정과 Firebase의 앱 애널리틱스 설정에서 찾을 수 있는 애널리틱스 속성 ID를 나타냅니다. BigQuery 내보내기가 사용 설정된 각 Google 애널리틱스 4 속성과 각 앱은 해당 데이터를 단일 데이터 세트로 내보냅니다.

일일 내보내기 옵션을 사용 설정하면 각 데이터 세트 내에 events_YYYYMMDD라는 표가 매일 생성됩니다.

스트리밍 내보내기 옵션을 사용 설정하면 events_intraday_YYYYMMDD라는 표가 생성됩니다. 이 표에는 모든 일간 이벤트가 기록되므로 지속적으로 내용이 채워집니다. 이 표는 events_YYYYMMDD가 완료되면 하루가 끝나는 시점에 매일 삭제됩니다.

이벤트가 트리거된 모든 기기에서 이벤트가 트리거된 당일에 Google 애널리틱스로 데이터를 전송하는 것은 아닙니다. 이 지연 시간을 고려하여 애널리틱스에서 일별 표(events_YYYYMMDD)를 이벤트 날짜 후 최대 3일의 이벤트로 업데이트합니다. 늦게 도착해도 이벤트에 올바른 타임스탬프가 표시됩니다. 3일 이후에 도착하는 이벤트는 기록되지 않습니다.

BigQuery 샌드박스를 사용하는 경우 일중 이벤트 가져오기를 실행하지 않으며 추가 제한이 적용됩니다.

일중 가져오기를 실행하려는 경우 샌드박스에서 업그레이드합니다.

events_YYYYMMDD 표의 각 열은 이벤트별 매개변수를 나타냅니다. 일부 매개변수는 레코드 내에서 중첩되며 items, event_params와 같은 일부 레코드는 반복 가능합니다. 표의 열은 아래에 설명되어 있습니다.

event
event 필드에는 이벤트를 고유하게 식별하는 정보가 포함됩니다.
필드 이름 데이터 유형 설명
batch_event_index 정수 기기에서 발생한 순서에 따라 배치 내 각 이벤트의 순서를 나타내는 숫자입니다.
batch_ordering_id 정수 특정 페이지에서 네트워크 요청이 전송될 때마다 일정하게 증가하는 숫자입니다.
batch_page_id 정수 페이지에 할당된 순차적 번호로, 참여 내에서 후속 페이지가 추가될 때마다 증가합니다.
event_date STRING 이벤트가 기록된 날짜(앱에 등록된 시간대의 YYYYMMDD 형식)
event_timestamp 정수 클라이언트에서 이벤트가 기록된 시간(단위: 마이크로초, UTC)
event_previous_timestamp 정수 클라이언트에서 이전에 이벤트가 기록된 시간(단위: 마이크로초, UTC)
event_name STRING 이벤트 이름
event_value_in_usd FLOAT 이벤트의 'value' 매개변수에 관한 통화 전환 값(미국 달러)
event_bundle_sequence_id 정수 이벤트가 업로드된 번들의 순차 ID
event_server_timestamp_offset 정수 수집 시간과 업로드 시간 간의 타임스탬프 시차(단위: 마이크로초)

event_params 레코드

event_params 레코드는 캠페인 수준 및 문맥 이벤트 매개변수와 사용자 정의 이벤트 매개변수를 저장할 수 있습니다. 이벤트와 연결된 각 키에 대해 event_params 레코드가 반복됩니다.

event_params 레코드에 저장된 일련의 매개변수는 각 구현마다 고유합니다. 구현에 대한 이벤트 매개변수의 전체 목록을 보려면 이벤트 매개변수 목록을 쿼리하세요.

필드 이름 데이터 유형 설명
event_params.key STRING 이벤트 매개변수의 이름
event_params.value 레코드 이벤트 매개변수 값을 포함한 레코드
event_params.value.string_value STRING 이벤트 매개변수가 URL이나 캠페인 이름과 같은 문자열로 표시되면 이 필드에 채워집니다.
event_params.value.int_value 정수 이벤트 매개변수가 정수로 표시되면 이 필드에 채워집니다.
event_params.value.double_value FLOAT 이벤트 매개변수가 이중 값으로 표시되면 이 필드에 채워집니다.
event_params.value.float_value FLOAT 이벤트 매개변수가 부동 소수점 값으로 표시되면 이 필드에 채워집니다. 이 필드는 현재 사용되지 않습니다.

item_params 레코드

item_params 레코드는 항목 매개변수와 모든 사용자 정의 항목 매개변수를 저장할 수 있습니다. item_params 레코드에 저장된 일련의 매개변수는 각 구현마다 고유합니다.

필드 이름 데이터 유형 설명
item_params.key STRING 항목 매개변수의 이름
item_params.value 레코드 항목 매개변수의 값을 포함한 레코드
item_params.value.string_value STRING 항목 매개변수가 문자열로 표시되면 이 필드에 채워집니다.
item_params.value.int_value 정수 항목 매개변수가 정수로 표시되면 이 필드에 채워집니다.
item_params.value.double_value FLOAT 항목 매개변수가 이중 값으로 표시되면 이 필드에 채워집니다.
item_params.value.float_value FLOAT 항목 매개변수가 부동 소수점 값으로 표시되면 이 필드에 채워집니다.
user
user 필드에는 이벤트와 연결된 사용자를 고유하게 식별하는 정보가 포함됩니다.
필드 이름 데이터 유형 설명
is_active_user 불리언

해당 날짜의 어느 시점에서든 사용자가 활성(참) 또는 비활성(거짓) 상태였는지 여부

일일 테이블(events_YYYYMMDD))에만 포함됩니다.

user_id STRING 사용자에게 할당된 고유 ID
user_pseudo_id STRING 사용자의 가명처리된 ID(예: 앱 인스턴스 ID) 사용자가 앱을 처음 열거나 사이트를 방문할 때 할당되는 고유 식별자입니다.
user_first_touch_timestamp 정수 사용자가 처음 앱을 열었거나 사이트를 방문한 시간(마이크로초)

privacy_info 필드

privacy_info 필드에는 동의 모드가 사용 설정된 경우 사용자의 동의 상태에 기반한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
privacy_info.ads_storage STRING

사용자에 대한 광고 타겟팅 사용 설정 여부

가능한 값: 예, 아니요, 설정되지 않음

privacy_info.analytics_storage STRING

사용자에 대한 애널리틱스 스토리지 사용 설정 여부

가능한 값: 예, 아니요, 설정되지 않음

privacy_info.uses_transient_token STRING

웹 사용자가 애널리틱스 스토리지를 거부하고 개발자가 서버 데이터의 임시 토큰을 기반으로 쿠키 없이 측정을 사용 설정했는지 여부

가능한 값: 예, 아니요, 설정되지 않음

user_properties 레코드

user_properties 레코드에는 사용자가 설정한 사용자 속성이 포함됩니다. 이 키는 사용자와 연결된 각 키에 대해 반복됩니다.
필드 이름 데이터 유형 설명
user_properties.key STRING 사용자 속성의 이름
user_properties.value 레코드 사용자 속성 값에 관한 레코드
user_properties.value.string_value STRING 사용자 속성의 문자열 값
user_properties.value.int_value 정수 사용자 속성의 정수 값
user_properties.value.double_value FLOAT 사용자 속성의 이중 값
user_properties.value.float_value FLOAT 현재 사용되지 않는 필드
user_properties.value.set_timestamp_micros 정수 사용자 속성이 마지막으로 설정된 시간(단위: 마이크로초)

user_ltv 레코드

user_ltv 레코드에는 사용자의 평생 가치 정보가 포함됩니다. 일중 표에서는 이 레코드가 채워지지 않습니다.
필드 이름 데이터 유형 설명
user_ltv.revenue FLOAT 사용자의 평생 가치(수익). 일중 표에서는 이 필드가 채워지지 않습니다.
user_ltv.currency STRING 사용자의 평생 가치(통화). 일중 표에서는 이 필드가 채워지지 않습니다.
device
device 레코드에는 이벤트가 발생한 기기에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
device.category STRING 기기 카테고리(모바일, 태블릿, 데스크톱)
device.mobile_brand_name STRING 기기 브랜드 이름
device.mobile_model_name STRING 기기 모델 이름
device.mobile_marketing_name STRING 기기 마케팅 이름
device.mobile_os_hardware_model STRING 운영체제에서 직접 검색한 기기 모델 정보
device.operating_system STRING 기기의 운영체제
device.operating_system_version STRING OS 버전
device.vendor_id STRING IDFV(IDFA가 수집되지 않은 경우에만 표시)
device.advertising_id STRING 광고 ID/IDFA
device.language STRING OS 언어
device.time_zone_offset_seconds 정수 GMT와의 시차(단위: 초)
device.is_limited_ad_tracking 불리언

기기의 광고 추적 제한 설정

iOS 14 이상에서 IDFA가 0이 아니면 false를 반환합니다.

device.web_info.browser STRING 사용자가 콘텐츠를 본 브라우저
device.web_info.browser_version STRING 사용자가 콘텐츠를 본 브라우저의 버전
device.web_info.hostname STRING 로그된 이벤트와 연결된 호스트 이름

geo

geo 레코드에는 이벤트가 시작된 지리적 위치에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
geo.continent STRING 이벤트가 보고된 대륙(IP 주소 기준)
geo.sub_continent STRING 이벤트가 보고된 아대륙(IP 주소 기준)
geo.country STRING 이벤트가 보고된 국가(IP 주소 기준)
geo.region STRING 이벤트가 보고된 지역(IP 주소 기준)
geo.metro STRING 이벤트가 보고된 대도시(IP 주소 기준)
geo.city STRING 이벤트가 보고된 도시(IP 주소 기준)
app_info
app_info 레코드에는 이벤트가 시작된 앱에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
app_info.id STRING 앱의 패키지 이름 또는 번들 ID
app_info.firebase_app_id STRING 앱과 연결된 Firebase 앱 ID
app_info.install_source STRING 앱을 설치한 스토어
app_info.version STRING 앱의 버전 이름(Android) 또는 약식 번들 버전
collected_traffic_source

collection_traffic_source 레코드에는 페이지의 첫 번째 이벤트와 함께 수집된 트래픽 소스 데이터가 포함됩니다.

필드 이름 데이터 유형 설명
manual_campaign_id STRING 이벤트와 함께 수집된 수동 캠페인 ID(utm_id)
manual_campaign_name STRING 이벤트와 함께 수집된 수동 캠페인 이름(utm_campaign)
manual_source STRING 이벤트와 함께 수집된 수동 캠페인 소스(utm_source). UTM 값뿐만 아니라 추천 매개변수에서 파싱된 매개변수도 포함됩니다.
manual_medium STRING 이벤트와 함께 수집된 수동 캠페인 매체(utm_medium). UTM 값뿐만 아니라 추천 매개변수에서 파싱된 매개변수도 포함됩니다.
manual_term STRING 이벤트와 함께 수집된 수동 캠페인 키워드/용어(utm_term)
manual_content STRING 이벤트와 함께 수집된 추가 수동 캠페인 메타데이터(utm_content)
manual_creative_format STRING 이벤트와 함께 수집된 수동 캠페인 광고 소재 형식(utm_creative_format)
manual_marketing_tactic STRING 이벤트와 함께 수집된 수동 캠페인 마케팅 전략(utm_marketing_tactic)
manual_source_platform STRING 이벤트와 함께 수집된 수동 캠페인 소스 플랫폼(utm_source_platform)
gclid STRING 이벤트와 함께 수집된 Google 클릭 식별자
dclid STRING 이벤트와 함께 수집된 Display & Video 360 및 Campaign Manager 360의 DoubleClick 클릭 식별자
srsltid STRING 이벤트와 함께 수집된 Google 판매자 센터 식별자
session_traffic_source_last_click

session_traffic_source_last_click 레코드에는 Google Ads 및 수동 컨텍스트 전반의 마지막 클릭 기여 분석 세션 트래픽 소스 데이터가 포함됩니다(가능한 경우).

필드 이름 데이터 유형 설명
session_traffic_source_last_click. manual_campaign.campaign_id STRING 마지막으로 클릭한 수동 캠페인의 ID
session_traffic_source_last_click. manual_campaign.campaign_name STRING 마지막으로 클릭한 수동 캠페인의 이름
session_traffic_source_last_click. manual_campaign.medium STRING 마지막으로 클릭한 수동 캠페인의 매체(예: 유료 검색, 자연 검색, 이메일)
session_traffic_source_last_click. manual_campaign.term STRING 마지막으로 클릭한 수동 캠페인의 키워드/검색어
session_traffic_source_last_click. manual_campaign.content STRING 마지막으로 클릭한 수동 캠페인의 추가 메타데이터
session_traffic_source_last_click. manual_campaign.source_platform STRING 마지막으로 클릭한 수동 캠페인의 플랫폼(예: 검색엔진, 소셜 미디어)
session_traffic_source_last_click. manual_campaign.source STRING 마지막으로 클릭한 수동 캠페인의 플랫폼 내 특정 소스
session_traffic_source_last_click. manual_campaign.creative_format STRING 마지막으로 클릭한 수동 캠페인의 광고 소재 형식
session_traffic_source_last_click. manual_campaign.marketing_tactic STRING 마지막으로 클릭한 수동 캠페인의 마케팅 전략
session_traffic_source_last_click. google_ads_campaign.customer_id STRING Google Ads 계정과 연결된 고객 ID
session_traffic_source_last_click. google_ads_campaign.account_name STRING Google Ads 계정의 이름
session_traffic_source_last_click. google_ads_campaign.campaign_id STRING Google Ads 캠페인의 ID
session_traffic_source_last_click. google_ads_campaign.campaign_name STRING Google Ads 캠페인의 이름
session_traffic_source_last_click. google_ads_campaign.ad_group_id STRING Google Ads 캠페인 내 광고 그룹의 ID
session_traffic_source_last_click. google_ads_campaign.ad_group_name STRING Google Ads 캠페인 내 광고 그룹의 이름
session_traffic_source_last_click.
cross_channel_campaign.campaign_name
STRING 마지막으로 클릭한 교차 채널 캠페인의 이름
session_traffic_source_last_click.
cross_channel_campaign.campaign_id
STRING 마지막으로 클릭한 교차 채널 캠페인의 ID
session_traffic_source_last_click.
cross_channel_campaign.source_platform
STRING 마지막으로 클릭한 교차 채널 캠페인의 플랫폼
session_traffic_source_last_click.
cross_channel_campaign.source
STRING 마지막으로 클릭한 교차 채널 캠페인의 플랫폼 내 특정 소스
session_traffic_source_last_click.
cross_channel_campaign.medium
STRING 마지막으로 클릭한 교차 채널 캠페인의 매체
session_traffic_source_last_click.
sa360_campaign.campaign_name
STRING 마지막으로 클릭한 SA360 캠페인의 이름
session_traffic_source_last_click.
sa360_campaign.source
STRING 마지막으로 클릭한 SA360 캠페인의 플랫폼 내 특정 소스
session_traffic_source_last_click.
sa360_campaign.medium
STRING 마지막으로 클릭한 SA360 캠페인의 매체
session_traffic_source_last_click.
sa360_campaign.ad_group_id
STRING SA360 캠페인 내 광고 그룹의 ID
session_traffic_source_last_click.
sa360_campaign.ad_group_name
STRING SA360 캠페인 내 광고 그룹의 이름
session_traffic_source_last_click.
sa360_campaign.campaign_id
STRING 마지막으로 클릭한 SA360 캠페인의 ID
session_traffic_source_last_click.
sa360_campaign.creative_format
STRING 마지막으로 클릭한 SA360 캠페인의 광고 소재 형식
session_traffic_source_last_click.
sa360_campaign.engine_account_name
STRING SA360 엔진 계정의 이름
session_traffic_source_last_click.
sa360_campaign.engine_account_type
STRING SA360 캠페인이 포함된 엔진 계정의 유형
session_traffic_source_last_click.
sa360_campaign.manager_account_name
STRING SA360 관리자 계정의 이름
session_traffic_source_last_click.
dv360_campaign.advertiser_id
STRING DV360 광고주의 ID
session_traffic_source_last_click.
dv360_campaign.advertiser_name
STRING DV360 광고주의 이름
session_traffic_source_last_click.
dv360_campaign.campaign_id
STRING 마지막으로 클릭한 DV360 캠페인의 ID
session_traffic_source_last_click.
dv360_campaign.campaign_name
STRING 마지막으로 클릭한 DV360 캠페인의 이름
session_traffic_source_last_click.
dv360_campaign.creative_id
STRING 마지막으로 클릭한 DV360 캠페인의 광고 소재 ID
session_traffic_source_last_click.
dv360_campaign.creative_format
STRING 마지막으로 클릭한 DV360 캠페인의 광고 소재 형식
session_traffic_source_last_click.
dv360_campaign.creative_name
STRING 마지막으로 클릭한 DV360 캠페인의 광고 소재 이름
session_traffic_source_last_click.
dv360_campaign.marketing_tactic
STRING 마지막으로 클릭한 DV360 캠페인의 마케팅 전략
session_traffic_source_last_click.
dv360_campaign.exchange_id
STRING 마지막으로 클릭한 DV360 캠페인의 거래소 ID
session_traffic_source_last_click.
dv360_campaign.exchange_name
STRING 마지막으로 클릭한 DV360 캠페인의 거래소 이름
session_traffic_source_last_click.
dv360_campaign.insertion_order_id
STRING 마지막으로 클릭한 DV360 캠페인의 게재 신청서 ID
session_traffic_source_last_click.
dv360_campaign.insertion_order_name
STRING 마지막으로 클릭한 DV360 캠페인의 게재 신청서 이름
session_traffic_source_last_click.
dv360_campaign.line_item_id
STRING 마지막으로 클릭한 DV360 캠페인의 광고 항목 ID
session_traffic_source_last_click.
dv360_campaign.line_item_name
STRING 마지막으로 클릭한 DV360 캠페인의 광고 항목 이름
session_traffic_source_last_click.
dv360_campaign.partner_id
STRING DV360 파트너의 ID
session_traffic_source_last_click.
dv360_campaign.partner_name
STRING DV360 파트너의 이름
session_traffic_source_last_click.
dv360_campaign.source
STRING 마지막으로 클릭한 DV360 캠페인의 플랫폼 내 특정 소스
session_traffic_source_last_click.
dv360_campaign.medium
STRING 마지막으로 클릭한 DV360 캠페인의 매체
session_traffic_source_last_click.
cm360_campaign.account_id
STRING CM360 계정의 ID
session_traffic_source_last_click.
cm360_campaign.account_name
STRING CM360 계정의 이름
session_traffic_source_last_click.
cm360_campaign.advertiser_id
STRING CM360 광고주의 ID
session_traffic_source_last_click.
cm360_campaign.advertiser_name
STRING CM360 광고주의 이름
session_traffic_source_last_click.
cm360_campaign.campaign_id
STRING 마지막으로 클릭한 CM360 캠페인의 ID
session_traffic_source_last_click.
cm360_campaign.campaign_name
STRING 마지막으로 클릭한 CM360 캠페인의 이름
session_traffic_source_last_click.
cm360_campaign.creative_id
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 ID
session_traffic_source_last_click.
cm360_campaign.creative_format
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 형식
session_traffic_source_last_click.
cm360_campaign.creative_name
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 이름
session_traffic_source_last_click.
cm360_campaign.creative_type
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 유형
session_traffic_source_last_click.
cm360_campaign.creative_type_id
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 유형 ID
session_traffic_source_last_click.
cm360_campaign.creative_version
STRING 마지막으로 클릭한 CM360 캠페인의 광고 소재 버전
session_traffic_source_last_click.
cm360_campaign.placement_id
STRING 마지막으로 클릭한 CM360 캠페인의 게재위치 ID
session_traffic_source_last_click.cm360
_campaign.placement_cost_structure
STRING 마지막으로 클릭한 CM360 캠페인의 게재위치 비용 구조
session_traffic_source_last_click.
cm360_campaign.placement_name
STRING 마지막으로 클릭한 CM360 캠페인의 게재위치 이름
session_traffic_source_last_click.
cm360_campaign.rendering_id
STRING 마지막으로 클릭한 CM360 캠페인의 렌더링 ID
session_traffic_source_last_click.
cm360_campaign.site_id
STRING 마지막으로 클릭한 CM360 캠페인의 사이트 ID
session_traffic_source_last_click.
cm360_campaign.site_name
STRING 마지막으로 클릭한 CM360 캠페인의 사이트 이름
session_traffic_source_last_click.
cm360_campaign.source
STRING 마지막으로 클릭한 CM360 캠페인의 특정 소스
session_traffic_source_last_click.
cm360_campaign.medium
STRING 마지막으로 클릭한 CM360 캠페인의 매체
traffic_source

traffic_source 레코드에는 사용자를 처음 획득한 트래픽 소스에 대한 정보가 포함됩니다. 일중 표에서는 이 레코드가 채워지지 않습니다.

참고: 사용자가 설치 후 후속 캠페인과 상호작용하면 traffic_source 값이 변경되지 않습니다.

필드 이름 데이터 유형 설명
traffic_source.name STRING 사용자를 최초로 획득한 마케팅 캠페인의 이름. 일중 표에서는 이 필드가 채워지지 않습니다.
traffic_source.medium STRING 사용자를 최초로 획득한 매체(유료 검색, 자연 검색, 이메일 등)의 이름. 일중 표에서는 이 필드가 채워지지 않습니다.
traffic_source.source STRING 사용자를 최초로 획득한 네트워크의 이름. 일중 표에서는 이 필드가 채워지지 않습니다.
stream and platform
stream and platform 필드에는 스트림 및 앱 플랫폼에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
stream_id STRING 이벤트가 발생한 데이터 스트림의 숫자 ID
platform STRING 이벤트가 발생한 데이터 스트림 플랫폼(웹, iOS 또는 Android)
ecommerce
ecommerce 레코드에는 웹사이트 또는 앱에서 설정된 모든 전자상거래 이벤트에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
ecommerce.total_item_quantity 정수 이벤트의 총 상품 수(items.quantity의 총합)
ecommerce.purchase_revenue_in_usd FLOAT 이벤트의 구매 수익(표준 단위와 함께 USD로 표시됨) 구매 이벤트에 대해서만 채워집니다.
ecommerce.purchase_revenue FLOAT 이벤트의 구매 수익(표준 단위와 함께 현지 통화로 표시됨) 구매 이벤트에 대해서만 채워집니다.
ecommerce.refund_value_in_usd FLOAT 이벤트의 환불 금액(표준 단위와 함께 USD로 표시됨) 환불 이벤트에 대해서만 채워집니다.
ecommerce.refund_value FLOAT 이벤트의 환불 금액(표준 단위와 함께 현지 통화로 표시됨) 환불 이벤트에 대해서만 채워집니다.
ecommerce.shipping_value_in_usd FLOAT 이벤트의 배송 비용(표준 단위와 함께 USD로 표시됨)
ecommerce.shipping_value FLOAT 이벤트의 배송 비용(현지 통화로 표시됨)
ecommerce.tax_value_in_usd FLOAT 이벤트의 세금(표준 단위와 함께 USD로 표시됨)
ecommerce.tax_value FLOAT 이벤트의 세금(표준 단위와 함께 현지 통화로 표시됨)
ecommerce.transaction_id STRING 전자상거래의 거래 ID입니다.
ecommerce.unique_items 정수 이벤트의 고유 상품 수(item_id, item_name, item_brand 기준)
items
items 레코드에는 이벤트에 포함된 상품에 대한 정보가 포함됩니다. 이 레코드는 각 상품에 대해 반복됩니다.
필드 이름 데이터 유형 설명
items.item_id STRING 상품의 ID
items.item_name STRING 상품의 이름
items.item_brand STRING 상품의 브랜드
items.item_variant STRING 상품의 옵션
items.item_category STRING 상품의 카테고리
items.item_category2 STRING 상품의 하위 카테고리
items.item_category3 STRING 상품의 하위 카테고리
items.item_category4 STRING 상품의 하위 카테고리
items.item_category5 STRING 상품의 하위 카테고리
items.price_in_usd FLOAT 상품 가격(표준 단위와 함께 USD로 표시됨)
items.price FLOAT 상품 가격(현지 통화로 표시됨).
items.quantity 정수 상품 수량. 지정하지 않을 경우 1로 설정됩니다.
items.item_revenue_in_usd FLOAT 상품 수익(price_in_usd * 수량으로 계산됨) 구매 이벤트에 대해서만 채워집니다(표준 단위와 함께 USD로 표시됨).
items.item_revenue FLOAT 상품 수익(가격 * 수량으로 계산됨) 구매 이벤트에 대해서만 채워집니다(표준 단위와 함께 현지 통화로 표시됨).
items.item_refund_in_usd FLOAT 상품의 환불 금액(price_in_usd * 수량으로 계산됨) 환불 이벤트에 대해서만 채워집니다(표준 단위와 함께 USD로 표시됨)
items.item_refund FLOAT 상품의 환불 금액(가격 * 수량으로 계산됨) 환불 이벤트에 대해서만 채워집니다(표준 단위와 함께 현지 통화로 표시됨).
items.coupon STRING 상품에 적용되는 쿠폰 코드
items.affiliation STRING 공급 회사 또는 오프라인 매장 위치를 지정하는 제품 제휴사
items.location_id STRING 상품과 연결된 위치
items.item_list_id STRING 상품이 사용자에게 표시된 목록 ID
items.item_list_name STRING 상품이 사용자에게 표시된 목록 이름
Items.item_list_index STRING 목록에서 상품의 위치
items.promotion_id STRING 제품 프로모션 ID
items.promotion_name STRING 제품 프로모션 이름
items.creative_name STRING 프로모션 위치에 사용되는 광고 소재의 이름
items.creative_slot STRING 광고 소재 슬롯의 이름

item_params 레코드

item_params 레코드는 정의한 맞춤 항목 매개변수를 저장합니다. item_id, item_name 등 사전 정의된 항목 매개변수는 여기에 포함되지 않고 명시적 필드로 내보냅니다.

item_params 레코드에 저장된 일련의 매개변수는 각 구현마다 고유합니다. 전자상거래 구현 및 Google 애널리틱스 4 항목 배열에 대해 자세히 알아보려면 전자상거래 측정을 참고하세요.

필드 이름 데이터 유형 설명
items.item_params.key STRING 항목 매개변수의 이름
items.item_params.value 레코드 항목 매개변수의 값을 포함한 레코드
items.item_params.value.string_value STRING 항목 매개변수가 문자열로 표시되면 이 필드에 채워집니다.
items.item_params.value.int_value 정수 항목 매개변수가 정수로 표시되면 이 필드에 채워집니다.
items.item_params.value.double_value FLOAT 항목 매개변수가 이중 값으로 표시되면 이 필드에 채워집니다.
items.item_params.value.float_value FLOAT 항목 매개변수가 부동 소수점 값으로 표시되면 이 필드에 채워집니다.
publisher(사전 체험판만 해당)
publisher 레코드에는 광고 게재와 관련된 게시자 통합(예: AdMob)에서 가져온 이벤트에 대한 정보가 포함됩니다.
필드 이름 데이터 유형 설명
게시자 RECORD AdMob에서 제공하는 게시자 데이터의 레코드입니다.
publisher.ad_revenue_in_usd FLOAT 이 이벤트로 인해 발생한 예상 광고 수익입니다(USD로 표시됨). 광고 노출 이벤트에 대해서만 채워집니다.
publisher.ad_format STRING 광고가 게재된 방식과 위치를 설명합니다. 전형적인 형식으로 '전면 광고', '배너', '보상형', '네이티브 광고 고급형' 등이 있습니다.
publisher.ad_source_name STRING 광고를 게재한 소스 네트워크입니다. 일반적인 소스로는 'AdMob 네트워크', 'Meta Audience Network', '미디에이션된 하우스 광고'가 있습니다.
publisher.ad_unit_id STRING 이 광고 단위를 설명하기 위해 선택한 이름입니다. 광고 단위는 사용자에게 광고를 게재하기 위해 앱에 배치하는 컨테이너입니다.

단일 이벤트에 대한 데이터는 반복되는 레코드가 포함되어 있는지 여부에 따라 행 하나에 표시되거나 여러 행에 표시될 수 있습니다. 예를 들어 여러 page_view로 구성된 page_view 이벤트는 다음 표와 유사합니다. 첫 번째 행에는 이벤트 이름, 날짜, 타임스탬프 및 반복되지 않는 기타 데이터 항목이 포함됩니다. 이벤트와 연결된 각 매개변수에 대해 event_params 레코드가 반복됩니다. 이렇게 반복되는 레코드는 초기 이벤트 행 바로 아래 후속 행에 채워집니다.

event_date event_timestamp event_name event_params.key event_params_value.string_value
20220222 1643673600483790 page_view page_location https://example.com
      page_title
      medium referral
      source google
      page_referrer https://www.google.com
      <parameters...> <values...>

이 이벤트 데이터는 GA4 사용자 인터페이스에 다음과 같이 표시됩니다.

SDK를 Android 17.2.5 이상 또는 iOS 16.20.0 이상으로 업데이트하려는 경우 고려할 사항

이전 버전의 SDK를 사용했으며 Android 17.2.5 이상 또는 iOS 16.20.0 이상으로 업그레이드하려는 경우 다음 사항을 고려해야 합니다.

  • 현재 BigQuery Export 스키마를 사용하려면 SDK를 Android 17.2.5 이상 또는 iOS 16.20.0 이상으로 업그레이드해야 합니다. 이전 SDK 버전을 사용하면 내보낸 데이터에는 이전 스키마가 반영됩니다.
  • 업그레이드가 완료되면 이후 시점부터는 반복된 항목 배열 내의 항목 데이터에만 액세스할 수 있으며, 더 이상 이전 SDK 버전에서처럼 표준 이벤트 매개변수에서 항목 데이터를 사용할 수 없습니다.
  • 이러한 변경사항은 여러 제품을 분석하도록 지원하기 위한 것입니다.
  • 따라서 상품/제품 데이터에 대한 참조를 조정해야 할 수 있습니다.
이 스크립트를 사용하여 기존 BigQuery 데이터 세트를 기존 내보내기 스키마에서 새 내보내기 스키마로 이전합니다.
  1. Cloud Platform Console >: 관리자 리소스 페이지에 로그인합니다.
  2. 데이터를 이전하려는 프로젝트를 열고 페이지 상단의 Google Cloud Shell 활성화를 클릭합니다.
  3. 셸이 열리면 아래 스크립트를 migration_script.sql 파일에 복사합니다.
    1. cat > migration_script.sql 명령어를 실행합니다.
    2. 아래 스크립트를 복사하여 셸에 붙여넣습니다.
    3. Ctrl+D 키를 눌러 저장하고 종료합니다.
    스크립트(migration_script.sql):
      SELECT
      @date AS event_date,
      event.timestamp_micros AS event_timestamp,
      event.previous_timestamp_micros AS event_previous_timestamp,
      event.name AS event_name,
      event.value_in_usd  AS event_value_in_usd,
       user_dim.bundle_info.bundle_sequence_id AS event_bundle_sequence_id,
      user_dim.bundle_info.server_timestamp_offset_micros as event_server_timestamp_offset,
      (
      SELECT
        ARRAY_AGG(STRUCT(event_param.key AS key,
            STRUCT(event_param.value.string_value AS string_value,
              event_param.value.int_value AS int_value,
              event_param.value.double_value AS double_value, 
              event_param.value.float_value AS float_value) AS value))
      FROM
        UNNEST(event.params) AS event_param) AS event_params,
      user_dim.first_open_timestamp_micros AS user_first_touch_timestamp,
      user_dim.user_id AS user_id,
      user_dim.app_info.app_instance_id AS user_pseudo_id,
      "" AS stream_id,
      user_dim.app_info.app_platform AS platform,
      STRUCT( user_dim.ltv_info.revenue AS revenue,
        user_dim.ltv_info.currency AS currency ) AS user_ltv,
      STRUCT( user_dim.traffic_source.user_acquired_campaign AS name,
          user_dim.traffic_source.user_acquired_medium AS medium,
          user_dim.traffic_source.user_acquired_source AS source ) AS traffic_source,
      STRUCT( user_dim.geo_info.continent AS continent,
        user_dim.geo_info.country AS country,
        user_dim.geo_info.region AS region,
        user_dim.geo_info.city AS city ) AS geo,
      STRUCT( user_dim.device_info.device_category AS category,
        user_dim.device_info.mobile_brand_name,
        user_dim.device_info.mobile_model_name,
        user_dim.device_info.mobile_marketing_name,
        user_dim.device_info.device_model AS mobile_os_hardware_model,
        @platform AS operating_system,
        user_dim.device_info.platform_version AS operating_system_version,
        user_dim.device_info.device_id AS vendor_id,
        user_dim.device_info.resettable_device_id AS advertising_id,
        user_dim.device_info.user_default_language AS language,
        user_dim.device_info.device_time_zone_offset_seconds AS time_zone_offset_seconds,
        IF(user_dim.device_info.limited_ad_tracking, "Yes", "No") AS is_limited_ad_tracking ) AS device,
      STRUCT( user_dim.app_info.app_id AS id,
        @firebase_app_id  AS firebase_app_id,
        user_dim.app_info.app_version AS version,
        user_dim.app_info.app_store AS install_source ) AS app_info,
      (
      SELECT
        ARRAY_AGG(STRUCT(user_property.key AS key,
            STRUCT(user_property.value.value.string_value AS string_value,
              user_property.value.value.int_value AS int_value,
              user_property.value.value.double_value AS double_value,
              user_property.value.value.float_value AS float_value,
              user_property.value.set_timestamp_usec AS set_timestamp_micros ) AS value))
      FROM
        UNNEST(user_dim.user_properties) AS user_property) AS user_properties
    FROM
      `SCRIPT_GENERATED_TABLE_NAME`,
      UNNEST(event_dim) AS event
      
  4. 새 셸을 열고 아래 Bash 스크립트를 migration.sh 파일에 복사합니다.
    1. cat > migration.sh 명령어를 실행합니다.
    2. 아래 스크립트를 복사하여 셸에 붙여넣습니다.
    3. Ctrl+D 키를 눌러 저장하고 종료합니다.
    애널리틱스 속성 ID, BigQuery 프로젝트 ID, Firebase 앱 ID, BigQuery 데이터 세트 이름, 원하는 데이터의 시작일과 종료일을 포함하도록 다음 스크립트를 수정합니다.
    스크립트(migration.sh):
    # Analytics Property ID for the Project. Find this in Analytics Settings in Firebase.
    PROPERTY_ID=your Analytics property ID
    
    # Bigquery Export Project.
    BQ_PROJECT_ID="your BigQuery Project ID" (e.g., "firebase-public-project")
    
    # Firebase App ID for the app.
    FIREBASE_APP_ID="your Firebase App ID" (e.g., "1:300830567303:ios:09b1ab1d3ca29bda")
    
    # Dataset to import from.
    BQ_DATASET="name of BigQuery dataset you want to import from" (e.g., "com_firebase_demo_IOS")
    
    # Platform
    PLATFORM="platform of the app. ANDROID or IOS"
    
    # Date range for which you want to run migration, [START_DATE,END_DATE] inclusive.
    START_DATE=20180324
    END_DATE=20180327
    
    # Do not modify the script below, unless you know what you are doing :)
    startdate=$(date -d"$START_DATE"  +%Y%m%d) || exit -1
    enddate=$(date -d"$END_DATE"  +%Y%m%d) || exit -1
    
    # Iterate through the dates.
    DATE="$startdate"
    while [ "$DATE" -le "$enddate" ]; do
    
            # BQ table constructed from above params.
            BQ_TABLE="$BQ_PROJECT_ID.$BQ_DATASET.app_events_$DATE"
    
            echo "Migrating $BQ_TABLE"
    
            cat migration_script.sql | sed -e "s/SCRIPT_GENERATED_TABLE_NAME/$BQ_TABLE/g" | bq query \
            --debug_mode \
            --allow_large_results \
            --noflatten_results \
            --use_legacy_sql=False \
            --destination_table analytics_$PROPERTY_ID.events_$DATE \
            --batch \
            --append_table \
            --parameter=firebase_app_id::$FIREBASE_APP_ID \
            --parameter=date::$DATE \
            --parameter=platform::$PLATFORM \
            --project_id=$BQ_PROJECT_ID
    
    
            temp=$(date -I -d "$DATE + 1 day")
            DATE=$(date -d "$temp" +%Y%m%d)
    
    done
    exit
    
    # END OF SCRIPT
    
    
  5. 새 셸을 열고 bash migration.sh 명령어를 실행합니다.
이전 내보내기 스키마

user_dim

필드 이름 데이터 유형 설명
user_dim 레코드 사용자 측정기준에 관한 레코드
user_dim.user_id STRING setUserId API를 통해 설정된 사용자 ID
user_dim.first_open_timestamp_micros 정수 사용자가 처음 앱을 연 시간(단위: 마이크로초)
user_dim.user_properties 레코드 setUserProperty API로 설정된 사용자 속성에 관한 반복된 레코드
user_dim.user_properties.key STRING 사용자 속성의 이름
user_dim.user_properties.value 레코드 사용자 속성 정보에 관한 레코드
user_dim.user_properties.value.value 레코드 사용자 속성 값에 관한 레코드
user_dim.user_properties.value.value.string_value STRING 사용자 속성의 문자열 값
user_dim.user_properties.value.value.int_value 정수 사용자 속성의 정수 값
user_dim.user_properties.value.value.double_value FLOAT 사용자 속성의 이중 값
user_dim.user_properties.value.set_timestamp_usec 정수 사용자 속성이 마지막으로 설정된 시간(단위: 마이크로초)
user_dim.user_properties.value.index 정수 사용자 속성의 색인(0~24)
user_dim.device_info 레코드 기기 정보에 관한 레코드
user_dim.device_info.device_category STRING 기기 카테고리(모바일, 태블릿, 데스크톱)
user_dim.device_info.mobile_brand_name STRING 기기 브랜드 이름
user_dim.device_info.mobile_model_name STRING 기기 모델 이름
user_dim.device_info.mobile_marketing_name STRING 기기 마케팅 이름
user_dim.device_info.device_model STRING 기기 모델
user_dim.device_info.platform_version STRING OS 버전
user_dim.device_info.device_id STRING IDFV(IDFA를 사용할 수 없는 경우에만 제공)
user_dim.device_info.resettable_device_id STRING 광고 ID/IDFA
user_dim.device_info.user_default_language STRING OS 언어
user_dim.device_info.device_time_zone_offset_seconds 정수 GMT와의 시차(단위: 초)
user_dim.device_info.limited_ad_tracking 불리언 기기의 광고 추적 제한 설정
user_dim.geo_info 레코드 사용자의 위치 정보에 관한 레코드
user_dim.geo_info.continent STRING 이벤트가 보고된 대륙(IP 주소 기준)
user_dim.geo_info.country STRING 이벤트가 보고된 국가(IP 주소 기준)
user_dim.geo_info.region STRING 이벤트가 보고된 지역(IP 주소 기준)
user_dim.geo_info.city STRING 이벤트가 보고된 도시(IP 주소 기준)
user_dim.app_info 레코드 앱의 정보에 관한 레코드
user_dim.app_info.app_version STRING 앱의 버전 이름(Android) 또는 약식 번들 버전
user_dim.app_info.app_instance_id STRING 앱 인스턴스의 고유 ID
user_dim.app_info.app_store STRING 앱을 설치한 스토어
user_dim.app_info.app_platform STRING 앱이 실행 중인 플랫폼
user_dim.traffic_source 레코드 사용자 획득에 사용된 트래픽 소스의 이름. 당일 표에서는 이 필드가 채워지지 않습니다.
user_dim.traffic_source.user_acquired_campaign STRING 사용자를 획득한 마케팅 캠페인의 이름. 당일 표에서는 이 필드가 채워지지 않습니다.
user_dim.traffic_source.user_acquired_medium STRING 사용자를 획득한 매체(유료 검색, 자연 검색, 이메일 등)의 이름. 일중 표에서는 이 필드가 채워지지 않습니다.
user_dim.traffic_source.user_acquired_source STRING 사용자를 획득한 네트워크의 이름. 당일 표에서는 이 필드가 채워지지 않습니다.
user_dim.bundle_info 레코드 이벤트가 업로드된 번들과 관련된 정보에 관한 레코드
user_dim.bundle_info.bundle_sequence_id 정수 이벤트가 업로드된 번들의 순차 ID
user_dim.ltv_info 레코드 사용자의 평생 가치 정보에 관한 레코드. 당일 표에서는 이 필드가 채워지지 않습니다.
user_dim.ltv_info.revenue FLOAT 사용자의 평생 가치(수익). 당일 표에서는 이 필드가 채워지지 않습니다.
user_dim.ltv_info.currency STRING 사용자의 평생 가치(통화). 당일 표에서는 이 필드가 채워지지 않습니다.

event_dim

필드 이름 데이터 유형 설명
event_dim 레코드 번들의 이벤트와 관련된 정보에 관한 반복된 레코드
event_dim.date STRING 이벤트가 기록된 날짜(앱에 등록된 시간대의 YYYYMMDD 형식)
event_dim.name STRING 이벤트 이름
event_dim.params 레코드 이벤트와 연결된 매개변수에 관한 반복된 레코드
event_dim.params.key STRING 이벤트 매개변수의 키
event_dim.params.value 레코드 이벤트 매개변수 값에 관한 레코드
event_dim.params.value.string_value STRING 이벤트 매개변수의 문자열 값
event_dim.params.value.int_value 정수 이벤트 매개변수의 정수 값
event_dim.params.value.double_value FLOAT 이벤트 매개변수의 이중 값
event_dim.timestamp_micros 정수 클라이언트에서 이벤트가 기록된 시간(단위: 마이크로초, UTC)
event_dim.previous_timestamp_micros 정수 클라이언트에서 이전에 이벤트가 기록된 시간(마이크로초 단위, UTC)

도움이 되었나요?

어떻게 하면 개선할 수 있을까요?
검색
검색어 지우기
검색 닫기
Google 앱
기본 메뉴