要不要也来分享分享一下啊

动态字段怎么批量删除

Elasticsearch | 作者 wessi | 发布于2018年01月04日 | 阅读数:2676

比如我有很多document中都有动态映射的字段,user_field_1, user_field_2, user_field_3, user_field_8 等,
现在需要删除user_field_*的所有字段。
"script" : "ctx._source.remove(\"name\")" 这种只能删除确定名字的字段。

请问有什么统一的办法?
已邀请:

shiyuan

赞同来自:

ctx._source.keySet().removeIf(k -> k.startsWith('user_field_'))

trycatchfinal

赞同来自:

可以重新修改下mapping配置"dynamic": "false" ,然后reindex一下。

要回复问题请先登录注册