

Amazon Timestream for LiveAnalytics に類似した機能をご希望の場合は Amazon Timestream for InfluxDB をご検討ください。リアルタイム分析に適した、シンプルなデータインジェストと 1 桁ミリ秒のクエリ応答時間を特徴としています。詳細については、[こちら](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# クエリ
<a name="queries"></a>

Timestream for LiveAnalytics を使用すると、DevOps のメトリクス、IoT アプリケーションのセンサーデータ、機器メンテナンス用の産業用テレメトリデータ、その他多くのユースケースを簡単に保存および分析できます。Timestream for LiveAnalytics の専用アダプティブクエリエンジンを使用すると、単一の SQL ステートメントを使用してストレージ階層間でデータにアクセスできます。データの場所の指定なしで、ストレージ階層間で透過的にデータにアクセスして組み合わせが行われます。SQL を使用して Timestream for LiveAnalytics でデータをクエリし、1 つ以上のテーブルから時系列データを取得できます。データベースとテーブルのメタデータ情報にアクセスできます。Timestream for LiveAnalytics SQL は、時系列分析用の組み込み関数もサポートしています。詳細については、「[クエリ言語リファレンス](reference.md)」を参照してください。

Timestream for LiveAnalytics は、完全にデカップリングされたデータインジェスト、ストレージ、クエリアーキテクチャを持つように設計されています。各コンポーネントは他のコンポーネントとは独立してスケールできます (アプリケーションのニーズに応じて実質的に無限のスケーラビリティを提供できます)。つまり、アプリケーションが 1 日あたり数百テラバイトのデータを送信したり、少量または大量のデータを処理する数百万のクエリを実行したりしても、Timestream for LiveAnalytics は対応できます。データが時間の経過とともに増加しても、Timestream for LiveAnalytics のクエリレイテンシーはほとんど変化しません。これは、Timestream for LiveAnalytics クエリアーキテクチャが大量の並列処理を活用してより大きなデータボリュームを処理し、アプリケーションのクエリスループットニーズに合わせて自動的にスケールできるためです。

## データモデル
<a name="datamodel"></a>

 Timestream は、フラットモデルと時系列モデルの 2 つのデータモデルをクエリでサポートしています。

**注記**  
Timestream のデータはフラットモデルを使用して保存されます。フラットモデルはデータをクエリするためのデフォルトモデルです。時系列モデルはクエリと時間の組み合わせに基づく概念であり、時系列分析に使用されます。
+  [フラットモデル](#flatmodel) 
+  [時系列モデル](#timeseriesmodel) 

### フラットモデル
<a name="flatmodel"></a>

 フラットモデルは、クエリ用の Timestream のデフォルトデータモデルです。時系列データをテーブル形式で表します。ディメンション名、時間、メジャー名、メジャー値は列として表示されます。テーブルの各行は、時系列内の特定の時刻における測定に対応するアトミックデータポイントです。Timestream データベース、テーブル、列には、いくつかの命名に関する制約があります。それらについては、「[サービス制限](ts-limits.md#system-limits)」で説明されています。

 以下の表は、データが単一メジャーレコードとして送信されたときに、Timestream が EC2 インスタンスの CPU 使用率、メモリ使用率、ネットワークアクティビティを表すデータを保存するプロセスの例を示しています。この場合、ディメンションは EC2 インスタンスのリージョン、アベイラビリティーゾーン、仮想プライベートクラウド、インスタンス ID です。メジャーは、EC2 インスタンスの CPU 使用率、メモリ使用率、および受信ネットワークデータです。region、az、vpc、instance\_id 列にはディメンション値が含まれています。time 列には、各レコードのタイムスタンプが含まれます。measure\_name 列には、cpu-utilization、memory\_utilization、network\_bytes\_in で表されるメジャーの名前が含まれます。measure\_value::double 列には、倍精度浮動小数点数として出力される測定値 (CPU 使用率やメモリ使用率など) が含まれます。measure\_value::bigint 列には、受信ネットワークデータなどの整数として出力される測定値が含まれます。


| Time | リージョン | az | vpc | instance\_id | measure\_name | measure\_value::double | measure\_value::bigint | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| 2019-12-04 19:00:00.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  cpu\_utilization  |  35.0  |  null  | 
| 2019-12-04 19:00:01.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  cpu\_utilization  |  38.2  |  null  | 
| 2019-12-04 19:00:02.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  cpu\_utilization  |  45.3  |  null  | 
| 2019-12-04 19:00:00.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  memory\_utilization  |  54.9  |  null  | 
| 2019-12-04 19:00:01.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  memory\_utilization  |  42.6  |  null  | 
| 2019-12-04 19:00:02.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  memory\_utilization  |  33.3  |  null  | 
| 2019-12-04 19:00:00.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  network\_bytes  |  34,400  |  null  | 
| 2019-12-04 19:00:01.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  network\_bytes  |  1,500  |  null  | 
| 2019-12-04 19:00:02.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  network\_bytes  |  6,000  |  null  | 

以下の表は、データがマルチメジャーレコードとして送信されたときに、Timestream が EC2 インスタンスの CPU 使用率、メモリ使用率、ネットワークアクティビティを表すデータを保存するプロセスの例を示しています。


| Time | リージョン | az | vpc | instance\_id | measure\_name | cpu\_utilization | memory\_utilization | network\_bytes | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | 
| 2019-12-04 19:00:00.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  metrics  |  35.0  |  54.9  |  34,400  | 
| 2019-12-04 19:00:01.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  metrics  |  38.2  |  42.6  |  1,500  | 
| 2019-12-04 19:00:02.000000000 |  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  metrics  |  45.3  |  33.3  |  6,600  | 

### 時系列モデル
<a name="timeseriesmodel"></a>

 時系列モデルは、時系列分析に使用されるクエリ時間コンストラクトです。これは、(時間、メジャー値) ペアの順序付けられたシーケンスとしてデータを表します。Timestream は、補間などの時系列関数をサポートしているため、データのギャップを埋めることができます。これらの関数を使用するには、create\_time\_series などの関数を使用してデータを時系列モデルに変換する必要があります。詳細については、「[クエリ言語リファレンス](reference.md)」を参照してください。

 EC2 インスタンスの前述の例を使用して、時系列で表される CPU 使用率データを次に示します。


| リージョン | az | vpc | instance\_id | cpu\_utilization | 
| --- | --- | --- | --- | --- | 
|  us-east-1  |  us-east-1d  |  vpc-1a2b3c4d  |  i-1234567890abcdef0  |  [{time: 2019-12-04 19:00:00.000000000, value: 35}, {time: 2019-12-04 19:00:01.000000000, value: 38.2}, {time: 2019-12-04 19:00:02.000000000, value: 45.3}]  | 