gpt4 book ai didi

elasticsearch - 如何获得词条聚合以匹配总字符串?

转载 作者:行者123 更新时间:2023-12-03 01:04:45 25 4
gpt4 key购买 nike

我有一些与Elasticsearch 1.5.2聚合的数据,当我对city等字段进行术语聚合时,存储桶与该字段的完整字符串不匹配。例)如果城市为圣路易斯,则一个存储桶为St.,另一个为Louis。有谁知道如何确保在聚合时将其放入St. Louis存储桶?

注意:这可能是由于所分析的数据引起的,我敢肯定在比较和搜索时会分解字符串。

最佳答案

没错因此,您只需要使用以下映射将city字段映射为not_analyzed字符串:

{
"your_type" : {
"properties" : {
"city" : {
"type" : "string",
"index" : "analyzed",
"fields" : {
"raw" : {"type" : "string", "index" : "not_analyzed"}
}
}
}
}
}

然后,您可以简单地在 city.raw字段(包含未分析的值,即 St. Louis)上运行聚合,而不是对 city进行分析,然后将其分析并将内容分成多个标记(即 stlouis)。

如果您事先知道,则永远不需要分析的字段,您可以像这样简单地存储 not_analyzed字段(即,不需要 fields部分声明一个多字段):
{
"your_type" : {
"properties" : {
"city" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}

关于elasticsearch - 如何获得词条聚合以匹配总字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32331515/

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