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

Simple Log Service:変化点検出関数

最終更新日:Aug 26, 2024

このトピックでは、時系列データの変化点を検出するために使用できる変化点検出関数について説明します。

変化点検出関数は、次の変化点を検出できます。

  • 指定された期間内の統計的フィーチャの変化

  • 時系列データの異常

機能一覧

関数

説明

ts_cp_検出

時系列データから異なる統計的特徴を持つ間隔を検出します。 間隔のエンドポイントは変化点です。

ts_breakout_detect

時系列データから統計が急激に増減する時点を検出します。

ts_cp_detect

関数の形式:

  • 適切なタイムウィンドウの長さを指定できない場合は、次の関数を使用できます。 検出関数で使用されるデフォルトのウィンドウ長は10です。

    select ts_cp_detect(x, y, samplePeriod)
  • ビジネス環境に固有の効果をデバッグするには、次の関数でminSizeパラメーターを指定します。

    select ts_cp_detect(x, y, minSize) 

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

パラメーター

説明

x

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

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

y

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

非該当

minSize

連続した間隔内の時系列データの最小長さ。

最小の長さは3です。 最大長は、指定した時系列データの長さの10分の1を超えることはできません。

例:

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

    * | select ts_cp_detect(stamp, value, 3) from (select '("__time__" - ("__time__" % 10))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp) 
  • 出力結果 Output result

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

表示アイテム

説明

横軸

unixtime

データが記録された時点のタイムスタンプ。 単位は秒です。 例: 1537071480。

垂直軸

src

生データ。 例: 1956092.7647745228。

prob

ある時点が変化点である確率。 有効な値: [0, 1]

ts_breakout_detect

関数の形式:

select ts_breakout_detect(x, y, winSize) 

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

パラメーター

説明

x

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

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

y

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

非該当

winSize

連続した間隔内の時系列データの最小長さ。

最小の長さは3です。 最大長は、指定した時系列データの長さの10分の1を超えることはできません。

例:

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

    * | select ts_breakout_detect(stamp, value, 3) from (select '("__time__" - ("__time__" % 10))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp) 
  • 出力結果 Output result

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

表示アイテム

説明

横軸

unixtime

データが記録された時点のタイムスタンプ。 単位は秒です。 例: 1537071480。

垂直軸

src

生データ。 例: 1956092.7647745228。

prob

ある時点が変化点である確率。 有効な値: [0, 1]