본문 바로가기
프로덕트 분석

데이터 로그 설계(1) - 기초 개념

by ISLA! 2024. 3. 23.

📍본 포스팅은 [인프런] 카일스쿨의 PM을 위한 데이터 리터러시 강의를 기반으로 요약 / 실습했습니다.

 

데이터 로깅 : 로그(Log)를 기록하는 행위

  • 로깅을 왜 해야 할까? : (서비스의 특정 기능 개발/개선 배포 후) 지표를 기반으로 서비스의 성과를 측정하기 위해 
  • Event taxonomy / Tracking Plan : 어느 시점에 어떤 데이터가 저장될 지 기록

출처 : airbridge

 

1. 데이터의 종류

(1) 서비스 로그 (DB data)

  • 서비스가 운영되기 위해 필요한 데이터
  • 예) 구매 기록, 즐겨찾기 등 고객에게 노출되는 데이터
  • DBMS, DB, Table

 

(2) 유저 행동 로그 (사용자 행동 데이터)

  • 서비스에서 유저의 활동
  • 더 좋은 제품을 위한 '분석'을 위해 필요한 데이터(고객에게 보여줄 필요는 없음)
  • 추천 엔진 만들때 쓰이기도 함
  • 예) Click, View 등

 

2. 데이터의 출처

  • 클라이언트 : 서버에게 통신할 수 있는 기기로, 컴퓨터(웹)이거나 스마트폰 → 서버에 요청(Request, API 호출)
  • 서버 : 클라이언트와 통신해 정보(데이터)나 서비스(기능)을 제공하는 시스템 → 클라이언트에 요청 결과를 반환(Response)
    • 서버에서 정보를 제공하기 위해 데이터베이스에 접근해 데이터를 조회함
    • 데이터베이스 : 대표적으로 MySQL, Oracle, PostgreSQL 등
  • 클라이언트 로그와 서버 로그가 있음

 

3. 데이터의 Target(저장소)

  • DB에 저장 : SQL 쿼리로 바로 확인할 수 있으나, DB에 부하가 감
  • 파일로 저장 : 데이터 파이프라인 구축과 같은 별도의 작업이 필요하지만, DB에 부하를 주지 않음
  • 사용자 행동 데이터는 파일로 쌓는 경우가 많고, 별도의 데이터 저장 작업을 진행함

 

📢 [데이터베이스 Vs. 데이터 웨어하우스]

  • 데이터베이스(RDMBS, 관계형 데이터베이스)
    • 서비스의 운영을 위해 사용됨
    • OLTP(온라인 트랜잭션 처리) : 거래 발생, 데이터 수정 등 빠르게 처리
    • MySQL, Oragle, PostgreSQL 등
  • 데이터 웨어하우스 → 분석에 특화된 저장소라고 생각!
    • 데이터 분석을 위해 사용됨
    • OLAP(온라인 분석처리) : 데이터 분석에 초점(분석 쿼리가 빠름)
    • Redshift(AWS), BigQuery(GCP), Databrick, Snowflake 등
    • 조직 규모에 따라 데이터 웨어하우스가 없는 경우, DB데이터와 유저 행동 로그, 외부 데이터 등을 모으는 과정을 ETL 파이프라인 구축이라고 함

 

4. 배포

  • 서버와 클라이언트 각각 배포 프로세스가 존재
  • 새로운 버전이 배포되면, 그 이후부터 데이터가 기록됨 
    • 서버와 웹페이지는 배포가 자유로우나,
    • 앱은 심사가 필요하며 특히 iOS는 1~2일이 소요됨
  • 웹 : 웹로그 수집을 위한 대표적인 방법으로 GA4를 사용해 로그 수집 및 분석 진행
  • 앱 : iOS, Android로 나뉘며, 네이티브라고 불리기도 함 / Firebase를 사용해 로그 수집 및 분석 진행
    • GA4와 Firebase는 점점 통합되고 있음
  • 웹뷰(Webview) : 앱 안에 존재하는 웹

 

5. 운영 환경과 개발 환경

  • 개발할 때는 운영 환경(Production)과 개발 환경(Dev)을 나눠서 개발함
  • 배포 순서 : 개발 배포(Dev, Staging) → 운영 배포(Prod)
  • 개발 환경에 배포한 경우 → 개발 환경 데이터베이스에 저장됨
  • 데이터, 로그 확인도 개발 환경에서 확인, QA 진행
728x90