繁体   English   中英

更新添加新字段时,弹性搜索不遵循映射

[英]elastic search does not obey mapping when update adds a new field

使用python update API,我向我的ES索引文档中添加了一个字符串字段。 甚至我的映射都有:

"mappings" : {
    "_default_": {
            "dynamic_templates": [
                { "notanalyzed": {
                      "match":              "*", 
                      "match_mapping_type": "string",
                      "mapping": {
                          "type":        "string",
                          "index":       "not_analyzed"
                      }
                   }
                }
              ]
    },

新添加的字段仍在分析中。 有人注意到同样的问题吗?

这是一段添加新列的python代码:

res = es.search(index=ind, body=st, size=2000) for rec in res['hits']['hits']: es.update(index=rec['_index'],doc_type=rec['_type'],id=rec['_id'], body={"doc": {"srcSite": sS}})

因此,仍会以某种方式“分析”新添加的“ srcSite”。 我试图将新字段显式添加到模板中,但这也没有帮助。

啊,我发现了问题所在。 看来模板在创建文档时会以某种方式固定,以后再更改模板也不会改变-即使更新文档,它也不会使用更改后的模板,而是使用原始模板。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM