본문 바로가기
실시간 데이터 수집

실시간 데이터 수집-1 (시나리오)

by Sunyoung95 2024. 2. 11.
실시간 데이터 수집을 위한 시나리오를 구축한다.
어떤 데이터를 수집할 지, 가공을 어떻게 할 것인지, 어디에 저장할 것인지, 시각화는 어떻게 할 것인지.

 

 

Architecture

수집대상

  • 실시간 환율 api : 실시간 환율 정보를 가져온다. (링크)

수집기

  • Filebeat : json log file 형태로 기록되고 있는 실시간 환율 데이터를 수집하여 kafka topic에 저장한다.
  • Kafka : Topic에 실시간 데이터를 queue 방식으로 저장한다. 
  • Sink Connector : Topic에 저장된 데이터를 Sink Connector를 활용하여 Target DB(Elasticearch)에 저장한다.
  • Prometheus : node와 Kafka의 Metric 수집에 사용.

가공

  • Spark Streaming : kafka의 topic의 데이터를 가공하여 Elasticsearch에 저장한다.

Storage (저장소)

  • Elasticsearch : 수집한 실시간 환율 원본데이터와 Spark streaming으로 가공한 데이터를 document 형태로 저장한다.

Monitoring

  • Grafana : 여러 커넥터를 지원하는 시각화 툴, Prometheus와 Elasticsearch에 저장된 데이터로 대시보드를 생성한다.

Next

  • 각 어플리케이션 호환 버전 조사
  • Confluent 설치

댓글