gpt4 book ai didi

elasticsearch - 从 ElasticSearch 6+ 中的文档中批量删除属性

转载 作者:行者123 更新时间:2023-11-29 02:55:59 25 4
gpt4 key购买 nike

我需要从 ElasticSearch 中的所有文档中删除特定属性。有没有办法做到这一点,可以通过批量 API 完成吗?我找不到用于从 ElasticSearch 批量删除属性的 API。

有什么办法可以达到同样的效果。

我的文档的示例部分:

{
"media": {
"list1": [
{"title":"a"}
],
"list2": [
{"title":"b"}
]
}
}

删除相同的脚本:

{
"script": "ctx._source.remove('media.list1')",
"query": {
"bool": {
"must": [
{
"exists": {
"field": "media.list1"
}
}
]
}
}
}

最佳答案

如果您只想从文档中删除一个字段(而不是删除整个文档),则需要使用无痛脚本。看这个问题post作为编写脚本以从文档中删除字段的引用。

要更新索引中的所有文档,请使用无痛脚本来删除 Update By Query API 中的字段,使用 match_all 作为“查询”来更新所有文档。

您不会想为此使用批量 API。如果您想用新信息替换整个文档(更新),将使用批量 API。

关于elasticsearch - 从 ElasticSearch 6+ 中的文档中批量删除属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54578094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com