首页 > 解决方案 > Java 与 Elasticsearch。把逻辑放在哪里?

问题描述

常见的例子,我在 elasticsearch 中有很多项目。每个项目都有:

id
name
price
storeConnectionId
regionConnectionId

可能有不同 id 但名称相同的项目,我想在搜索中添加一些聚合逻辑。

我在这里看到几个解决方案:

  1. 将整个逻辑放到 elasticsearch 中。创建很棒的聚合和布尔查询。并且只保留一个对 elasticsearch 的请求。
  2. 使用两个查询。第一个将返回请求区域的项目,第二个将返回所有具有最低价格聚合的项目。
  3. 无论如何都从搜索中返回每个项目,并将此业务逻辑保留在 Java 中。

Elasticsearch 只应该在处理大量项目时更快地工作,但是对于弹性搜索查询来说,这样的逻辑可以吗?

标签: javaelasticsearchsearchbusiness-logic

解决方案


推荐阅读