TL

Cloud Service

Amazon Timestream

IoTや運用メトリクス向けのフルマネージドな時系列データベース。時刻付きデータの大量書き込みと期間分析を高速に処理する。

中級DEA-C01パフォーマンス効率コスト最適化
最終更新: 2026-06-14公式ドキュメント ↗
TL;DR要点だけ先に
  • 1.時刻をキーに大量のデータを書き込み、期間や傾向を分析する時系列専用のDB。
  • 2.メモリストアと長期保存のマグネティックストアを分け、保持期間で自動的に移動する。
  • 3.サーバーレスで運用負担が小さく、IoTセンサーや運用メトリクスの蓄積と分析に向く。

解決する課題

  • IoTセンサーやアプリのメトリクスのように、時刻付きデータが大量かつ高頻度に発生する用途を扱いたい
  • リレーショナルDBでは書き込み負荷やストレージ増大で運用が苦しくなる時系列データを効率良く保存したい
  • 直近データは高速に、古いデータは安価に保持し、期間集計や傾向分析を運用負担なく実現したい

主要概念と用語

  • 時系列データ: 時刻と値の組が連続して並ぶデータ。センサー値、メトリクス、ログのカウントなどが代表例
  • データベース / テーブル: 時系列レコードを格納する論理的な入れ物。テーブル単位で保持ポリシーを設定する
  • ディメンション: レコードを識別するメタデータ(例: デバイスID、リージョン、ホスト名)
  • メジャー: 時間とともに変化する測定値そのもの(例: 温度、CPU使用率)
  • メモリストア: 直近の書き込みと高速クエリ向けの保持層。短期間のデータを保持する
  • マグネティックストア: 長期保存とコスト効率向けの保持層。古くなったデータを保持する
  • 保持期間: メモリストアとマグネティックストアそれぞれで、データを保持する長さを定義する設定
  • スケジュールドクエリ: 定期的に集計を実行し、結果を別テーブルへ書き出すことで分析を高速化する仕組み

仕様・制限・クォータ

  • サーバーレスで提供され、容量のプロビジョニングやサーバー管理は不要。書き込み・保存・クエリの利用量に応じて課金される
  • テーブルごとにメモリストアとマグネティックストアの保持期間を設定し、期間を過ぎたデータは自動でマグネティックストアへ移動、または削除される
  • データは時刻、ディメンション、メジャーで構成され、時刻順の書き込みと期間範囲のクエリに最適化されている
  • 1リクエストあたりのレコード数や、1レコードあたりのディメンション・メジャー数などには上限がある。具体的な数値は変動するため、最新値は公式ドキュメントで確認する

内部の仕組み

Timestreamは新しく書き込まれたデータをまずメモリストアに保持し、直近データへの低レイテンシな書き込みとクエリに最適化します。設定した保持期間を過ぎると、データはコスト効率の高いマグネティックストアへ自動的に移動され、長期保存と過去分析に使われます。この二層構造により、利用者は古いデータの移送やアーカイブを手動で管理する必要がありません。クエリは時刻範囲とディメンションで効率良く絞り込めるよう設計されており、ストレージと演算が分離されているため、書き込みとクエリを独立してスケールできます。

保持期間の設計

メモリストアは短く、マグネティックストアは長く設定するのが基本です。直近データを多用するならメモリ保持を厚くし、長期の傾向分析が中心ならマグネティック側を長くします。保持期間は後から変更できるため、運用しながら調整します。

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

  • IoTセンサーの計測値、アプリやインフラの運用メトリクス、クリックストリームなど時刻が主軸の用途で採用する
  • ディメンションには検索やグルーピングに使う識別子を設計し、カーディナリティが過度に大きくならないよう配慮する
  • 頻繁に実行する集計はスケジュールドクエリで事前に計算し、結果テーブルを参照させてコストと応答時間を下げる
  • ストリーミングの取り込みには、データの整形や配信に適したサービス(例: ストリーム処理やパイプライン)と組み合わせる
  • 保持期間を用途に合わせて設定し、不要に長く高速層に置かない

運用・監視

  • CloudWatchで書き込みやクエリの状況、エラー、スロットリングなどを監視する
  • 書き込み失敗時の取りこぼしを防ぐため、再試行とエラーハンドリングをアプリ側に実装する
  • 重いクエリは時刻範囲を絞り、必要な期間だけをスキャンするようにして応答時間とコストを抑える
  • スケジュールドクエリの実行結果や失敗を監視し、集計テーブルが想定どおり更新されているか確認する

コスト

  • 主なコストは書き込み量、保存しているデータ量(メモリストアとマグネティックストアで単価が異なる)、クエリでスキャンしたデータ量
  • メモリストアは高速だがマグネティックストアより割高なため、保持期間を適切に区切ることが費用最適化の鍵になる
  • 頻出の集計をスケジュールドクエリで事前計算すると、繰り返しの大きなスキャンを避けてコストを下げられる
  • 料金は変動するため、最新の単価は公式の料金ページで確認する

セキュリティ

  • アクセス制御はIAMで行い、最小権限の原則に従って書き込み・クエリの権限を付与する
  • 保存データはKMSで暗号化され、通信はTLSで保護される
  • VPCエンドポイント経由でプライベートにアクセスを構成し、ネットワーク到達範囲を絞る
  • 操作の監査にはCloudTrailを利用し、誰がいつ何をしたかを記録する

Well-Architected の観点

  • パフォーマンス効率: メモリストアとマグネティックストアの二層構造により、直近データの高速処理と過去データの分析を両立する
  • コスト最適化: 保持期間の調整とスケジュールドクエリの活用で、高速層の保存量と繰り返しスキャンを抑える
  • 運用上の優秀性: サーバーレスで容量管理やデータ移送が自動化され、運用の手間が小さい

試験で問われるポイント

頻出
  • 時刻付きの大量データの蓄積と期間分析が中心なら時系列DB=Timestreamを選ぶ
  • IoTセンサーや運用メトリクスのユースケースで想起する
  • **メモリストア(直近・高速)とマグネティックストア(長期・安価)**の二層と保持期間の自動移動を理解する
  • リレーショナルDBやキーバリューDBでは非効率な時系列ワークロードの置き換え先として問われる

関連サービス・比較

観点TimestreamDynamoDB
データモデル時系列(時刻が主軸)NoSQL(キーバリュー/ドキュメント)
得意な処理期間集計・傾向分析キーによる高速な読み書き
ストレージ階層メモリとマグネティックの二層を自動移動単一の管理(階層分けは利用者側)
主な用途IoT計測値・運用メトリクス高スループットなキーバリュー処理

ハンズオン / CLI例

# データベースを作成
aws timestream-write create-database \
  --database-name iot_metrics

# テーブルを作成(メモリストアとマグネティックストアの保持期間を指定)
aws timestream-write create-table \
  --database-name iot_metrics \
  --table-name sensor_data \
  --retention-properties "MemoryStoreRetentionPeriodInHours=24,MagneticStoreRetentionPeriodInDays=365"

# 直近の温度データを時刻範囲で集計するクエリ
aws timestream-query query \
  --query-string "SELECT bin(time, 1h) AS t, avg(measure_value::double) AS avg_temp FROM iot_metrics.sensor_data WHERE time > ago(24h) GROUP BY bin(time, 1h) ORDER BY t"

AWS Service

Amazon Timestreamを実務で読む

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

解決すること

データベース

比較で見る軸

クラウド: AWS / カテゴリ: データベース / 難易度: intermediate

導入後に効く点

メモリストアと長期保存のマグネティックストアを分け、保持期間で自動的に移動する。

先に潰すリスク

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

数字・仕様の読み方
クラウド
AWS
カテゴリ
データベース
難易度
intermediate
関連資格
DEA-C01
設計柱
performance / cost

判断チェックリスト

  • 自社の用途が「データベース / performance」に近いか確認する。
  • 強みである「時刻をキーに大量のデータを書き込み、期間や傾向を分析する時系列専用のDB。」が本当に評価軸になるか確認する。
  • 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
  • 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
  • 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
  • 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。

次に確認する観点

データベースperformancecostDEA-C01