クラウドサービス

AWS IoT Analytics

2025年12月15日に提供終了したIoT分析サービス。既存の取り込み・変換・保存・分析要件を、現行のAWSサービスへ移行するための記録。

中級SAA-C03DEA-C01運用上の優秀性コスト最適化
最終更新: 2026-07-29公式ドキュメント
3つの要点
TL;DR
  1. IoT Analyticsは2025年12月15日に提供を終了した。
  2. 取り込み、変換、保存、分析の要件を移行先へ対応付ける。
  3. IoT Core、Data Firehose、S3、Glue、Athena等で再構築する。

解決する課題

  • IoTデバイスから上がる大量で不揃いな生データを、欠損や外れ値を含んだまま分析するのが難しい
  • データの前処理(フィルタ・補完・変換)のパイプラインを、ETL基盤を自前で構築せずに用意したい
  • センサーデータを時系列に蓄積し、SQLやノートブックで分析・可視化できる状態にしたい

主要概念と用語

  • チャネル(Channel): 生データを受け取って未加工のまま貯める入り口。IoT Coreのルールや直接送信でメッセージを取り込む
  • パイプライン(Pipeline): チャネルのデータに前処理を順に適用する処理の連なり。フィルタ、属性の追加・削除、Lambda呼び出し、メッセージの補完などのアクティビティを並べる
  • データストア(Data Store): パイプラインを通った処理済みデータを蓄積する保存先。ここに溜まったデータがクエリの対象になる
  • データセット(Data Set): データストアに対するクエリ結果。SQLで抽出するSQLデータセットと、コンテナで処理するコンテナデータセットがある
  • アクティビティ(Activity): パイプライン内の個々の処理ステップ。メッセージの選別や項目の変換、外部ロジックの呼び出しを担う
  • メッセージの補完(Enrichment): デバイスレジストリの属性などを参照し、メッセージに文脈情報を付け足す処理

仕様・制限・クォータ

  • 提供終了前は、チャネル → パイプライン → データストア → データセットという一方向の構成だった
  • IoT CoreのルールやAPIで取り込み、フィルタ・補完・Lambda変換後にSQL等で分析していた
  • 2025年12月15日以降はコンソール、API、リソースへアクセスできないため、この構成を新規利用できない
  • 移行後は各サービスのメッセージサイズ、配信速度、保持期間、再試行、同時実行のクォータを個別に確認する
2025年12月15日に提供終了

新規顧客の受付は2024年7月24日に終了し、サービスも2025年12月15日に終了しました。新規採用や既存リソースの操作はできません。IoT Core、Amazon Data Firehose、S3、Glue、Athena、Amazon Quick Suiteなどへ役割を分解して移行します。

内部の仕組み

横にスクロール

デバイスデータをIoT Coreで認証し、ルールと配信処理を経てS3へ保存し、GlueとAthenaで分析する移行後の経路
提供終了後は、IoT Analyticsのチャネル・パイプライン・データストア・データセットを、取り込み・変換・保存・分析へ分解して再構築します。再送、重複排除、保持期間、処理失敗時の退避先を利用組織が設計します。

提供終了前のAWS IoT Analyticsは、IoTデータを分析可能な状態へ整える一連のデータパイプラインでした。チャネルが生データを受け取り、パイプラインがフィルタ、属性変換、Lambda処理、レジストリ情報の補完を順に適用していました。

処理済みデータはデータストアへ蓄積され、データセットとしてSQLやコンテナ処理へ渡されていました。移行では、この名称をそのまま再現するのではなく、取り込みをIoT Core、配信をData Firehose、保存をS3、カタログをGlue、問い合わせをAthena、可視化をQuick Suiteというように責務へ分解します。

退避済みデータを正として照合する

終了後はチャネルへ戻れません。事前にS3へ退避した生データ、スキーマ、変換定義、SQL、実行間隔を移行台帳へ残し、新旧の件数・時刻範囲・集計値を照合します。

設計パターン / ベストプラクティス

  • 取り込みと保存を先に切り替える: IoT CoreのルールからData FirehoseやS3へ並行出力し、欠損なく保存できることを確認する
  • 変換は再実行可能にする: LambdaやGlueの処理へ入力識別子を渡し、再試行しても重複しないようにする
  • 生データを不変で残す: 変換後だけでなく、元のペイロードと受信時刻をS3へ保存して再処理に備える
  • スキーマ変更を分離する: Glueの表定義を版管理し、古い端末と新しい端末の形式を同時に読める移行期間を置く
  • 新旧結果を照合する: 件数、最小・最大時刻、代表集計を比較してから旧処理を廃止する

運用・監視

  • IoT Coreのルール失敗、Data Firehoseの配信失敗、S3への到着遅延をCloudWatchで監視する
  • 失敗レコードをS3の隔離領域へ退避し、原因修正後に再処理できるようにする
  • Athenaの実行失敗と走査量、Glueのスキーマ変更、Quick Suiteの更新失敗を個別に監視する
  • 端末送信数、受信数、保存数、分析対象数を突き合わせ、経路ごとの欠損を検知する

コスト

  • IoT Analyticsの料金ではなく、IoT Core、Data Firehose、Lambda、S3、Glue、Athena、Quick Suiteを個別に見積もる
  • S3の圧縮・列指向形式とライフサイクル、Athenaのパーティションで保存量と走査量を抑える
  • 再試行や二重配信にも費用が発生するため、失敗率と重複率をコスト監視へ含める

セキュリティ

  • 移行先のIoT Core、Data Firehose、Lambda、Glueには最小権限の実行ロールを設定し、受け渡すS3プレフィックスや暗号鍵を限定する
  • 退避した生データ、変換定義、SQL、移行台帳はS3で暗号化し、保持期間と削除権限を分ける
  • 通信はTLSで保護し、KMS鍵を使う場合はサービスごとの復号・データキー生成権限を必要な経路だけに許可する
  • CloudTrailと各サービスの配信ログを保存し、移行後の構成変更と失敗レコードの再処理を追跡できるようにする

関連サービス・比較

観点IoT AnalyticsIoT Core ルールエンジン
主な役割IoTデータの前処理と蓄積と分析メッセージのフィルタと他サービスへの転送
前処理パイプラインで補完や変換を連ねるSQL風の選別と単純な加工が中心
データ蓄積データストアに時系列で蓄積する保持せず他サービスへ受け渡す
典型用途センサーデータの整形と分析基盤受信メッセージのルーティング

移行後の確認例

# 移行先S3の保存件数と最新オブジェクトを確認
aws s3api list-objects-v2 \
  --bucket <telemetry-bucket> \
  --prefix raw/ \
  --query "{Count:KeyCount,Latest:reverse(sort_by(Contents,&LastModified))[0]}"

# Athenaの移行後クエリ実行状況を確認
aws athena list-query-executions \
  --work-group <work-group> \
  --max-results 10

AWS Service

AWS IoT Analyticsを実務で読む

TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。

解決すること

IoT

比較で見る軸

クラウド: AWS / カテゴリ: IoT / 難易度: intermediate

導入後に効く点

取り込み、変換、保存、分析の要件を移行先へ対応付ける。

先に潰すリスク

サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。

数字・仕様の読み方
クラウド
AWS
カテゴリ
IoT
難易度
intermediate
関連資格
SAA-C03 / DEA-C01
設計柱
operational / cost

判断チェックリスト

  • 自社の用途が「IoT / operational」に近いか確認する。
  • 強みである「IoT Analyticsは2025年12月15日に提供を終了した。」が本当に評価軸になるか確認する。
  • 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

IoToperationalcostSAA-C03DEA-C01