데이터 엔지니어링이란 사용자의 데이터(주문, 매출, 회원가입 등)를 수집하여 원하는 형태의 데이터로 가공하고 사용할 수 있도록 제공하는 서비스입니다.
이번에는 비즈스프링의 웹분석 솔루션이 아닌 GA360을 활용하여 데이터를 추출하고 가공한 데이터 엔지니어링에 대한 사례를 소개하고자 합니다.
현재 GA360을 사용하는 기업, 그리고 수집한 데이터에서 더욱 의미 있는 인사이트를 얻고 싶은 분이라면 이번 콘텐츠를 주의 깊게 살펴보시길 권장 드립니다.
구글 애널리틱스의 데이터는 히트, 세션, 사용자 세 가지 요소를 포함하는 구조로 되어 있습니다.
히트가 가장 작은 단위이며, 히트가 모여 세션을 구성하며, 세션이 모여 하나의 사용자로 구성됩니다.
GA360의 BigQuery와 연동되는 기능을 사용하여 원하는 데이터를 추출합니다.
데이터는 하루에 한번 전일자 데이터가 들어옵니다.
하나의 row는 한 개의 세션으로 구성되어 있으며 세션 내에 record 형식으로 hits가 구성되어 있습니다.
hits 레벨에서는 type별로 PAGE, EVENT로 나뉘어 구성됩니다.
PAGE : 페이지 랜딩별 데이터
EVENT : 이벤트 발생에 대한 데이터(상품 구매, 회원 가입 등)
세션 내 페이지 데이터 정보를 가지고 사용자의 행동을 분석할 수 있습니다.
데이터를 활용하는 방식 입니다. bigquery가 제공하는 기능(탐색 함수)을 활용하여 시계열 분석을 진행합니다.
예시 1) 사용자 ID별 방문 시간을 이용해 해당 사용자의 페이지 접속 후 다음 방문 시간을 구하기
[예시 쿼리]
LEAD(visit_time) OVER (PARTITION BY fullVisitorId ORDER BY visit_time ASC)
LEAD 함수를 사용하여 fullVisitorId(사용자 id)를 파티션화 하여 사용자의 다음 방문 시간을 추출합니다.
[결과]
예시2) 사용자의 체류 시간 구하기
예시 1 에서 구한 visit_time과 next_visittime간의 차이로 체류시간을 추출합니다.
[예시 쿼리]
[결과]
duration : 체류 시간
예시3) 사용자별 주문 총금액과 주문 건수 구하기
hits레벨의 EVENT가 발생될 때 별도 customDimension을 활용해 revenue 값을 추출
세션내 주문 당 주문 건수 1로 정의
사용자 ID별 총 주문금액과 총 주문 건수 추출
[예시 쿼리] – 테이블은 GA의 테이블
[결과]
이상으로 데이터 엔지니어링을 위한 빅쿼리 사례를 살펴보았는데요, 비즈스프링의 웹분석 솔루션을 통해 수집한 데이터가 아닌 GA360으로 수집한 데이터를 활용하여 사용자 데이터를 분석하고 인사이트를 발굴할 수 있었습니다.
현재 GA360을 사용 중이지만 수집한 데이터에서 인사이트를 얻고 싶다면, 비즈스프링의 데이터 엔지니어링 서비스를 통해 더욱 의미 있는 데이터 분석을 경험해보세요.
비즈스프링과 파트너십을 통해 제공되는 제휴 콘텐츠입니다.