代码之家  ›  专栏  ›  技术社区  ›  Swordfish

使用Elasticsearch和Spring数据对新闻提要进行优先级排序

  •  3
  • Swordfish  · 技术社区  · 7 年前

    我刚开始使用Elasticsearch,希望根据用户的兴趣为他们实现优先的新闻提要。

    我使用的是springboot2.0.5、springdataelasticsearch 3.1.0和Elasticsearch 6.4.2

    我已经将一些示例新闻主题加载到Elasticsearch中,并实现了一个findByKeywords存储库方法,该方法返回按创建日期排序的主题。

    我现在想做的是对新闻主题进行优先排序和评分。例如:

    1. 用户对他们的兴趣评分从1到5。评级更高的兴趣将在新闻提要中显示得更高。
    2. 用户参与度更高的主题
    3. 等。

    使用Elasticsearch构建这种评分逻辑的最佳方法是什么?理想情况下,我希望返回的结果被分页和排序,就像findAll方法返回结果一样。

    任何建议都将不胜感激。

    1 回复  |  直到 7 年前
        1
  •  0
  •   ziad    7 年前

    您所描述的通常是多维OLAP解决方案的用例。要用elastic实现这一点,需要对数据进行非规范化。将所有内容添加到一个索引中。这样您就可以根据需要过滤和排序,而无需限制。这样你就牺牲了可用性的空间。