Q3) 이벤트 데이터 로그 설계(Event Taxonomy)의 주요 구성 요소는 무엇이며, 각 요소가 어떤 역할을 하는지 설명해 주세요.
1. Event Taxonomy(이벤트 로그 설계)란?
- 서비스에서 발생하는 사용자 행동을 일관된 구조로 정의하고 기록하는 체계
- "무슨 행동을 어떻게 기록할 것인가?"를 정하는 것
2. 구성 요소 5가지
1. Event Name(이벤트 이름)
- 무슨 행동이 발생했는가
- ex.
signup_completed
product_viewed
purchase_completed
- 역할
- 중요 포인트
- 일관된 네이밍 규칙 필요(snake_case 등)
- 동사 + 객체 구조 권장
clicked_button ❌
button_clicked ✔️
2. User Identifier(사용자 식별자)
- 누가 행동했는가
- ex.
user_id
device_id
anonymous_id
- 역할
- 사용자 단위 분석 가능
- Retention / Funnel / Cohort 분석 필수
- 중요 포인트
- 로그인 전/후 식별자 연결 중요
- 중복/누락 방지
3. Timestamp(시간 정보)
- 언제 발생했는가
- ex.
- 역할
- 순서 분석(Funnel)
- 시간 기반 분석(Retention, Cohort)
- 중요 포인트
- 타임존 통일
- 서버 vs. 클라이언트 시간 차이 고려
4. Event Properties(이벤트 속성)
event: product_viewed
properties:
product_id: 123
category: shoes
price: 59000
- 역할
- 분석의 깊이를 결정⭐
- 세그먼트 / 필터링 가능
- 중요 포인트
- 너무 많으면 복잡
- 너무 적으면 분석 불가
- 적절한 수준이 중요
5. Context(컨텍스트 정보)
- 어떤 환경에서 발생했는가
- ex.
- device: mobile / desktop
- OS: iOS / Android
- app_version
- traffic_source
- 역할
3. 전체 구조 예시
event_name: purchase_completed
user_id: 12345
timestamp: 2026-04-14 10:30:00
properties:
order_id: 987
amount: 120000
context:
device: mobile
app_version: 2.3.1
4. 왜 중요한가?
- Event Taxonomy가 잘 설계되면:
- Funnel 분석 가능
- Retention 분석 가능
- A/B 테스트 가능
- RFM 분석 가능
- 반대로, 잘못 설계하면:
5. 좋은 이벤트 설계 원칙
1. 일관성(Consistency)
2. 확장성(Scalability)
3. 명확성(Clarity)
4. 최소 + 충분(Lean but Rich)
- 필요한 정보는 반드시 포함
- 불필요한 데이터는 제거
이벤트 로그 설계는 사용자 행동을 일관된 구조로 정의하는 것으로,
주요 구성 요소는 이벤트 이름, 사용자 식별자, 시간 정보, 이벤트 속성, 컨텍스트
이벤트 이름은 행동을 정의하고, 사용자 식별자는 개인 단위 분석을 가능하게 하며,
타임스탬프는 시간 기반 분석에 활용, 이벤트 속성과 컨텍스트는 분석의 깊이와 세그먼트 분석 가능
Overall, Funnel, Retention, A/B 테스트 등의 분석을 수행하기 위한 기반
Event Taxonomy = 분석 가능한 데이터를 만드는 설계
😎