0

我已经在 ES 中索引了 Twitter 数据。有1.1 亿个 Twitter 唯一用户个人资料6.5 亿条推文。两者都在单独的索引(索引:twitter-profiles,类型:profiles)中,用于推文(索引:twitter-tweets,类型:tweets)。

每条推文都附有个人资料的user_id_str

我在获取特定用户的出现次数时遇到问题。我使用了Facet/terms 和 Aggregation/Terms但都给了我异常PartialShardFailureException因为有很多数据需要计算。我使用了以下查询

{
"aggs" : {
    "userCount" : {
        "terms" : { "field" : "user_id_str" }
    }
  }
}

然后我再试一次。

我使用了第二种方法Scan。在这里,我从配置文件类型中获取配置文件的 ID,然后在推文类型中搜索它。它给了我结果,但在2 秒OOps后出现了一个结果。有 1.1 亿用户意味着我必须等待几天。

请给我任何合理的解决方案。

4

1 回答 1

-2

您可以将基数聚合与术语过滤器结合使用

于 2014-08-24T16:30:03.470 回答