【问题标题】:Elasticsearch: Add new field in big indexElasticsearch:在大索引中添加新字段
【发布时间】:2020-05-10 19:52:27
【问题描述】:

我正在使用 Elasticsearchv7.6。

我有一个包含 10MLN 文档的大索引,我意识到我忘记了一个类型为 textfield,我需要它才能进行搜索。

我使用 PUT MAPPING api 将这个新字段添加到映射中,虽然我可以在映射中看到该字段,但我无法使用该字段进行搜索。

我的问题是:为什么?有什么方法可以查看新字段索引的状态吗?如果在此过程中出现故障怎么办?

非常感谢您

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    添加一个字段是不够的,您需要发送包含该字段值的文档,以便对其进行搜索,并且您无法看到单个新添加字段的状态。

    如果您在旧索引表单中有源文档,您可以在其中填写新字段值,而不是使用 reindex API,这会快得多。

    如果您从数据库等外部来源发送文档,那么如果您希望所有 1000 万个文档都具有新字段值,则需要再次重新索引所有数据。

    【讨论】:

    • 那么,在映射中添加新字段不会索引包含该字段的先前文档?
    • @salvob,确切地说:)
    猜你喜欢
    • 1970-01-01
    • 2018-03-09
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2018-03-29
    • 2016-08-05
    • 1970-01-01
    相关资源
    最近更新 更多