予測ジョブAPI
時系列の過去の挙動を使用して、将来の挙動を予測します。
リクエスト
POST _ml/anomaly_detectors/<job_id>/_forecast
前提条件
manage_ml
クラスター権限が必要です。この権限は machine_learning_admin
ビルトインロールに含まれています。
説明
異常検出ジョブに基づいて予測ジョブを作成し、将来の挙動を外挿することができます。詳細については、未来の予測および予測の制限を参照してください。
予測削除APIを使用して予測を削除できます。
- 人口分析を行うジョブに対しては予測がサポートされていません。
over_field_name
プロパティを持つジョブの予測を作成しようとするとエラーが発生します。 - 予測を作成する際には、ジョブがオープンである必要があります。そうでない場合、エラーが発生します。
パスパラメータ
<job_id>
- (必須、文字列)異常検出ジョブの識別子。
クエリパラメータ
duration
- (オプション、時間単位)予測する未来の期間を示す時間の長さ。例えば、
30d
は30日を表します。デフォルト値は1日です。予測は処理された最後のレコードから始まります。 expires_in
- (オプション、時間単位)予測結果が保持される期間。予測が期限切れになると、結果は削除されます。デフォルト値は14日です。
0
の値に設定すると、予測は自動的に削除されることはありません。 max_model_memory
- (オプション、バイト値)予測が使用できる最大メモリ。予測が提供された量を超えて使用する必要がある場合、ディスクにスプールされます。デフォルトは20MB、最大は500MB、最小は1MBです。ジョブの設定されたメモリ制限の40%以上に設定されると、その量以下に自動的に減少します。
リクエストボディ
リクエストボディ内でクエリパラメータ(duration
やexpires_in
など)を指定することもできます。
例
Python
resp = client.ml.forecast(
job_id="low_request_rate",
duration="10d",
)
print(resp)
Js
const response = await client.ml.forecast({
job_id: "low_request_rate",
duration: "10d",
});
console.log(response);
コンソール
POST _ml/anomaly_detectors/low_request_rate/_forecast
{
"duration": "10d"
}
予測が作成されると、次の結果が得られます:
Js
{
"acknowledged": true,
"forecast_id": "wkCWa2IB2lF8nSE_TzZo"
}
その後、Kibanaのシングルメトリックビューワーで予測を確認できます。