gpt4 book ai didi

elasticsearch - Elasticsearch中嵌套字段的动态映射

转载 作者:行者123 更新时间:2023-12-02 22:33:32 24 4
gpt4 key购买 nike

示例文件:

{
"first_name": "Uttam",
"last_name": "Kini",
"metadata": [
{
"field_type": "small_text",
"field_value": "bla bla"
},
{
"field_type": "large_text",
"field_value": "bla bla bla bla bla bla bla bla"
},
]
}

如何基于 metadata.field_value动态设置 metadata.field_type的映射?

例如,当 metadata.field_typesmall_text时,我想使用带有关键字标记器的分析器,而当 metadata.field_typelarge_text时,我想使用其他分析器。

最佳答案

我认为不可能直接做到这一点。不支持的重要原因是,不可能在包含不同分析仪产品的野外提供高质量的结果。考虑一下解析查询:您将在查询中使用哪个分析器来匹配两个不同分析器产生的术语?

解决方案是使用multi-fields。您基本上为field_value创建了两个相关字段,并对每个字段应用了不同的映射。然后,在查询时,您将构建一个具有两个分支的查询:

(field_type:small_text AND field_value.small_text:abc)
OR (field_type:large_text AND field_value.large_text:abc)

注意:我在这里使用查询字符串以提高可读性,您最好将过滤查询与 orand过滤器一起使用

关于elasticsearch - Elasticsearch中嵌套字段的动态映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23884873/

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