본문 바로가기

Database/Data

데이터 파이프라인(Data Pipeline)

데이터 파이프라인(Data Pipeline)

  • 데이터를 차례대로 전달해 나가는 구성된 시스템
  • 데이터를 모으는 데이터 수집부터 시각화까지의 전 과정
  • 데이터 파이프라인은 ETL을 포함하는 광범위한 용어

1️⃣ 데이터 수집

  • 데이터는 여러 시스템에서 생성되고 각각 다른 형태
  • 데이터의 전송 형태
  1. Bulk Type → 이미 존재하는 데이터를 정리해 추출하는 방법. DB와 파일 서버 등 정기적으로 데이터 수집하는 형태
  2. Streaming → 차례차례 생성되는 데이터를 끊임없이 보내는 방법.

2️⃣ 데이터 처리

  • 데이터를 수집하고 저장하기 전에 처리하는 과정이 필요 
  • 유용하게 활용되었던 기술은 '배치(batch) 위주의 기술'. 매일 적제되는 데이터 기준, 새벽에 전 날 데이터의 실적 등을 정리하는 형태
  • 배치 프로세스와 실시간 데이터를 쌓아서 실시간에 가까운 실적 등의 추세를 파악할 수 있는 스트림 처리가 주류가 되고 있음

3️⃣ 분산 스토리지

  • 수집과 처리가 된 데이터는 '분산 스토리지(저장소)'에 저장
  • 분산이라는 의미는 여러 대로 구성된 서버와 디스크로 구성된 스토리지 시스템을 의미한다
  • 대표적인 것으로 Object Storage로 AWS로 서비스되는 S3 서비스가 있음

4️⃣ 분산 데이터 처리

  • 대표적인 분산 처리 프레임워크는 MapReduce
  • 데이터의 처리(또는 집계)를 하기 위한 가장 일반적인 방법은 SQL을 사용하는 것
  • hive와 같이 SQL을 통해 MR 사용 → 쿼리엔진. 최근에는 Spark, Presto 등 더 고속의 쿼리 엔진 개발되어 사용
  • 데이터 웨어하우스 제품 이용

5️⃣ Workflow 관리

  • 전체적인 데이터 파이프라인의 동작 관리

참고

 

반응형