刷新作业 API
编辑刷新作业 API
编辑强制作业处理所有缓冲数据。
请求
编辑POST _ml/anomaly_detectors/<job_id>/_flush
先决条件
编辑需要 manage_ml
集群权限。此权限包含在内置角色 machine_learning_admin
中。
描述
编辑刷新作业 API 仅适用于使用 发布数据 API 发送要分析的数据时。根据缓冲区的内容,它可能会额外计算新的结果。
刷新和关闭操作都类似,但是如果您期望发送更多数据进行分析,则刷新操作更有效率。刷新时,作业保持打开状态,并可继续分析数据。关闭操作还会修剪并将模型状态持久化到磁盘,并且在进一步分析数据之前必须重新打开作业。
路径参数
编辑-
<job_id>
- (必填,字符串) 异常检测作业的标识符。
查询参数
编辑-
advance_time
- (字符串) 可选。指定推进到特定时间值。生成结果并更新指定时间间隔内数据的模型。
-
calc_interim
- (布尔值) 可选。如果为 true,则计算最近的桶或延迟期内所有桶的中间结果。
-
end
- (字符串) 可选。与
calc_interim
和start
结合使用时,指定要计算中间结果的桶的范围。 -
skip_time
- (字符串) 可选。指定跳过特定时间值。不生成结果,也不更新指定时间间隔内数据的模型。
-
start
- (字符串) 可选。与
calc_interim
结合使用时,指定要计算中间结果的桶的范围。
请求体
编辑您也可以在请求体中指定查询参数(例如 advance_time
和 calc_interim
)。
示例
编辑resp = client.ml.flush_job( job_id="low_request_rate", calc_interim=True, ) print(resp)
const response = await client.ml.flushJob({ job_id: "low_request_rate", calc_interim: true, }); console.log(response);
POST _ml/anomaly_detectors/low_request_rate/_flush { "calc_interim": true }
操作成功时,您将收到以下结果
{ "flushed": true, "last_finalized_bucket_end": 1455234900000 }
last_finalized_bucket_end
提供已处理的最后一个桶的结束时间戳(以毫秒为单位,自纪元以来的时间)。
如果要将作业刷新到特定时间戳,可以使用 advance_time
或 skip_time
参数。例如,要推进到 2018 年 1 月 1 日格林威治标准时间上午 11 点
resp = client.ml.flush_job( job_id="total-requests", advance_time="1514804400000", ) print(resp)
const response = await client.ml.flushJob({ job_id: "total-requests", advance_time: 1514804400000, }); console.log(response);
POST _ml/anomaly_detectors/total-requests/_flush { "advance_time": "1514804400000" }
操作成功时,您将收到以下结果
{ "flushed": true, "last_finalized_bucket_end": 1514804400000 }