8 予測関数

ここに記載されているすべての関数は、以下でサポートされています:

関数は追加情報なしでリストされています。関数をクリックすると詳細が表示されます。

関数 説明
forecast アイテムの将来の値、最大値、最小値、差分または平均値を取得します。
timeleft アイテムが指定したしきい値に到達するまでに必要な秒数を取得します。
共通パラメータ
  • /host/keyは、ホストアイテムの履歴を参照する関数の共通必須の最初のパラメータです
  • (sec|#num)<:time shift>は、ホストアイテムの履歴を参照する関数の共通の2番目のパラメータで、以下の通りです:
    • sec - 最大評価期間(秒単位、サフィックスが使用可能)、または
    • #num - 最新の収集値の最大評価範囲(ハッシュ記号が前に付く場合)
    • time shift(オプション)は、評価ポイントを過去に移動することができます。タイムシフトの指定方法については詳細をご覧ください。

関数の詳細

関数パラメータに関する一般的な注意事項:

  • 関数パラメータはカンマで区切ります
  • オプションの関数パラメータ(またはパラメータの一部)は< >で示します
  • 関数固有のパラメータは各関数で説明します
  • /host/key および (sec|#num)<:time shift> パラメータは決して引用符で囲まないでください
forecast(/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)

アイテムの将来の値、最大値、最小値、差分または平均値。
対応する値の型: FloatInteger

パラメータ:

  • 共通パラメータを参照;
  • time - 予測する期間(秒単位、時間のサフィックスも使用可能)。負の値もサポート;
  • fit (オプション; ダブルクォートで囲む必要あり) - 過去データにフィットさせる関数。サポートされるフィット:
    linear - 線形関数(デフォルト)
    polynomialN - N次多項式(1 <= N <= 6)
    exponential - 指数関数
    logarithmic - 対数関数
    power - 累乗関数
    なお、polynomial1linearと同等;
  • mode (オプション; ダブルクォートで囲む必要あり) - 出力する値。サポートされるモード:
    value - 値(デフォルト)
    max - 最大値
    min - 最小値
    delta - max-min
    avg - 平均値
    なお、valuenow + time時点のアイテム値を推定する。maxmindeltaavgnowからnow + timeまでの区間でのアイテム値の推定を調査する。

コメント:

  • 返す値が1.7976931348623158E+308より大きい、または-1.7976931348623158E+308より小さい場合、返り値はそれぞれ1.7976931348623158E+308または-1.7976931348623158E+308に切り詰められる;
  • 式の誤用(誤ったアイテムタイプ、不正なパラメータ)でのみ未サポートとなり、それ以外のエラー時は-1を返す;
  • 予測トリガー関数の追加情報も参照。

例:

forecast(/host/key,#10,1h) #直近10個の値から1時間後のアイテム値を予測
forecast(/host/key,1h,30m) #直近1時間のデータから30分後のアイテム値を予測
forecast(/host/key,1h:now-1d,12h) #1日前の1時間分のデータから12時間後のアイテム値を予測
forecast(/host/key,1h,10m,"exponential") #直近1時間のデータと指数関数から10分後のアイテム値を予測
forecast(/host/key,1h,2h,"polynomial3","max") #直近1時間のデータと3次多項式から、今後2時間で到達しうる最大値を予測
forecast(/host/key,#2,-20m) #直近2個の値から20分前のアイテム値を推定(アイテムの更新頻度が低い場合、last()よりも精度が高い場合がある)
timeleft(/host/key,(sec|#num)<:time shift>,threshold,<fit>)

アイテムが指定されたしきい値に達するまでに必要な秒数。
サポートされている値の型: FloatInteger

パラメータ:

コメント:

  • 返す値が1.7976931348623158E+308より大きい場合、返り値は1.7976931348623158E+308に切り捨てられます;
  • しきい値に到達できない場合は1.7976931348623158E+308を返します;
  • 式の誤用(アイテムタイプの誤り、パラメータの無効化)の場合のみ未サポートとなり、それ以外のエラー時は-1を返します;
  • 予測トリガー関数の追加情報も参照してください。

例:

timeleft(/host/key,#10,0) #直近10個の値からアイテム値が0に達するまでの時間
timeleft(/host/key,1h,100) #直近1時間のデータからアイテム値が100に達するまでの時間
timeleft(/host/key,1h:now-1d,100) #1日前の1時間分のデータからアイテム値が100に達するまでの時間
timeleft(/host/key,1h,200,"polynomial2") #直近1時間のデータとアイテムが2次多項式のように振る舞うと仮定して、アイテム値が200に達するまでの時間

サポートされているすべての関数を参照してください。