【问题标题】:Sorting on child occurrences Elasticsearch JAVA API对子事件进行排序 Elasticsearch JAVA API
【发布时间】:2015-12-02 08:41:40
【问题描述】:
{
  "skus" : [
    {
      "inv" : 426,
      "sub_category_id" : 677
    },
    {
      "inv" : 112,
      "sub_category_id" : 678
    },
    {
      "inv" : 0,
      "sub_category_id" : 611
    }
  ]
}

我有一个名为“产品”的文档,其中包含子对象 sku,我想以一种方式对我的产品进行排序,如果 inv 为 0 的 sku 数量超过产品总 sku 的 50%,则应始终使用down,如果不是50%,应该不影响订单。

【问题讨论】:

    标签: elasticsearch elasticsearch-java-api


    【解决方案1】:

    最简单(并且可能是性能成本效益最高)的方法是将计算字段添加到您的产品对象以进行排序,并在每个索引/更新产品请求时计算它。

    【讨论】:

    • 同意! @naw,如果您事先知道您需要该信息,您不妨将其编入索引。否则,您将不得不求助于晦涩的脚本来实现您所需要的。
    • 我很清楚使用新的分数字段进行索引,但是否可以使用 SortingScriptBuilder 实现同样的事情?我对通过自定义排序/组来实现这一点更感兴趣..
    猜你喜欢
    • 2021-03-28
    • 1970-01-01
    • 2012-02-18
    • 1970-01-01
    • 2018-09-21
    • 2016-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多