gpt4 book ai didi

elasticsearch - 使用存储桶聚合无法获得任何结果

转载 作者:行者123 更新时间:2023-12-03 01:21:58 24 4
gpt4 key购买 nike

我的ES中有一些PR数据。这就是文档建模的方式

 {
"Author" : "dheerajrav",
"Date" : "2012-10-05T10:16:49Z",
"Number" : 2554441,
"IsMerged" : false,
"MergedBy" : "",
"Body" : ""
},
{
"Author" : "dheerajrav",
"Date" : "2012-10-05T09:11:35Z",
"Number" : 2553883,
"IsMerged" : false,
"MergedBy" : "",
"Body" : ""
},
{
"Author" : "crodjer",
"Date" : "2012-10-04T15:40:22Z",
"Number" : 2544540,
"IsMerged" : false,
"MergedBy" : "",
"Body" : ""
},
{
"Author" : "crodjer",
"Date" : "2012-10-04T07:52:20Z",
"Number" : 2539410,
"IsMerged" : false,
"MergedBy" : "",
"Body" : ""
}
.
.
.
]
}

我正在尝试对我的索引使用以下术语,但没有结果
curl -X GET "localhost:9200/newidx/_search?pretty" -H 'Content-Type: application/json' -d'               
{
"aggs" : {
"contributors" : {
"terms" : {
"field" : "Author",
"size" : 100
}
}
}
}
'

理想的结果是为每个PR作者创建单独的存储桶。这是回应
 "aggregations" : {
"contributors" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [ ]
}
}

我的数据建模错误吗?

这是我的索引的映射
{
"newidx" : {
"mappings" : {
"properties" : {
"Stats" : {
"properties" : {
"Author" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"Body" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"Date" : {
"type" : "date"
},
"IsMerged" : {
"type" : "boolean"
},
"MergedBy" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"Number" : {
"type" : "long"
}
}
}
}
}
}
}

我在代码中生成一个json文件,并使用elasticsearch_loader将其索引到elasticsearch,这是命令
elasticsearch_loader --es-host 'localhost' --index org-skills --type incident json --lines processed.json

最佳答案

根据您的映射:

  • Author字段被声明为text(用于全文搜索)和keyword(用于匹配整个值)。
    读取 text v/s keyword 之间的区别。
  • 父映射名称为Stats

  • 因此,您应该在聚合查询中使用 Stats.Author.keyword,即:
    curl -X GET "localhost:9200/newidx/_search?pretty" -H 'Content-Type: application/json' -d'               
    {
    "aggs" : {
    "contributors" : {
    "terms" : {
    "field" : "Stats.Author.keyword",
    "size" : 100
    }
    }
    }
    }
    '

    关于elasticsearch - 使用存储桶聚合无法获得任何结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59922470/

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