更新数据框分析任务 API

编辑

更新现有数据框分析任务。

请求

编辑

POST _ml/data_frame/analytics/<data_frame_analytics_id>/_update

先决条件

编辑

需要以下权限

  • 集群:manage_ml(内置角色 machine_learning_admin 授予此权限)
  • 源索引:readview_index_metadata
  • 目标索引:readcreate_indexmanageindex

数据框分析任务会记住更新它时用户所拥有的角色。 当你启动任务时,它会使用相同的角色执行分析。 如果你提供辅助授权标头,则会改用这些凭据。

描述

编辑

此 API 更新现有的数据框分析任务,该任务对源索引执行分析并将结果存储在目标索引中。

路径参数

编辑
<data_frame_analytics_id>
(必需,字符串)数据框分析任务的标识符。此标识符可以包含小写字母数字字符(a-z 和 0-9)、连字符和下划线。它必须以字母数字字符开头和结尾。

请求体

编辑
allow_lazy_start
(可选,布尔值)指定当没有足够的机器学习节点容量来立即将此作业分配给节点时,此作业是否可以启动。默认值为 false;如果无法立即找到有能力运行该作业的机器学习节点,则 API 会返回错误。但是,这也受集群范围的 xpack.ml.max_lazy_ml_nodes 设置的约束。请参阅高级机器学习设置。如果此选项设置为 true,则 API 不会返回错误,并且作业将在 starting 状态下等待,直到有足够的机器学习节点容量可用。
description
(可选,字符串)任务的描述。
max_num_threads
(可选,整数)分析使用的最大线程数。默认值为 1。使用更多线程可能会缩短完成分析所需的时间,但会消耗更多的 CPU。请注意,该进程可能会使用额外的线程来执行分析本身以外的操作功能。
_meta
(可选,对象)高级配置选项。包含有关任务的自定义元数据。例如,它可以包含自定义 URL 信息。
model_memory_limit
(可选,字符串)允许用于分析处理的近似最大内存资源量。数据框分析任务的默认值为 1gb。如果你为 xpack.ml.max_model_memory_limit 设置指定一个值,则当你尝试创建 model_memory_limit 值大于该设置值的作业时,会发生错误。有关更多信息,请参阅 机器学习设置

示例

编辑

更新模型内存限制示例

编辑

以下示例演示如何更新现有数据框分析配置的模型内存限制。

resp = client.ml.update_data_frame_analytics(
    id="loganalytics",
    model_memory_limit="200mb",
)
print(resp)
const response = await client.ml.updateDataFrameAnalytics({
  id: "loganalytics",
  model_memory_limit: "200mb",
});
console.log(response);
POST _ml/data_frame/analytics/loganalytics/_update
{
  "model_memory_limit": "200mb"
}

更新任务后,响应会包含其配置以及更新的值。例如

{
  "id" : "loganalytics",
  "create_time" : 1656364565517,
  "version" : "8.4.0",
  "authorization" : {
    "roles" : [
      "superuser"
    ]
  },
  "description" : "Outlier detection on log data",
  "source" : {
    "index" : [
      "logdata"
    ],
    "query" : {
      "match_all" : { }
    }
  },
  "dest" : {
    "index" : "logdata_out",
    "results_field" : "ml"
  },
  "analysis" : {
    "outlier_detection" : {
      "compute_feature_influence" : true,
      "outlier_fraction" : 0.05,
      "standardization_enabled" : true
    }
  },
  "model_memory_limit" : "200mb",
  "allow_lazy_start" : false,
  "max_num_threads" : 1
}