![]() |
1
1
在Elasticsearch中,如果不添加更多信息,这是无法解决的。你想把“红色瓶子”排在“瓶盖”之前,因为你知道这些名字的语义信息——你知道“红色瓶子”意味着它所说的东西是“瓶子”,而“瓶盖”意味着它所说的东西是其他东西(与瓶子有关,但实际上不是瓶子)。如果你想从Elasticsearch中排名来考虑这些信息,你必须对这些信息进行索引(可能会添加一个关键字标记字段,一个带有“瓶子”,另一个带有“瓶盖”--你必须进行实验,看看什么适用于你的用例)。当然,这意味着一个人必须为每件事添加广告标签。 然而,我怀疑你可以通过使用 unique filter . 我的猜测是,你不太关心单个标题中的术语频率(“500ml瓶子的瓶盖”不是关于瓶子的,因为“瓶子”在其中出现了两次——我认为术语频率对于这样的标题来说没有什么意义)。所以你可以这样做:
|
|
Hotshot399 · 如何在弹性搜索中对聚合结果进行过滤? 2 年前 |
![]() |
Nandakumar M · 弹性搜索更新和刷新API 2 年前 |
![]() |
Mariannah47 · 日期直方图弹性搜索中的反向嵌套聚合 2 年前 |