2020년 11월 24일 기록
라즈베리파이와 어떻게 통신할지 고민하던 도중 알게 된 aws 서비스이다.
AWS IoT Greengrass를 쓰면, 클라우드의 기능을 로컬 디바이스로 확장시켜(옮겨서?) 사용할 수 있다.
로컬 디바이스 내에서 람다를 쓸 수도 있는 것 같다.
라즈베리파이에서 HTTP 통신도 가능하긴 하지만, 보안상 이게 더 좋다고 한다. 디바이스가 많을 경우 엄청나게 많은 센서들이 있는데 이 센서들이 모두 인터넷망으로 클라우드에 연결되면 네트워크 대역폭이 버티지도 못하고, 데이터 처리 시간도 길어진다. 그래서 IoT 가까이에 있는 네트워크(엣지)에서 1차적으로 데이터를 처리한 후 엣지를 클라우드와 연결해 DB 관련 처리를 하는 방식이다.
그리고 무엇보다 중요한 사실은 AI 모델을 로컬 디바이스 환경 내에서 사용할 수 있다. 마스크를 썼는지 안 썼는지 거의 실시간처럼 빠르게 판단되어야 하는 상황에서 API Gateway와 Lambda까지 왔다갔다하면 조금 느려지지 않을까 걱정했었는데 너무 좋은 기능인 것 같다.
현재 프로젝트는 출입 통제 시스템으로 한 장소에서만 고정되어 사용하는 서비스이지만, 만약 여기저기 이동해야 하는 서비스를 구현할 경우라면 가장 기본적인 ai 모델 예측을 인터넷에 연결하지 않고도 할 수 있다는 장점도 있다.