获取以指定比例匹配不同术语的用户列表

时间:2019-05-17 14:29:33

标签: elasticsearch

假设我具有以下简单的文档结构。

{ 
 username: string,
 hobby: string
}

我想在一个请求中获得一个用户列表,其中包含80%的足球爱好者是足球,10%的橄榄球是5%,排球是5%,网球是5%。 这可能吗 ?你怎么能做到? 如果是这样,是否可以说我想要一定比例的用户具有随机的爱好值。

非常感谢, 朱利安

1 个答案:

答案 0 :(得分:0)

否。 Elasticsearch不会给出部分计算的结果。

  • 另一个缺陷是数字可能不匹配确切的百分比(在任何数据库中)。 例如,您总共有4个用户,每个您指定的兴趣爱好一个。因此,您无法在此处使用准确的百分比获得所需的列表。这种组合有无限可能。

  • 另一个改进:如果您完全具有这种结构,请考虑使用关系数据库(如SQL)。