기획/데이터
[데이터 로그 설계] 2. 데이터 로그 설계 기본 상식
송에디터
2024. 9. 30. 18:26
[데이터 로그 설계]
1. 로그에 대해 알아보자 https://songsedit.tistory.com/16
지난 글에서 좋은 로그에 대해 알아봤으니, 이제 로그를 설계하는 작업을 해본다.
유저 로그 데이터 예시
user_id가 1인 user가 제품 구매 페이지에서 특정(Component) 버튼을 클릭했다
(특정 상황)을 이벤트로 정의하고, 이벤트의 파라미터는 어떤 것으로 저장해야 하는지 등의 내용을 정의(설계)하는 행동을 데이터 로깅, 이벤트 로그 설계로 부른다.
데이터 로그 설계를 위한 기본 상식
1. 데이터가 어디에서 발생했는지 확인한다
- 서버 / 앱 / 웹
- 서버 : 특정 API의 Request 정보를 기록함
ex) 클라이언트나 웹에서 API 호출 시 저장함 - 앱 : IOS/Android에서 만든 앱의 기록함
ex) 화면에서 유저가 어떤 화면에 진입했는지, 어떤 버튼을 클릭했는지 등 기록함 - 웹 : 웹 브라우저의 기록
ex) 어떤 웹 페이지에 진입했고, 어떤 버튼을 클릭했는지 등 기록함
- 서버 : 특정 API의 Request 정보를 기록함
- 서로 상호 보완적이라서 특정 상황에 맞춰 데이터를 쌓는 것이 좋다.
- 유저가 앱/웹을 어떻게 사용하는지 궁금한 경우 → 앱/웹에 기록
- 서버 API는 동일하지만 요청하는 화면이 다른 경우 → 클라이언트 로그에 심거나, 서버에 기록
- 빠르게 보여줘야 하는 경우 → DB
- 빠르게 보여주지 않아도 괜찮고, 서비스와 관련해 필수가 아닌 경우 → 파일 저장
2. 웹뷰(WebView)
- 앱에서 웹 페이지를 띄우는 것
ex) 앱에서 네이버, 구글 웹페이지 보여주는 것 - 웹으로 GA로 데이터 수집 가능
- 앱 → 웹으로 이동하는 경우 사용
iOS UIWebView, WKWenView 차이 : https://zeddios.tistory.com/332
3. 딥링크(Deeplink)
- 딥링크 : 특정 페이지에 접근할 수 있는 링크
딥링크 종류 : URL Schemes, Universal Link, Deferred Deep Link 등 (https://feel5ny.github.io/2019/09/22/Communication_001/) - 모바일 딥링크 : 모바일 앱의 특정 페이지에 접근할 수 있는 링크
딥링크를 사용하면 앱이 실행되거나, 앱이 설치되어 있지 않으면 스토어, 또는 앱 특정 화면으로 이동 가능
ex) 페이스북 광고 > 광고 클릭 > (앱 설치) > 앱 화면 이동
4. 구글 애널리틱스(Google Analytics)
- 웹사이트의 데이터를 수집, 분석해서 온라인 비즈니스 성과를 측정하고 개선할 때 사용하는 도구
- GA에 쌓인 데이터를 구글 클라우드의 빅쿼리로 추출할 수 있음
5. 구글 파이어베이스(Google Firebase)
- 구글에서 만든 앱, 웹 애플리케이션 개발 플랫폼
- 파이어베이스를 사용하면 빠른 시간 내 비즈니스 로직을 구현해 앱을 만들 수 있음
- GA, Firebase의 이벤트 로깅 형태를 동일하게 변경하고 있으며, Firebase를 사용할 경우 앱 데이터만 설계하면 자동으로 구글 클라우드의 빅쿼리에 저장함
6. 구글 태그 매니저(GTM)
- 다양한 태그를 관리할 수 있는 이벤트 트래킹 도구
- GA를 사용하면 Page_view, Click은 쉽게 수집이 가능하지만 별도로 원하는 데이터가 있을 경우 개발자에게 개발을 요청해야 하지만, 태그 매니저가 연결되어 있으면 개발자가 직접 정의하지 않아도 기획자가 직접 정의해 데이터를 획득할 수 있음
GTM 뜯어보기 https://evan-moon.github.io/2020/04/19/what-is-gtm-google-tag-manager/
7. 배포의 용이성
- 앱의 경우 데이터 로깅에서 이슈가 발생할 경우 다시 배포하는 게 시간이 소요됨 (스토어의 Dependency를 고려해야 함)
- 웹과 서버는 데이터 로깅에 이슈가 발생할 경우 회사 내부에서 다시 배포하는 데 수월한 편
출처
데이터 로그 설계 https://zzsza.github.io/data/2021/06/13/data-event-log-definition/