데이터 파이프라인 개요

희원·2023년 1월 31일
0

1. 데이터 생성

데이터

  • 서비스 운영에 필요한 서비스 데이터: 따로 데이터 파이프라인을 거치지 않음, 데이터 보안 관리에 더 신경 (Mysql, AWS S3에 있는 데이터)
  • 서비스에서 발생한 로그 데이터: 서비스를 운영하면서 생기는 모든 행위를 기록으로 남긴 데이터
    • 백엔드 서버로그: 백엔드 개발자들이 서버에 발생한 이상 징후나 패턴을 찾을 때 사용
    • 클라이언트 로그: 고객들의 행동을 분석하는 데 사용

2. 데이터 수집

프론트엔드(웹, 앱)에서 생성된 유저 행동 데이터 → 1. SAAS 분석 툴 2. 회사 데이터 수집 서버로 전송

  1. SAAS 분석 툴
    : 규격에 맞게 데이터 전송시 트래픽에 관계없이 안전하게 데이터를 저장, 분석 & 시각화를 해줌 (많은 IT 회사들이 SAAS 데이터 분석 제품 사용함)
    : Google Analytics, Amplitude 등

  2. 회사 데이터 수집서버
    : 위 분석 툴만 사용하면 커스터마이징 불편 → 자체적 인프라 구축 (외부 트래픽 차단 프로그램에서 자유롭고 데이터 손실 최소화)

    수집서버: 데이터가 흐르는 중간 매체(미들웨어), 수집 서버 솔루션으로 AWS의 Kinesis, Apache의 Kafka 등이 있음
    → 데이터는 수집 서버를 거쳐서 데이터베이스에 저장시키거나 데이터를 가공하는 서버로 전달

3. 데이터 가공 후 저장 (ETL)

  • Extract: 흩어져 있는 데이터들을 추출하는 과정. 보통 클라우드 서비스에서 손쉽게 데이터를 추출하도록 많이 자동화 되어있음
  • Transform: 데이터를 가공하는 작업. 다양한 데이터들을 각 데이터 형식에 맞게 데이터를 변형해줘야 하고, 회사에서 지향하는 데이터 목적성에 맞게 필터링하는 작업이 필요함
  • Load: 최종적으로 데이터 변형이 완료됐다면 데이터 웨어하우스에 적재(Load)하는 과정.
    *데이터 웨어하우스: 규칙적(Relational)으로 데이터를 저장하도록 돕는 일종의 데이터베이스 -> 대용량 데이터 관리에 최적화

*ETL 프로세스 자동화 SAAS 제품: 대표적으로 FiveTran, Panoply 등이 있으며, 더 로우 레벨로 개발하는 대신 확장성이 높은 Airflow도 업계에서 점점 표준이 되고 있음

*ELT 프로세스: Transform 과정의 비용이 높아, 먼저 데이터를 한곳에 적재(L)한 후에 필요에 따라 Transform함. (이때 데이터들을 빠르게 저장하는 공간을 데이터 레이크라고 함)

4. 데이터 시각화(BI)

데이터 시각화 템플릿과 분석할 수 있는 환경을 제공해주는 도구인 Business Intelligence(BI) 사용
ex. Tableau, Power BI, Google Data Studio 등

출처: https://maily.so/grabnews/posts/117cec

0개의 댓글