栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Elasticsearch中对结果分组?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Elasticsearch中对结果分组?

在Elasticsearch中无法找到您想要的东西,至少在当前版本(1.1)中无法实现。

对于此功能,还有很长的悬而未决的问题,其背后有很多+1和需求。

至于声明:Simon说,这需要大量的重构,尽管它是计划中的,但没有办法说它何时实施甚至交付。

克林顿·戈姆利(Clinton
Gormley)在他的网络研讨会上
也发表了类似的观点,即领域分组需要付出很多努力才能正确完成,尤其是因为Elasticsearch本质上是一个分片的分布式环境。如果您不考虑分片,那没什么大不了的,但是Elasticsearch只希望提供功能,这些功能可以与整个系统一起扩展,并且可以像在一个盒子上一样在数百台机器上正常工作。

如果您不依赖Elasticsearch,Solr会提供这样的功能。

否则,目前最好的解决方案是在客户端进行此操作。也就是说,查询一些文档,在客户端上进行分组,如果需要,获取更多结果以满足所需的组大小(据我所知,这是Solr在幕后所做的事情)。

不完全是您想要的,但是您也可以进行汇总;为您创建一个存储桶,

title
并在
id
现场进行子聚合。您将不会获得
store
与此相关的值,但是一旦有了ID,就可以从数据存储中检索它们。

{    "aggs" : {        "titles" : { "terms" : { "field" : "title" }, "aggs": {     "ids": {         "terms": { "field" : "id" }     } }        }    }}

编辑
:似乎,与top_hits聚合,结果分组可以很快实现。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/403660.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号