首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在ElasticSearch中更新多个项目?

如何在ElasticSearch中更新多个项目?
EN

Stack Overflow用户
提问于 2012-04-17 17:56:04
回答 9查看 42.5K关注 0票数 12

假设我在ElasticSearch索引中有一个tag类型,映射如下:

代码语言:javascript
复制
{
    "tag": {
        "properties": {
            "tag": {"type": "string", "store": "yes"},
            "aliases": {"type": "string"}
        }
    }
}

每个条目都是一个标记,以及该标记的别名数组。下面是一个示例项目:

代码语言:javascript
复制
{
    "word": "weak",
    "aliases": ["anemic", "anaemic", "faint", "flimsy"]
}

时不时地,我想添加带有别名的新标签词,并将新别名添加到现有标签词中。

添加带有别名的新标签词很容易,它只是一个新文档。但是,如何以合理的方式向现有的标签词添加新的别名?

我知道我可以只搜索标记词,获取它的文档,搜索别名是否已经存在于别名数组中,如果没有添加,则保存。然而,这听起来并不是一个好的解决方案。

有没有办法进行批量更新?

EN

Stack Overflow用户

发布于 2013-04-09 23:50:33

Elastic Search有一个Update API。使用该API,您可以执行以下操作:

代码语言:javascript
复制
curl -XPOST 'localhost:9200/test/tag/weak/_update' -d '{
    "script" : "ctx._source.aliases += faint"
}'
票数 2
EN
查看全部 9 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10189019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档