빅데이터
- 데이터 수집
크롤링(웹), 이미 정리되 있는 데이터 파일(kaggle, 공공데이터, 데이터사이트)
- 전처리
- 데이터 EDA(다양한 각도, 이해하는 과정) -> 데이터를 거르는 과정 -> 통계적으로 자료를 직관적으로 볼 수 있도록 하는 과정
- 변수 선정(중요) 변수 이름 선정 정수형 문자열
- 이상치 결측치 제거 의미없는 값 빼기
- 분석(가설을 세우고 검증을 하게 되는데 이 과정에 도움)
- 위 변수간 속상 간의 패턴을 찾고(상관관계와 시각화) / 기초통계분석, 회귀분석, 군집분석
- 시각화 -> 직관적으로 볼 수 있게 하는 과정
IoT
-
통신에는 MQTT 통신을 사용, 프로그램은 Mosquitto
-
기기나 센서의 경우 종류가 많고 제어 방법이 각각 달라 프로젝트에 필요한, 적합한 기기나 센서를 찾아야 한다.
-
MQTT 통신 개념

💫 Broker (중간 다리 역할) / publisher (데이터 전송) / Subscriber(데이터를 수신해 작업을 처리)
💫 데이터 전송 시 Topic과 Message를 함께 전송해주어야 한다.
- 브로커를 열어 통신이 가능하게 한다.
- Subscriber가 수신받을 Topic을 정해 구독신청을 한다. 토픽 설정 ex) Iot | Iot/sensor | Iot:camera
( ‘/’, ‘:’) 등의 문자로 구분해서 설정이 가능하다. (추후에 subscribe 작업에서 토픽 구분 가능)
- Publisher가 필요한 때에 Topic과 Message를 전달한다.
- Broker가 Publisher에게 전송받은 토픽을 구분해 해당 토픽을 구독한 Subscriber에게 Message를 전달한다.
- Subscriber가 메시지를 수신해 해당 메시지로 작업을 구분해 진행한다.

Mqtt 통신과 IoT의 경우 센서에 따라 pub를 해야하는 센서가 있고, sub해서 센서를 동작시키는 방식의 센서가 있다.
ex) 라즈베리파이 카메라의 경우 영상을 프레임단위로 publish 해서 서버를 통해 웹이나 앱으로 영상을 전송할 수 있다.
ex) LED의 경우 메시지를 subscribe 해서 수신받았을 때 메시지에 따라 켜거나 끄게 할 수 있다.
클라우드
애플리케이션을 사용자가 접근할 수 있도록 배포/리버전
로컬 가상머신 / AWS / GCP / docker / 깃허브 사용
ex) 장고 애플리케이션 / AWS 이용시
■ 프로그램 - AWS
- 애플리케이션 : 깃허브푸시 + EC2 업로드
- 웹서버(nginx, apache) : EC2 업로드
- DB(MySQL) : AWS RDS(MySQL) 기능에 애플리케이션 연동 + EC2 업로드
- 스토리지 : AWS S3 기능에 애플리케이션 연동 + EC2 업로드
- EC2를 서버로 업로드된 기능들을 배포
부가기능
- 도커 : 완성한 애플리케이션, DB, 웹서버등을 작업환경까지 포함한 이미지(=임시저장)로 만들어 어디서나 동일한 환경처럼 배포/사용이 가능하도록
- 로드밸런싱 : 요청에따라 다른 서버로 분류
- 오토스케일링 : 트래픽이 과해지면 자동으로 서버수를 조절하도록
- 보안 / 도메인 생성 등