【发布时间】:2018-08-09 12:30:42
【问题描述】:
我们有一位客户要求以公平公正的方式返回其搜索页面中的结果。本质上,他们退回的产品是“假日包裹”。每个产品都由不同的供应商列出,并且由于市场的股东是供应商,他们绝对不能对任何特定的供应商表现出任何偏好。 (即,每个人都需要有相同的曝光,不管他们的实际库存/产品的优点)
我们一直在做的只是随机化,但真正随机的问题是,一个有 100 个包的供应商在搜索结果页面上与其他 12 个供应商每个有 1 个包,只是不显示。在最坏的情况下,我们有一个供应商有大约 7000 个包裹,而该类别的其他供应商只有 1 或 2 个产品。所以真正的随机意味着其他供应商完全被淹没了。我们克服这个问题的方法是提振所有其他供应商,但是直到所有其他产品都上市后,这个拥有 7000 个包的供应商才会出现。
总而言之,我们想要实现的是公平、公正的分类,以便在退回其他供应商的其他产品之前,至少先退回每个供应商的一件产品。一旦其他产品被退回,那就是公平的游戏......
【问题讨论】:
-
单个查询的所有文档是否都位于单个服务器上? (即grouping(在分布式环境中工作,尽管某些功能可能不工作)或Collapse and Expand 是否有效?策略是进行一次查询以获取每个组的顶部文档,然后进行第二次查询以获取对于那些已经返回的 id,其他所有带有否定
fq的东西。