Amazon Timestream
時系列データの格納・クエリに特化したサーバーレスデータベース
何ができるか
Amazon Timestream は、IoT センサーデータ、アプリケーションメトリクス、運用ログなどの時系列データを効率的に格納・クエリするサーバーレスデータベースです。データを自動的にメモリストア (最新データ) と磁気ストア (過去データ) に階層化し、コストを最適化します。SQL 互換のクエリ言語で時系列関数 (移動平均、補間など) を利用できます。
どのような場面で使うか
IoT デバイスのセンサーデータ格納、アプリケーションのパフォーマンスメトリクス分析、DevOps のモニタリングデータ管理、産業機器の稼働データ分析に利用されます。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
身近な例え
自動整理される日記帳に例えられます。最近の日記 (メモリストア) はすぐに読めるデスクの上に、古い日記 (磁気ストア) は本棚に自動的に移動されます。どちらの日記も同じ方法 (SQL) で検索できます。
Timestream とは
Amazon Timestream は、時系列データに特化したサーバーレスデータベースです。RDB で時系列データを扱うと、データ量の増加に伴いクエリ性能が劣化しがちですが、Timestream は時系列データの格納とクエリに最適化されたストレージエンジンを持ち、大量の時系列データでも高速なクエリを実現します。
データの階層化と時系列関数
Timestream はデータをメモリストアと磁気ストアの 2 層で管理します。保持期間を設定すると、古いデータが自動的にメモリストアから磁気ストアに移動し、ストレージコストが削減されます。クエリ言語は SQL 互換で、時系列固有の関数 (移動平均、補間、差分、累積和など) を標準で提供しています。Grafana との統合でダッシュボードの構築も容易です。
はじめかた
Timestream コンソールでデータベースとテーブルを作成し、メモリストアと磁気ストアの保持期間を設定します。AWS SDK や Timestream Write API でデータを書き込み、Timestream Query API や SQL でクエリを実行します。Grafana プラグインでダッシュボードを構築できます。
注意点
- 書き込み量、ストレージ量、クエリのスキャン量に応じた従量課金。大量データのフルスキャンクエリはコストに注意
- Timestream for InfluxDB も提供されており、InfluxDB 互換の API が必要な場合はそちらを選択
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。