개인프로젝트/twitter 실시간 데이터 프로젝트(ELK stack)

1.프로젝트 개요

장경훈 2022. 10. 13. 14:27

*프로젝트명 :  날씨에 대한 실시간 데이터 분석  

 

  • 프로젝트 계기: 엘라스틱 스택 개발부터 운영까지』 책을 통해서 알게 된 ELK stack에 대한 개념과 책에 있던 실습내용들을 종합해서 파이프라인을 만들어보면서 나의 ELK stack에 대한 이해와 활용 능력을 향상시키고 싶어서 프로젝트를 시작하게 되었다. 
  • 주제 선정 이유 : 처음에는 망사용료에 대한 사람들의 찬반의견에 대해서 분석해보려고 했으나 실시간 데이터가 수집되지 않아서 현재 환절기이기도 하며 변덕스러운 날씨에 대한 사람들의 실시간 트윗을 분석해보고자 한다.   

*파이프라인 구성 

  • 수집 -  twitter api -> python -> filebeat
  • 변환, 전송 - logstash
  • 저장, 인덱싱 - elasticsearch
  • 시각화 - kibana
  • 인프라 - docker 
  • 감정분석 모델 - matthewburke/korean_sentiment (Hugging Face사이트) 

   - 원래 가지고 있던 생각은 twitter api 에서 바로 logstash로 보내는 파이프라인을 생각하고 구성하려 했으나 간단한 테스트를 해보니 twitter api가 v2버전이 되면서 logstash input이 정상적으로 작동하지 않는 문제가 발생하여 python로 api를 받은 후 filebeat으로 logstash로 보내지는 파이프라인을 구성했다. 

파이프라인 구성 이미지

*프로젝트 일정

  • 2022-10-13 ~ 2022 10-31
  • 현재 공공데이터 청년인턴을 하고 있어서 시간이 생각보다 많이 없기도 하고 처음으로 해보는 프로젝트이기 때문에 많은 오류를 경험하고 이로 인해서 내가 생각했던 것보다 많은 시간이 소요될 것으로 예상된다. 그렇기 때문에 일단은 이번 달을 목표로 완성시키려고 한다. 하지만 이 일정은 더 미뤄질수도 또는 더 빨리 완성시킬 수도 있을 것 같다.

 

*개인적인 목표

  • 현재 쿠버네티스에 대한 기술 이해도가 없기 때문에 docker로 우선 구현하지만 일단 성공적으로 완성시킨 후 쿠버네티스에 대해 공부한 뒤 클라우드 서비스(GCP,AWS) 등을 사용해서 이 프로젝트를 다시한번 구현해보려고 한다.
  • 실제 현업에서는 이것보다 더 복잡한 파이프라인으로 구성되어 있을거라고 생각한다. 나에게는 아직 간단하지 않지만 이번 프로젝트를 성공적으로 마무리하고 한단계 더 구현하기 힘든 프로젝트에 도전해보고 싶다.