$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
(ほとんど)ServerlessサービスだけでIoT異常検出デモを作ってAWS Summitで...
Search
Toshiki Terai
July 09, 2024
Technology
0
120
(ほとんど)ServerlessサービスだけでIoT異常検出デモを作ってAWS Summitで展示した話
IoT異常検出~データ分析・可視化を行う基盤をAWSで実装した話
アーキテクチャの中でも特にServerlessサービスの領域にフォーカスをあてて解説
Toshiki Terai
July 09, 2024
Tweet
Share
More Decks by Toshiki Terai
See All by Toshiki Terai
【AWS reInvent 2025 関西組 事前勉強会】re:Inventの“感動と興奮”を思い出してモチベ爆上げしたいです
ttelltte
0
230
[【関西開催】AWS Community Builders Meetup 2025]効率厨大歓喜「EventBridge」について語る
ttelltte
2
72
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
320
【四国クラウドお遍路 2024 in 高知】AWSのIoTサービスを駆使して異常検出デモを作ったお話_DENET寺井_20240907
ttelltte
1
360
【JAWS-UG 大阪 × Amplify Japan User Group】祝☆Amplify ホスティング 大阪リージョン - 『AWS Cloud Quest』という神ゲーについて_DENET寺井_20240613
ttelltte
0
130
【AWS パートナーミートアップ in 大阪】「SageMaker Canvas」で「Bedrock」の基盤モデルをファインチューニングして俳句のウマさを競わせてみた_DENET寺井_20231219
ttelltte
0
550
【緊急開催!サーバーレス座談会 in JAWS-UG 大阪】Lambdaの「プロビジョニング済み同時実行」を試す_DENET寺井_20230924
ttelltte
0
85
【四国クラウドお遍路2023】パタパタプロジェクト-AWSを活用して手軽に画像分析を実装した_20230916
ttelltte
1
510
AWS駆け出しエンジニアがノーコードに触れてみた #JAWS-UG 四国クラウドお遍路(2022-1112)
ttelltte
1
440
Other Decks in Technology
See All in Technology
AI/MLのマルチテナント基盤を支えるコンテナ技術
pfn
PRO
3
250
TypeScript×CASLでつくるSaaSの認可 / Authz with CASL
saka2jp
2
160
Data Hubグループ 紹介資料
sansan33
PRO
0
2.3k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
13
8.6k
Flutter Thread Merge - Flutter Tokyo #11
itsmedreamwalker
1
120
都市スケールAR制作で気をつけること
segur
0
210
『星の世界の地図の話: Google Sky MapをAI Agentでよみがえらせる』 - Google Developers DevFest Tokyo 2025
taniiicom
0
440
確実に伝えるHealth通知 〜半自動システムでほどよく漏れなく / JAWS-UG 神戸 #9 神戸へようこそ!LT会
genda
0
170
"なるべくスケジューリングしない" を実現する "PreferNoSchedule" taint
superbrothers
0
130
Digitization部 紹介資料
sansan33
PRO
1
6.1k
Symfony AI in Action
el_stoffel
2
270
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
Bash Introduction
62gerente
615
210k
Code Review Best Practice
trishagee
73
19k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Practical Orchestrator
shlominoach
190
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Producing Creativity
orderedlist
PRO
348
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
690
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Transcript
Serverless × IoT = ネ申 2024年7月9日 Serverless Meetup Osaka #02
株式会社ディーネット 寺井 (ほとんど)Serverlessサービスだけで IoT異常検出デモを作ってAWS Summitで展示した話
2 自己紹介 • 名前 • 寺井 俊喜(テライ トシキ) • 所属
• 株式会社ディーネット(2022/12~) • AWS 設計・構築業務 • 好きなこと • 音楽、猫、お酒、ゲーム、効率化 • 好きなAWSサービス • Amazon EventBridge • SNS/ブログ • X(@TeraiToshiki) • DENET技術ブログ(t.terai)
今日お話ししたいこと 3
IoT×イベント駆動×サーバーレス →ストリームデータ処理 4 ⇨最高
5 1. 出展したデモの紹介 2. アーキテクチャについて 3. サーバーレスを採用する理由 4. IoTとServerlessを気軽に使うためのTips 5.
まとめ アジェンダ
『AWS Summit Japan 2024』 出展したデモの紹介 6
7 ここら辺に設置 AWS Summit Japan 2024 ブース出展しました!
8 補足:Amazon Lookout for Visionについて https://aws.amazon.com/jp/lookout-for-vision/
9 デモ動画(正常時)
10 デモ動画(異常検知)
11 結局なにやってんの??(図解) Jetson Nano 通過を検知 (トリガー) 撮影 コンテナの1番目が あらへんわ!! 赤
外 線 セ ン サ ー ここだけコンテナが無い 1. コンテナの乗せ忘れ(異常)を検出 2. 検出結果をIoT Core経由でAWSへ送信 3. Lambdaでデータ処理(ラップタイム計測等) 4. QuickSightで可視化 結果データ AWS Cloud
12 結局なにやってんの??(図解) コンテナが乗っていない=台座が見えていることを異常としている ここを学習させている
13 デモ動画(異常検知)※再掲
アーキテクチャについて 14
15 全体構成図
16 全体構成図 - 大まかな機能グループ別色分け
17 全体構成図 - 今回ご紹介する箇所
18 全体構成図 - フロー(1/5) ①IoTデバイスからIoT Coreの指定した IoTトピック(受信箱的なもの)へデータ を送信する
19 全体構成図 - フロー(2/5) ②IoTルールで特定トピックへのデータの受信 をトリガーに特定のアクションを実施する (一連の動作を定義するマニュアル的なもの)
20 全体構成図 - フロー(3/5) ③DynamoDB Streamで変更データ(新旧) を取得してLambdaをトリガー
21 全体構成図 - フロー(4/5) ④受け取った新旧イメージから ラップタイムを算出してTimestream に格納
22 全体構成図 - フロー(5/5) ⑤Timestreamをデータソースとして ラップタイムなどの統計データを 可視化
サーバーレスを採用する理由 23
24 なぜサーバーレスを採用したのか • できるだけ安く済ませたい • 検証~開発期間 コストはあまりかけたくない • できるだけ早く処理したい •
リアルタイムな分析結果が求められる 使った分だけの従量課金制(待機期間のコストが発生しない) イベント駆動型のアーキテクチャでリアルタイム処理
25 ServerlessとIoTを 気軽に使うためのTips
26 ①IoT Coreって意外と簡単に使えるんやで 設定ウィザード的なものが用意されており、簡単にセットアップできる
27 IoTデバイス側に設置するためのサンプルコードも用意されてます ①IoT Coreって意外と簡単に使えるんやで https://github.com/aws/aws-iot-device-sdk-python-v2/blob/main/samples/mqtt5_pubsub.py
28 ②IoTルールはアルバイト用のマニュアルみたいなもんや ①このトピックに入ってきた 一連の動作を定義するマニュアル的なもの ②このデータに対して ③このアクションをする
29 合計23のアクション をサポート (2024/07/04時点) ②補足:IoTルール アクションの一覧
30 ③DynamoDB Streamの特殊(?)な使い方について
31 ③DynamoDB Streamの特殊(?)な使い方について(図解) 2330 17:16:54.312 old Amazon DynamoDB Stream AWS
Lambda IoT action - = 10秒! Amazon Timestream 書込 書込 2331 17:17:04.539 new (17:17:04) new (17:16:54) old
32 ④Timestreamは結構ややこしい… 知らん単語いっぱい・・・ • 時系列データとは。 • LiveAnalytics …?? • InfluxDB
ってなんぞ…
33 ④Timestreamは結構ややこしい… けど以外とシンプル (めちゃくちゃ分かりやすいスライドがあったので拝借…) https://pages.awscloud.com/rs/112-TZM-766/images/20201216_BlackBelt_AmazonTimestream.pdf
34 ④補足:Timestream [for LiveAnalytics] vs [for InfluxDB] キャパシティを気にしなくてもいい という概念の方のServerless 特徴
for LiveAnalytics for InfluxDB コスト 使用した分だけ支払い サーバー起動中コストが発生 スケーラビリティ 自動スケーリング インスタンスタイプの変更 クエリ言語 SQLベースのクエリ InfluxQL、Flux クエリ (InfluxDB の特定の機能が使える)
35 ④補足:Timestream は激安 https://aws.amazon.com/jp/timestream/pricing/
36 ④補足:Timestream は激安 公式料金ページより引用 https://aws.amazon.com/jp/timestream/pricing/
37 ④補足:Timestream は激安(英語ページ →Google翻訳) https://aws.amazon.com/jp/timestream/pricing/ • 100万回書き込んでも約100円 (1KB/回) • TCUの計算はややこしい…が、
Summit期間中の2日間中回しっぱな しでも1ドルいかないぐらいでした (期間中100MB程度の読み取り)
38 ④Timestreamにはサンプルデータベースが用意されてるで • サンプルデータが既に入っている データベースをサクッと作れる →雰囲気を感じるために とりあえず作ってみるとイイかも
39 ④Timestreamにはサンプルデータベースが用意されてるで サンプルデータベースに入っているデータはこんな感じでした SELECT * FROM "test-iot-sample-db"."IoTMulti" WHERE time between
ago(15m) and now() ORDER BY time DESC LIMIT 10
まとめ 40
まとめ 41 • サーバーレスなサービスを組み合わせることで 柔軟でコスト効率の高いアーキテクチャを実装できた • サクッと作って、試して、ダメなら壊して クラウドのメリットを最大限活用できた • サーバーレス最高
AWSアドバンスト コンサルティングパートナー ご清聴ありがとうございました。