-
데이터 측면에서 웹에서 발생하는 데이터 종류 알아보기(Transaction, Metadata, Event, Log, Aggregation)데이터 엔지니어링/데이터 엔지니어링 기본 2023. 1. 7. 17:34반응형
안녕하세요 오늘은 웹에서 발생하는 데이터의 종류에 대해 좀 알아보면 좋을 것같아 이 글을 작성하게 되었습니다. 데이터를 다루다 보면 종류에 맞게 데이터를 설계하거나 머리속에 어느 정도의 수준의 데이터 인지 인지할 필요가 있는데요. 이 글로 아 이런 데이터는 이런 목적의 데이터 구나 하고 넘어가면 좋을 것 같습니다.
Transaction Data
비즈니스나 시스템에서 빈번하게 생성되고 업데이트 되는 데이터를 의미한다. 즉, 트랜잭션 데이터는 일상적인 구매 및 판매 비즈니스 프로세스를 실행하거나 지원하는 동안 다양한 애플리케이션에서 생성되는 데이터입니다.
말이 어려운데 예로 들면, 음악 재생프로그램에 의하면, 다음과 같은 데이터가 Transaction Data입니다.
- 재생 목록에 음악 추가 및 삭제
- 이용자가 월 이용요금 결제
- 환불 요청 등
그래서 Transaction Data는 RDB를 주로 사용합니다.
Metadata
비즈니스나 도메인을 구성하는 추상화된 정보를 나타냅니다. 즉, 데이터에 대한 데이터나 다른 데이터를 설명해 주는 데이터입니다. 음악 재생프로그램에 의하면, 다음과 같은 데이터가 Metadata입니다.
- 회원의 기본 정보
- 음악의 기본 정보
- 아티스트의 기본 정보
- 시스템 설정 정보
Event
하나의 독립된 사건을 알리는 데이터를 의미합니다. 즉, 사용자가 추적 가능하거나 측정 가능하거나 분석 가능한 움직이는 부분과 상호 작용하는 제품, 웹 사이트, 소프트웨어 또는 기타 실질적으로 모든 것의 사용을 설명합니다. 음악 재생 프로그램에 의하면, 다음과 같은 Event Data가 발생 할 수 있습니다.
- 음악 재생을 클릭한 경우
- 웹, 앱 제공 프로그램을 버튼을 클릭한 경우
- 결제가 완료 되고 난 후 몇일 이 지났는지 알려주는 알림의 경우
Log
시스템에 발생하는 모든 행위 데이터를 의미합니다. 즉, 시스템에서 백엔드 처리가 되었던 로직의 로그 일 수도있으며, 중요 정보를 기록한 로그 일 수도 있습니다.
- 실시간 CDC 처리에 사용하는 Transaction Data log
- Kafka에 보내는 메세지 큐 Event data log
- 게임에서 어뷰징 디텍팅을 위한 플레이어 클릭 로그 즉, 시스템상 존재해야하는 시계열 데이터 log 등
Aggregation
데이터 분석을 위한 집계 데이터 입니다. 즉, Sql이던 spark이던 aggregation으로 원하는 형태의 데이터를 추출 하는 것을 의미합니다. 다음의 예가 Aggregation의 예입니다.
- 주식 시장에서 어제의 종가와 현재가를 비교한 가격 상승분 추출 데이터
- 컴퓨터 CPU 사용률 데이터
- 추천을 위한 랭킹 정보 데이터 등
Aggregation을 직접적으로 사용할려면 아래와 같은 데이터 엔지니어링 기술이 필요할 수 있습니다.
- Batch, Streaming Processing 시스템
- OLAP을 위한 분석 플랫폼 시스템
- Partitioning, Sharding 등 데이터 쪼개는 행위
- 추천 알고리즘을 위한 데이터 랭킹 시스템 등
참고 문헌
https://www.tibco.com/reference-center/what-is-transactional-data
https://joyfuls.tistory.com/24
https://understandingdata.com/what-is-event-data-and-how-do-you-use-it/
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=innerbus_co&logNo=221230402240
반응형'데이터 엔지니어링 > 데이터 엔지니어링 기본' 카테고리의 다른 글
모던 데이터 엔지니어링 아키텍처 알아보기(data engineering loadmap) (0) 2022.07.08