aws userday0815 발표용
TRANSCRIPT
IoT 를 위한 AWS 백엔드 서비스 구현 사례장경철
어떤 서비스를 구현 해볼까 ?
아이디어 부터 !!
운동할 때 즐거움과 성과를 극대화 할수 있도록 나의 몸상태 변화를 분석하여 노래를 실시간으로 추천해주는 서비스
어떤 서비스 컴포넌트들이 필요할까 ?
나의 몸상태 변화를 분석하여 노래를 실시간으로 추천해주는 서비스
필요한 컴포넌트들수집 ( 실시간 취합 ), 저장 , 분석 , 공유
컴포넌트 별로 AWS 에서 활용할 수 있는 서비스를 찾아보자
취합
저장
분석
공유
Kinesis
S3, DynamoDB, RDS
EMR, EC2
EC2, SNS, SQS
IoT Device
Sensor
AWS WEB
IoT Device
Mobile심박수감정온도
KinesisEC2EMRS3
RDSDynamoDB
SNSSQS
Bluetooth SpeakerLCD Display
Push Notification
Intel Edison Web Dashboard
1 차 구현 ..
Edison 연동과 데이터 수집 , 분석에 초점
Edison
Sensor심박수온도감정
Kinesis EC2(Aggregation)
Mobile Push(SNS)
DynamoDB
EMR(Report) S3
EC2(API&Dashboard)
AWS Kinesis
대량의 분산 데이터 스트림을 실시간으로 처리하는클라우드 서비스 0.2 초마다 sensor 에서 보내는 데이터를 고민없이 실시간으로 저장 / 처리 할수 있음사용도 매우 간단함
AWS EMR
대량의 데이터 분석을 할수 있게 하는 빅데이터 프로세싱 서비스Kinesis 에 있는 데이터를 직접 읽어서 분석 할 수 있음설치 및 설정에 고민 없이 engine 선택만으로 사용가능실시간성 작업 보다는 레포트 기능으로 활용
AWS DynamoDB
NoSQL 서비스구성과 확장성 고민 없이 바로 사용 가능
AWS S3
Object 기반 고가용성 스토리지 서비스API 로 손쉽게 사용가능
AWS SNS (Simple Notification Service)
Push Notification 서비스 .
API 로 사용이 편리하며 대규모 수신자에게 효과적으로 알람 가능
IoT 디바이스가 Public IP 를 안쓰고 있다면 분석 / 추천된 meta( 노래정보 , 상태정보 ) 값을 어떻게 줘야하지 ?
디바이스 인증 시스템도 필요하지 않을까 ?
펌웨어 패치 , 코드 업데이트와 같은 작업이 발생할건데서비스를 지속 가능하게 운영 할 수 있게 하는 어떤 방법이 있을까 ?
2 차 구현 ...
인증 시스템 부터Device 에서 API 서버로 mac 주소를 가지고 인증 API 요청 !!디바이스를 시작 시켰을때 인증 요청을 하도록
디바이스에 정보 전달은API 서버로 주기적으로 요청해서 정보를 받아 갈수도 있으나 ..고객이 많아진다면 트레픽을 부담 할수 있을까 ?중간에 통신상의 이슈로 데이터를 못 받아갈 수도 있지 않을까 ?데이터 정보 보안은 지킬 수 있을까 ?
그래서 우리는 !!
인증을 요청 할시에 디바이스 별로 독립적인 ㅁㅁㅁ 를 사용하자
AWS SQS (Simple Queue Service)
Message Queue 서비스Message Queue 서버의 구성 / 운영 고민 없이 즉시 사용 가능사용도 매우 편리 하며 요청단위로 과금
Amazon SQS 요청 백만 건 당 0.476 USD
Edison
Sensor심박수온도감정
API & Dashboard
Queue(SQS)
(EC2)
Device 에서 API 서버로 인증 API 요청mac 주소로 인증
인증이 완료되면 API 서버는 AWS 의 SQS(Queue) 에 Queue 를 생성Queue 정보를 Device 에게 Response
Device 는 Queue 정보를 확인 후 Queue 를 확인함Queue 는 Event 발생시 Device 에게 정보 제공을 위함
디바이스 인증
감사합니다