【问题标题】:Boost elasticsearch search based on entry field value基于输入字段值提升弹性搜索搜索
【发布时间】:2016-12-02 09:50:26
【问题描述】:

我在弹性搜索索引中有 500M 条目。每一个都属于 5000 个不同的来源之一(条目有一个名为“来源”的整数属性)。 现在,要进行搜索,我想按来源提升它们:对于每个来源 id,我想有不同的提升。 提升可能会随着时间而改变(例如,每小时一次),因此索引时间提升看起来不是一个好主意。

那么,我该怎么做呢?

我用谷歌搜索了这个,但没有发现任何真正有用的东西。 我在答案中找到了两个可能的选项,但也许我有更好的选择?

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    一种选择是将每个类转换为父类作为子条目——但随后一个源的所有子(条目)将被放入同一个分片(并且条目在源之间分布非常不均匀),并且我'将需要更改数据库架构,重建数据库并更新所有现有代码。

    另一种选择是将每个源放入不同的索引,并使用 index_boost。有同样的缺点,而且我还需要在查询中提供提升(如果我只有 5 个来源就可以了)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-06
      • 1970-01-01
      • 2018-11-03
      • 1970-01-01
      • 2012-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多