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

6ju8rftf  于 2023-03-22  发布在  ElasticSearch
关注(0)|答案(1)|浏览(156)

我得到这个错误:

当从LIVE更新开发ElasticSearch数据库时。我相信这是因为实时数据库发送***文档***,其中包含超过***1000个字段***,并且开发数据库***index.mapping.total_fields.limit***设置为***1000***
我知道我可以增加字段限制,但现在我只想***删除***所有具有***1000个或更多字段的*文档
我猜对_delete_by_query API进行Postman调用,类似于:

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

有谁知道一个简单的查询可以实现这一点吗?

9njqaruj

9njqaruj1#

您可以对LIVE集群运行如下查询:

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

如果你没有嵌套的字段/对象,这将删除所有超过1000个字段的文档。

相关问题