時系列集約

この機能は技術プレビュー中であり、将来のリリースで変更または削除される可能性があります。Elasticは問題を修正するために取り組みますが、技術プレビューの機能は公式GA機能のサポートSLAの対象ではありません。

時系列集約は、時系列インデックスを使用して作成されたデータをクエリします。これは通常、メトリックや時間要素を持つ他のデータストリームなどのデータであり、時系列モードを使用してインデックスを作成する必要があります。

データは、他のインデックスと同様に時系列インデックスに追加できます:

Js

  1. PUT /my-time-series-index-0/_bulk
  2. { "index": {} }
  3. { "key": "a", "val": 1, "@timestamp": "2022-01-01T00:00:10Z" }
  4. { "index": {}}
  5. { "key": "a", "val": 2, "@timestamp": "2022-01-02T00:00:00Z" }
  6. { "index": {} }
  7. { "key": "b", "val": 2, "@timestamp": "2022-01-01T00:00:10Z" }
  8. { "index": {}}
  9. { "key": "b", "val": 3, "@timestamp": "2022-01-02T00:00:00Z" }

時系列集約を実行するには、集約タイプとして「time_series」を指定します。ブール値「keyed」がtrueの場合、各バケットには一意のキーが与えられます。

Js

  1. GET /_search
  2. {
  3. "aggs": {
  4. "ts": {
  5. "time_series": { "keyed": false }
  6. }
  7. }
  8. }

これにより、時系列内のすべての結果が返されますが、より典型的なクエリでは、返される日付をより関連性のあるものに減らすためにサブ集約を使用します。

サイズ

デフォルトでは、time series集約は10000件の結果を返します。「size」パラメータを使用して、結果をさらに制限できます。あるいは、サブ集約を使用することで、時系列集約として返される値の量を制限できます。

キー付き

keyedパラメータは、バケットが各バケットごとに一意のキーを持つマップとして返されるかどうかを決定します。デフォルトでは、keyedがfalseに設定されている場合、バケットは配列として返されます。

制限事項

time_series集約には多くの制限があります。time_series集約を使用する際には、多くの集約パフォーマンス最適化が無効になります。たとえば、フィルターバイフィルタ最適化や、幅優先収集モード(termsおよびmulti_terms集約は強制的に深さ優先収集モードを使用します)。

次の集約は、time_series集約と組み合わせて使用すると機能しなくなります:auto_date_histogramvariable_width_histogramrare_termsglobalcompositesamplerrandom_samplerおよびdiversified_sampler