AWS re:Invent 2016のキーノートにて新たなサービスとしてAWS Greengrassが発表されました。
発表と同時にAWS Greengrassのセッションも追加されたのですが、自分は日時を勘違いして参加できず。。。腹いせに自分で使ってみます
AWS Greengrassとは
AWS Lambdaに対応した、IoTデバイスに組み込み可能なソフトウェアです。デバイスにLambdaを組み込めるので、リアルタイムに何か処理をさせたい時なんかに非常に便利。

エッジ側で一時処理ができないか、という話をよくIoT関連の仕事の中でしたりしますが、Greengrassを使えエッジ側の一時処理が楽になりますね。センシングして一時的にデータをフィルタリングしてからデータを送る、という効率的なクラウドへのデータ送付ができそうです。
ちなみに料金表はこちら。どこかできちんと計算したいと思います。(きっとAWS IoTの時のように何か気をつけるべき点があるはず、と思ってます)
早速使ってみる
と思いましたが、Limited Previewのため、すぐに使えるわけではなさそうですね。申し込んでみましたが、返事が来るまでしばらく待つ必要がありそうです。
というわけで他の説明
「Benefits」に書かれていることになりますが、要約するとこんなところでしょうか。
- ローカルでの処理をほぼリアルタイムに実施できる
- オフライン(クラウドとの接続が途切れ途切れな環境)でも動作し、再接続時にすぐ同期してくれる
- AWS Lambdaでプログラムできるので、デバイスプログラミングがシンプルになる
- デバイス側の一時処理でデータのフィルタリングが可能になるので、クラウドの利用料を削減できる
仕組み
公式ページにとてもわかりやすい仕組みの図が載っていました。ARM または x86 architecturesをサポートする、Linuxが動作可能なデバイスが「Greengrass Core」と呼ばれる、各デバイス(AWS IoT SDKインストール済)同士を接続するHUBの役割を担うようです。もしGreengrass Coreのクラウドとの接続が切断されても、各ローカルデバイス同士は接続を保つことができるようです。

AWS IoT Device Shadowsにも対応しているようです。
所感
ぱっと公式ページを見て見ただけですが、かなりデバイス側の処理がやりやすくなりそうな気がしています。IoT分野の開発がますますスピーディにできそうです。
あとは実際に手を動かせる日が来るまで楽しみにしています。
