gpt4 book ai didi

elasticsearch - 为索引创建映射时出错

转载 作者:行者123 更新时间:2023-11-29 02:43:23 26 4
gpt4 key购买 nike

我正在尝试更改索引的映射,但出现错误。这是我创建索引的步骤

  • 通过 python 脚本填充索引来创建索引
  • 用这段代码设置映射:

    PUT /myidx/orderrow/_mapping
    {
    "orderrow": {
    "properties": {
    "item_code": {
    "type": "string",
    "index": "not_analyzed"
    }
    }
    }
    }

这是我收到的错误消息:

{
"error": "MergeMappingException[Merge failed with failures {[mapper [item_code] has different index values, mapper [item_code] has different `norms.enabled` values, mapper [item_code] has different tokenize values, mapper [item_code] has different index_analyzer]}]",
"status": 400
}

有什么想法吗?

最佳答案

因为您首先将数据索引到索引中,所以 Elasticsearch 会根据正在加载的数据自动检测 item_code 字段的字段类型/映射。然后,当您尝试更新映射时,您会收到上面显示的错误。

我建议在运行 Python 脚本以填充索引之前创建索引并应用映射。

PUT /myproj/

PUT /myproj/orderrow/_mapping
{
"orderrow": {
"properties": {
"item_code": {
"type": "string",
"index": "not_analyzed"
}
}
}
}

或者,您可以使用 merging & conflicts section of the Put Mapping API Documentation 中定义的 ignore_conflicts 选项将冲突映射强制到您的索引中.但是,我不确定这将如何影响已编入索引的文档。

关于elasticsearch - 为索引创建映射时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22770391/

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