elasticsearch,Lucene,Duplicates,elasticsearch" /> elasticsearch,Lucene,Duplicates,elasticsearch" />

Lucene 如何在elasticsearch中为给定查询按字段获得不同的结果?

Lucene 如何在elasticsearch中为给定查询按字段获得不同的结果?,lucene,duplicates,elasticsearch,Lucene,Duplicates,elasticsearch,我有以下问题,我有一个文档,它有一个字段“xxx”,在整个索引中可能有重复的值, 我想做一件非常简单的事情,我想能够在所有其他字段上使用bool查询来查询索引 但是查询结果应该只返回基于xxx的不同结果,我的索引模拟人,住在同一所房子里的人是重复的。我只希望在我的搜索结果中有不同的房子,但是搜索是在所有房子中进行的 我提前知道复制,因为这是一项一次性索引工作,是否有什么技巧可以在elasticsearch中启用此功能,我正在四处阅读,我知道distinct在elastic或lucene开箱即用中

我有以下问题,我有一个文档,它有一个字段“xxx”,在整个索引中可能有重复的值, 我想做一件非常简单的事情,我想能够在所有其他字段上使用bool查询来查询索引

但是查询结果应该只返回基于xxx的不同结果,我的索引模拟人,住在同一所房子里的人是重复的。我只希望在我的搜索结果中有不同的房子,但是搜索是在所有房子中进行的

我提前知道复制,因为这是一项一次性索引工作,是否有什么技巧可以在elasticsearch中启用此功能,我正在四处阅读,我知道distinct在elastic或lucene开箱即用中不存在 我要求一些关于如何实现这一点的先进想法,包括一些巧妙的索引,因为我有完全的控制权,而且我也提前知道了副本

我有两种情况: 1.我想计算给定查询的结果-需要非常快
2.我想检索实际的文档-性能不重要

我知道弹性搜索中不支持分组。参见主题。但我认为玩具可以利用ElasticSearch提供的亲子支持。你的房子是父母,居民是孩子

因此,索引中有两种类型,house和resident。常驻映射将具有如下内容:

"resident" : {
    "_parent" : {
        "type" : "house"
    }
}
通过这种方式,您可以防止重复,您可以得到不同的结果(房屋),并且可以搜索所有房屋