본문 바로가기
GrowthHack/BigQuery

스타트업 - DW 구축 / 로그설계

by bents 2021. 3. 4.

다양한 데이터 스토리지가 존재한다. 

 

1. 다양한 데이터 

 - 1st Party data [링크]: 기업 내부 데이터 = CRM 데이터 = 서비스로그(고객관리정보) + 행동로그(웹/앱 트랙킹 정보)  

 - 2nd Party data : 타사 내부 데이터. ~= 광고 플랫폼 데이터 ; 페이스북, 구글, 카카오, 네이버

 - 3rd Party data:  데이터 수집/가공 전문기업;DMP의 데이터 ; 오라클의 Bluekai,Adobe Audience Manager, Salesforce, Lotame DMP 

 

2. 다양한 데이터 저장소

; 데이터 레이크, 데이터 마트, 데이터 베이스, 데이터 웨어하우스 용어 참 많다.

; 통합해서 데이터 저장소(원본)라고 통칭

- RDBMS(정형데이터), MongoDB(비정형데이터), BigQuery(비정형), AWS S3(비정형)

 

분석할 수 있는 형태의 데이터를 만들자.

 

0. 원본 데이터를 "가공할 수 있는 저장소"로 이관한다.

1. 쿼리가능한 DW를 만든다

2. 정규화RDBMS형태의 DM을 만든다. (건너뛰어도 될 듯)

3. Report를 빠르고 쉽게 할 수 있는 데이터 테이블 을 만든다. [BigQuery 링크][GA+FB 링크]

4. 이 모든 과정을 스케줄링(자동화)해놓아야 한다.

UDF(User Defined Function) 만들어서 테이블만들기
파이썬으로 테이블 생성하는 빅쿼리를 주기적으로 실행하면 유료서비스 안쓰고도 가능함.

[참고] Airflow를 통해 데이터 통합 수집/저장 시스템 만들기[링크]


웹/앱에서 어떤 행동로그를 수집해야 하나?(설계)

 

1. 유저의 Engagement를 정의하자.

 

2. Engagement를 측정하는 단위 ; 페이지? 클릭이벤트?

 

1) 페이지단위로 수집가능한가?

- 페이지 단위로 수집하면 "퍼널분석"이 용이하다. 

 

2) 클릭이벤트 단위로 수집가능한가?

; 페이지 단위에서는 알 수 없는 구체적인 정보(property)를 담아야 한다.

 

 - User 상세 정보 : 가입일, 젠더, 위치, 보유한 쿠폰정보(생성일, 만료일)

 - Event 상세 정보

if 이미지/동영상 클릭

: contents owner, uploader, changer, category, pixel, runtime etc ( contents related info), area of page, page

if 생성/업로드 클릭

: contents related info, area of page, page

if 공유하기

: 공유채널,contents related info, area of page, page

 

 

마이리얼트립 예시 [출처; 빅쿼리 링크]

 출처: 마이리얼트립 프로덕트 블로그