Post

로그 데이터 - ML 데이터 파이프라인

로그 데이터 - ML 데이터 파이프라인

📊 IoT 데이터 파이프라인 구축

1. 데이터 수집 (Data Collection) 🚀

  • ELK Stack의 Logstash가 IoT 센서와 외부 소스의 데이터를 실시간으로 수집합니다.
  • 수집된 데이터는 Elasticsearch에 저장되어 실시간 검색 및 분석이 가능해집니다.
  • 원본 데이터는 데이터 레이크에도 저장되어, 후속 Spark 및 머신러닝 모델이 원본 데이터를 사용할 수 있습니다.

2. 데이터 저장 및 정리 (Data Storage & Cleansing) 📂

  • MySQL에 메타정보와 요약 정보가 저장되어 빠른 접근이 가능합니다.
    • 예: 센서 ID, 측정 시간, 기본 요약값 등
  • 데이터 레이크에 저장된 원본 데이터를 Spark를 통해 빠르게 정리하고 분석에 필요한 정보만 추출합니다.

3. 데이터 전처리 및 변환 (Data Preprocessing & Transformation) 🛠️

  • Spark는 원본 데이터를 분석용으로 변환하여 불필요한 데이터를 제거하고 이상치를 처리합니다.
  • 정제된 데이터는 데이터 웨어하우스에 저장되어 이후 분석과 모델 학습에 활용됩니다.

4. 데이터 웨어하우스 저장 (Data Warehouse Storage) 📦

  • Spark로 정제된 데이터는 분석용으로 MySQL 데이터 웨어하우스에 저장됩니다.
  • 이로 인해 데이터 조회와 분석이 더욱 빠르고 효율적으로 이루어집니다.

5. 머신러닝 모델 학습 (Machine Learning Model Training) 🤖

  • Spark MLlibPython 라이브러리를 통해 데이터가 준비되면 머신러닝 모델을 학습합니다.
    • 예: 온도와 습도 데이터를 사용해 특정 조건 예측 모델 학습
  • Spark의 분산처리를 통해 대규모 데이터도 빠르게 학습할 수 있습니다.

6. 모델 배포 및 예측 (Model Deployment & Prediction) 🔍

  • 학습된 모델은 실시간 데이터에 Spark 스트리밍ELK로 적용되어 예측을 수행합니다.
  • 예측 결과는 Elasticsearch에 저장되어 Kibana를 통해 실시간 시각화되고, 사용자는 이를 기반으로 상황을 즉각 파악할 수 있습니다.

7. 결과 저장 및 피드백 루프 (Result Storage & Feedback Loop) 🔄

  • 예측된 결과와 원본 데이터는 MySQL에 저장되어 성능 검증 및 조회에 활용됩니다.
  • ELKSpark는 예측 성능을 모니터링하며 필요 시 새로운 데이터를 추가해 모델을 재훈련합니다.

8. 시각화 및 보고 (Visualization & Reporting) 📈

  • Kibana로 실시간 데이터와 예측 결과를 대시보드에서 시각화하여 데이터 패턴과 결과를 쉽게 이해할 수 있습니다.
  • MySQL의 정리된 데이터를 바탕으로 보고서 형태로 분석 결과가 자동 생성됩니다.

🔗 전체 파이프라인 요약

  • ELK (Logstash & Elasticsearch): 실시간 데이터 수집 및 시각화 지원
  • MySQL: 메타데이터 저장, 데이터 조회 및 분석에 최적화
  • Spark: 데이터 전처리, 변환, 분석, 분산 학습 수행
  • 머신러닝 (ML): 모델 학습, 실시간 예측 및 결과 제공
  • Kibana: 실시간 시각화 대시보드로 데이터 및 예측 결과 표시

이 데이터 파이프라인은 IoT 데이터가 수집, 저장, 분석되어 실시간 비즈니스 의사결정에 활용될 수 있도록 돕습니다! 🎉

This post is licensed under CC BY 4.0 by the author.