ElasticSearch删除超过1000个字段的所有文档

时间:2018-04-05 21:33:59

标签: elasticsearch

我收到此错误:

enter image description here

从LIVE版本更新开发ElasticSearch数据库。我认为这是因为实时数据库正在发送带有 1000字段 文档 和开发数据库 index.mapping.total_fields.limit 设置为 1000

我知道我可以提高字段数限制,但目前我只想 删除 所有 文档 1000或更多字段

我猜是用_delete_by_query API调用Postman调用类似的东西:

{
  "query": {
    "range": {
      "fields": {
        "gt": 1000
      }
     }
  }
}

是否有人知道可以实现此目的的简单查询?

1 个答案:

答案 0 :(得分:1)

您可以对LIVE集群运行这样的查询:

POST logger/_delete_by_query
{
  "query": {
    "script": {
      "script": {
        "source": "params._source.size() > 1000"
      }
    }
  }
}

如果您没有嵌套的字段/对象,则会删除所有包含1000个以上字段的文档。