gpt4 book ai didi

Elasticsearch - 如何获取文档的热门词列表

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

我有一个临时索引,其中包含我需要审核的文档。我想按这些文档包含的词对这些文档进行分组。

例如,我有这些文件:

1 - “aaa bbb ccc ddd eee fff”

2 - “bbb mmm aaa fff xxx”

3 - “hhh aaa fff”

所以,我想获得最流行的词,最好是计数:“aaa”- 3、“fff”- 3、“bbb”- 2 等。

这可以用 elasticsearch 实现吗?

最佳答案

做一个简单的词条聚合搜索就可以满足你的需求:

(其中 mydata 是您的字段名称)

curl -XGET 'http://localhost:9200/test/data/_search?search_type=count&pretty' -d '{
"query": {
"match_all" : {}
},
"aggs" : {
"mydata_agg" : {
"terms": {"field" : "mydata"}
}
}
}'

将返回:

{
"took" : 3,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 3,
"max_score" : 0.0,
"hits" : [ ]
},
"aggregations" : {
"mydata_agg" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [ {
"key" : "aaa",
"doc_count" : 3
}, {
"key" : "fff",
"doc_count" : 3
}, {
"key" : "bbb",
"doc_count" : 2
}, {
"key" : "ccc",
"doc_count" : 1
}, {
"key" : "ddd",
"doc_count" : 1
}, {
"key" : "eee",
"doc_count" : 1
}, {
"key" : "hhh",
"doc_count" : 1
}, {
"key" : "mmm",
"doc_count" : 1
}, {
"key" : "xxx",
"doc_count" : 1
} ]
}
}
}

关于Elasticsearch - 如何获取文档的热门词列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27741717/

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