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

Simple Log Service:スムーズな機能

最終更新日:Aug 26, 2024

このトピックでは、指定した時系列曲線を平滑化およびフィルタリングするために使用できる平滑関数について説明します。 フィルタリングは、時系列曲線の形状を発見する最初のステップである。

機能一覧

機能

説明

ts_smooth_simple

Holt-Winters予測アルゴリズムを使用して、時系列データをフィルタリングします。 この関数はデフォルトのスムーズ関数です。

ts_smooth_fir

有限インパルス応答 (FIR) フィルタを使用して時系列データをフィルタリングします。

ts_smooth_iir

無限インパルス応答 (IIR) フィルタを使用して時系列データをフィルタリングします。

ts_smooth_simple

  • 関数の形式:

    select ts_smooth_simple(x, y)
  • 関数形式のパラメーターを次の表に示します。

    項目

    説明

    x

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

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

    y

    指定された各時点に対応する数値データのシーケンス。

    N/A

    • クエリステートメントは次のとおりです。

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

  • The次の表を表示項目。

    表示項目

    説明

    横軸

    unixtime

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

    垂直軸

    src

    The生データ。

    filter

    フィルタリング演算後に生成されたデータが実行される。

ts_smooth_fir

  • 関数の形式:

    • フィルターパラメーターを特定できない場合は、次のステートメントで組み込みウィンドウパラメーターを使用します。

      select ts_smooth_fir(x, y,winType,winSize)
    • フィルターパラメーターを決定できる場合は、次のステートメントで必要に応じてパラメーターを設定できます。

      select ts_smooth_fir(x, y,array[])
  • 関数形式のパラメーターを次の表に示します。

    項目

    説明

    x

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

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

    y

    指定された各時点に対応する数値データのシーケンス。

    N/A

    winType

    フィルタリング用のウィンドウのタイプ。

    有効な値:

    • rectangle: 长方形のウィンドウ

    • hanning: Hanningウィンドウ

    • ハミング: ハミングウィンドウ

    • ブラックマン: ブラックマンの窓

    説明

    よく表示するために、このパラメーターを「rectangle (矩形窓)」に設定することが推奨されます。

    winSize

    フィルターウィンドウの長さ。

    値はlongデータ型です。 有効な値: 2、3、4、5、6、7、8、9、10、11、12、13、14、および15。

    array[]

    FIRフィルタの係数を計算するために使用されます。

    値は、要素の合計が1である配列です。 例: array[0.2, 0.4, 0.3, 0.1] 。

  • 例 1

    • クエリステートメントは次のとおりです。

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

  • 例 2

    • クエリステートメントは次のとおりです。

      * | select ts_smooth_fir(stamp, value, array[0.2, 0.4, 0.3, 0.1]) from ( select '("__time__" - ("__time__" % 120))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp ) 
    • 出力結果出力結果

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

    表示項目

    説明

    横軸

    unixtime

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

    垂直軸

    src

    生データ。

    filter

    フィルタリング演算後に生成されたデータが実行される。

ts_smooth_iir

  • 関数の形式:

    select ts_smooth_iir(x, y, array[], array[] ) 
  • 関数形式のパラメーターを次の表に示します。

    項目

    説明

    x

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

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

    y

    指定された各時点に対応する数値データのシーケンス。

    N/A

    array[]

    IIRフィルタのx iに関するフィルタ係数を計算するために使用されます。

    値は、要素の合計が1である配列です。 要素の有効な長さ: 2、3、4、5、6、7、8、9、10、11、12、13、14、および15。 例: array[0.2, 0.4, 0.3, 0.1] 。

    array[]

    IIRフィルタのy i-1に関連するフィルタ係数を計算するアルゴリズムを指定するフィルタのタイプ。

    値は、要素の合計が1である配列です。 要素の有効な長さ: 2、3、4、5、6、7、8、9、10、11、12、13、14、および15。 例: array[0.2, 0.4, 0.3, 0.1] 。

    • クエリステートメントは次のとおりです。

      * | select ts_smooth_iir(stamp, value, array[0.2, 0.4, 0.3, 0.1], array[0.4, 0.3, 0.3]) from ( select '("__time__" - ("__time__" % 120))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp )
    • 出力結果出力結果

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

    表示項目

    説明

    横軸

    unixtime

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

    垂直軸

    src

    生データ。

    filter

    フィルタリング演算後に生成されたデータが実行される。