이 자료에는 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 필드에는 이벤트를 고유하게 식별하는 정보가 포함됩니다. | ||
필드 이름 | 데이터 유형 | 설명 |
---|---|---|
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 필드에는 이벤트와 연결된 사용자를 고유하게 식별하는 정보가 포함됩니다. | ||
필드 이름 | 데이터 유형 | 설명 |
---|---|---|
is_active_user | 불리언 |
해당 날짜의 어느 시점에서든 사용자가 활성(참) 또는 비활성(거짓) 상태였는지 여부 일일 테이블( |
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.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.id | STRING | 앱의 패키지 이름 또는 번들 ID |
app_info.firebase_app_id | STRING | 앱과 연결된 Firebase 앱 ID |
app_info.install_source | STRING | 앱을 설치한 스토어 |
app_info.version | STRING | 앱의 버전 이름(Android) 또는 약식 번들 버전 |
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 레코드에는 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.name | STRING | 사용자를 최초로 획득한 마케팅 캠페인의 이름. 일중 표에서는 이 필드가 채워지지 않습니다. |
traffic_source.medium | STRING | 사용자를 최초로 획득한 매체(유료 검색, 자연 검색, 이메일 등)의 이름. 일중 표에서는 이 필드가 채워지지 않습니다. |
traffic_source.source | STRING | 사용자를 최초로 획득한 네트워크의 이름. 일중 표에서는 이 필드가 채워지지 않습니다. |
stream and platform 필드에는 스트림 및 앱 플랫폼에 대한 정보가 포함됩니다. | ||
필드 이름 | 데이터 유형 | 설명 |
---|---|---|
stream_id | STRING | 이벤트가 발생한 데이터 스트림의 숫자 ID |
platform | STRING | 이벤트가 발생한 데이터 스트림 플랫폼(웹, iOS 또는 Android) |
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.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 레코드에는 광고 게재와 관련된 게시자 통합(예: 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 | ||||
page_referrer | https://www.google.com | |||
<parameters...> | <values...> |
이 이벤트 데이터는 GA4 사용자 인터페이스에 다음과 같이 표시됩니다.
이전 버전의 SDK를 사용했으며 Android 17.2.5 이상 또는 iOS 16.20.0 이상으로 업그레이드하려는 경우 다음 사항을 고려해야 합니다.
- 현재 BigQuery Export 스키마를 사용하려면 SDK를 Android 17.2.5 이상 또는 iOS 16.20.0 이상으로 업그레이드해야 합니다. 이전 SDK 버전을 사용하면 내보낸 데이터에는 이전 스키마가 반영됩니다.
- 업그레이드가 완료되면 이후 시점부터는 반복된 항목 배열 내의 항목 데이터에만 액세스할 수 있으며, 더 이상 이전 SDK 버전에서처럼 표준 이벤트 매개변수에서 항목 데이터를 사용할 수 없습니다.
- 이러한 변경사항은 여러 제품을 분석하도록 지원하기 위한 것입니다.
- 따라서 상품/제품 데이터에 대한 참조를 조정해야 할 수 있습니다.
- Cloud Platform Console >: 관리자 리소스 페이지에 로그인합니다.
- 데이터를 이전하려는 프로젝트를 열고 페이지 상단의 Google Cloud Shell 활성화를 클릭합니다.
- 셸이 열리면 아래 스크립트를
migration_script.sql
파일에 복사합니다.cat > migration_script.sql
명령어를 실행합니다.- 아래 스크립트를 복사하여 셸에 붙여넣습니다.
- Ctrl+D 키를 눌러 저장하고 종료합니다.
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
- 새 셸을 열고 아래 Bash 스크립트를
migration.sh
파일에 복사합니다.cat > migration.sh
명령어를 실행합니다.- 아래 스크립트를 복사하여 셸에 붙여넣습니다.
- 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
- 새 셸을 열고
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) |