跳到主要内容

启动数据源 API

新版 API 参考

有关最新的 API 详情,请参阅 机器学习异常检测 API

启动一个或多个数据源。

请求

POST _ml/datafeeds/<feed_id>/_start

前置条件

  • 启动数据源之前,异常检测作业必须处于打开状态。否则,将发生错误。
  • 需要 manage_ml 集群权限。此权限包含在 machine_learning_admin 内置角色中。

描述

数据源必须启动才能从 Elasticsearch 检索数据。数据源在其生命周期中可以被多次启动和停止。

如果重新启动已停止的数据源,默认情况下它从停止后的下一毫秒继续处理输入数据。如果在停止和启动之间为该确切毫秒索引了新数据,这些数据将被忽略。

当启用了 Elasticsearch 安全功能时,数据源会记住最后创建或更新它的用户在创建/更新时拥有的角色,并使用这些角色运行查询。如果在创建或更新数据源时提供了辅助授权头,则使用这些凭据。

路径参数

  • <feed_id>

    (必需,字符串)唯一标识数据源的数字字符串。此标识符可以包含小写字母数字字符(a-z 和 0-9)、短横线和下划线。必须以字母数字字符开头和结尾。

查询参数

  • end

    (可选,字符串)数据源应该结束的时间,可以使用以下格式之一指定:

    • 带毫秒的 ISO 8601 格式,例如 2017-01-22T06:00:00.000Z
    • 不带毫秒的 ISO 8601 格式,例如 2017-01-22T06:00:00+00:00
    • 自纪元以来的毫秒数,例如 1485061200000

    使用 ISO 8601 格式的日期时间参数必须包含时区标识符,其中 Z 被接受为 UTC 时间的缩写。

    当期望使用 URL 时(例如在浏览器中),时区标识符中使用的 + 必须编码为 %2B

    此值不包含在内。如果不指定结束时间,数据源持续运行。

  • start

    (可选,字符串)数据源应该开始的时间,可以使用与 end 参数相同的格式指定。此值包含在内。

    如果不指定开始时间且数据源关联的是新的异常检测作业,分析从最早有可用数据的时间开始。

    如果重新启动已停止的数据源且指定的 start 值早于最新已处理记录的时间戳,数据源从最新已处理记录时间戳之后 1 毫秒继续。

  • timeout

    (可选,时间值)指定等待数据源启动的时间。默认值为 20 秒。

请求体

你也可以在请求体中指定查询参数(如 endstart)。

响应体

  • node

    (字符串)数据源启动的节点 ID。如果数据源允许惰性打开且尚未分配到节点,此值为空字符串。

  • started

    (布尔值)对于成功的响应,此值始终为 true。失败时,返回异常。

示例

POST _ml/datafeeds/datafeed-low_request_rate/_start
{
"start": "2019-04-07T18:22:16Z"
}

数据源启动后,你收到以下结果:

{
"started" : true,
"node" : "node-1"
}

原文链接