Elasticsearch 指南 [7.0]

  • 时间:
  • 浏览:0
  • 来源:大发时时彩代理—大发大发彩票app

}

By default _delete_by_query uses scroll batches of 100. You can change the batch size with the scroll_size URL parameter:

POST twitter/_delete_by_query?scroll_size=1000

{

See 删除映射类型.

注:目前有有一1个es的索引Index仅含本身type的数据即_doc,累似 的数据希望放入同有有一1个Index下一句话,可不上能 在mapping中增加有有一1个类型字段外理,同有有一1个Index下不累似 型(业务)的数据字段个数及类型要基本一致,保持索引数据的密集。

}

根据routing key指定分片下的数据:

If you provide routing then the routing is copied to the scroll query, limiting the process to the shards that match that routing value:

POST twitter/_delete_by_query?routing=1

{

}

POST twitter,blog/_delete_by_query

{

If you’d like to count version conflicts rather than cause them to abort, then set conflicts=proceed on the url or "conflicts": "proceed" in the request body.

}

curl -X GET "localhost:9100/_tasks?detailed=true&actions=*/delete/byquery"

结果如下:

每秒请求书可不上能 设置为任何正十进制数(1.4、6、100等),并通过用等待歌曲时间间隔每个批来限制查询删除请求操作的传输强度。通过将每秒请求数设置为-1,可不上能 禁用阈值。



### Response body 响应体

The JSON response looks like this:

发送 refresh 将在请求完成后刷新 _delete_by_query 中涉及的所有分片。这与delete api的refresh参数不同,后者只会刷新接收到删除请求的shard。与删除API不同,它不支持等待歌曲。

只是 请求中富含wait_for_completion=false,这么ElasticSearch将执行或多或少飞行前检查,启动请求,只是 返回可与任务API一起使用的任务,以撤消或获取任务的情形。ElasticSearch还将在.tasks/task/$taskid处创建此任务的记录作为文档。这是您的,您可不上能 根据时要保留或删除。完成后,删除它,那我ElasticSearch可不上能 回收它使用的空间。

### Works with Cancel Task API

使用撤消任务api可不上能 撤消查询删除操作

curl -X POST "localhost:9100/_tasks/r1A2WoRbTwKZ516z6NEs5A:36619/_cancel"

除了标准参数如pretty,delete by query api还支持refresh、wait_for_completion、wait_for_active_shards、timeout和scroll。

撤消操作会快速执行只是 也时要几秒的时间。Task列表API仍然会展示本身查询删除操作直到他检查到我本人被撤消只是 终结我本人。

删除多个索引数据,如下:

}

'

结果如下:

{

}

执行中的删除操作的requests_per_second值可不上能 使用_rethrottle API修改,如下:

curl -X POST "localhost:9100/_delete_by_query/r1A2WoRbTwKZ516z6NEs5A:36619/_rethrottle?requests_per_second=-1"

查询删除支持切片滚动的方式并行执行删除操作。本身并行化操作可不上能 提高传输强度只是 提供了本身便捷的方式将请求切分为有有一1个个的小要素。

结果如下:

就像在 delete by query API使用一样,requests_per_second可不上能 设置为-1来撤消限流只是 或多或少小数比如1.7或2来限制流量。提高传输强度可不上能 立即生效,限制传输强度会在完成本批次以前生效。以上为了外理超时。

使用task id可不上能 直接查看详情:

curl -X GET "localhost:9100/_tasks/r1A2WoRbTwKZ516z6NEs5A:36619"

当索引使用了路由控制的功能时,为了删除文档,还应该提供路由值。累似 :

curl -X DELETE "localhost:9100/twitter/_doc/1?routing=kimchy"

上面将删除根小ID为1的tweet,但将根据用户进行路由。请注意,只是 这么正确的发送路由,则发出“删除”命令将原应文档无法删除。

当 _routing 映射设置为必需且未指定路由值时,删除API将抛出RoutingMissingException并拒绝请求。

{

wait_for_active_shards控制在继续执行请求以前时要位于有几个个活跃的shard副本。详情请参阅此处。timeout 控制每个写请求等待歌曲不可用分片可用的时间。这本身方式在批量API中的工作方式完全相同。只是 “按查询删除”使用scroll搜索,您还可不上能 指定scroll参数来控制“搜索上下文”保持活动的时间,累似 ?scroll=10m。默认为5分钟。

curl -X POST "localhost:9100/twitter/_delete_by_query?conflicts=proceed" -H 'Content-Type: application/json' -d'

{