批量删除ElasticSearch 6+中文档的属性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量删除ElasticSearch 6+中文档的属性相关的知识,希望对你有一定的参考价值。
我需要从ElasticSearch中的所有文档中删除特定属性。有没有办法做到这一点,可以通过Bulk API完成。我无法找到要批量删除ElasticSearch的属性的API。
有没有办法实现同样的目标。
我文档的示例部分:
{ “媒体”:{ “list1的”:[{ “标题”: “一个”}], “列表2”:[{ “标题”: “B”}]}}
删除相同的脚本:
{ “脚本”: “ctx._source.remove( 'media.list1')”, “查询”:{ “布尔”:{ “必须”:[{ “存在”:{ “字段”: “media.list1” }}]}}}
答案
如果您只想从文档中删除一个字段(而不是删除整个文档),则需要使用无痛脚本。请参阅此问题post作为编写脚本以从文档中删除字段的参考。
要更新索引中的所有文档,请使用无痛脚本删除Update By Query API中的字段,使用match_all作为“查询”来更新所有文档。
您不希望为此使用批量API。如果您想用新信息替换整个文档(更新),将使用批量API。
以上是关于批量删除ElasticSearch 6+中文档的属性的主要内容,如果未能解决你的问题,请参考以下文章
elasticsearch中文档操作,索引导入数据批量导入删除文档
elasticsearch中文档操作,索引导入数据批量导入删除文档