すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:マルチ期間推定関数

最終更新日:Aug 26, 2024

このトピックでは、異なる時間間隔に分布する時系列データの周期性を推定するために使用できる複数期間の推定関数について説明します。 このトピックでは、フーリエ変換 (FT) などの一連の演算を使用して周期性を抽出する方法についても説明します。

機能一覧

機能

説明

ts_period_detect

異なる時間間隔で分布する時系列データの周期性を推定します。

ts_period_classify

FTを使用して、指定した時系列曲線の周期を計算します。 この関数は、周期曲線を識別するために使用できます。

ts_period_detect

関数の形式:

select ts_period_detect(x,y,minPeriod,maxPeriod)

次の表に、関数のパラメーターを示します。

パラメーター

説明

x

タイムシーケンス。 時間内のポイントは、横軸に沿って昇順にソートされます。

各時点はUNIXタイムスタンプです。 単位:秒。

y

特定の時点での数値データのシーケンス。

なし。

minPeriod

時系列データの全長に対する、期間内の時系列データの最小長の比率。 比率は、時系列曲線に基づいて推定されます。

パラメーター値は10進数である必要があります。 有効な値: (0.0, 1.0) 。

maxPeriod

時系列データの全長に対する期間内の時系列の最大長の比率。 比率は、時系列曲線に基づいて推定されます。

重要

maxPeriodパラメーターの値は、minPeriodパラメーターの値よりも大きくする必要があります。 値は0.5未満である必要があります。 maxPeriodパラメーターを0.5より大きい値に設定すると、システムは自動的に値を0.5に変更します。

パラメーター値は10進数である必要があります。 有効な値: (0.0, 1.0) 。

  • 次のクエリ文が実行されます。

    * | select ts_period_detect(stamp, value, 0.2, 0.5) from ( select '("__time__" - ("__time__" % 120))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp )
  • 出力結果

    出力結果は配列型です。 結果には、UNIXタイムスタンプ、統計値 (平均トラフィックなど) 、およびステータスコードが含まれます。 次の図の赤い丸は、値が1.0のステータスコードを表しています。 以下の図にテスト結果を示します。

    次の図の2つの連続する赤い円の間の斜線部分は、期間を表します。 各周期のカーブは同じになる傾向があります。

    出力結果

ts_period_classify

関数の形式:

select ts_period_classify(stamp,value,instanceName)

次の表に、関数のパラメーターを示します。

パラメーター

説明

スタンプ

タイムシーケンス。 時間内のポイントは、横軸に沿って昇順にソートされます。

各時点はUINXタイムスタンプです。 単位:秒。

value

特定の時点での数値データのシーケンス。

なし。

instanceName

時系列カーブの名前。

なし。

例:

  • 次のクエリ文が実行されます。

    * and h : nu2h05202.nu8 | select ts_period_classify(stamp, value, name) from log
  • レスポンス出力結果

表示项目一覧を次の表に示します。

表示項目

説明

line_name

時系列カーブの名前。

prob

時系列曲線上の値の総数に対するプライマリ期間内の値の数の比率。 有効な値: [0, 1] テスト用に値を0.15に設定できます。

type

時系列曲線のタイプ。 有効な値: -1、-2、および0。

  • 値-1は、時系列曲線の長さが短すぎる (64ポイント未満) ことを示します。

  • 値 − 2は、時系列曲線が高い故障率 (20% より高い) を有することを示す。

  • 値0は、時系列曲線が周期的であることを示す。