elasticsearch - Elasticsearch-根据计数和唯一性进行聚合和排序

标签 elasticsearch

我有一个问题,我不确定如何解决。

想象一下,我有来自不同用户的一些推文,并且想知道哪些单词最常用于特定用户。为了使其更有趣,我想通过在所有推文(来自所有用户)中单词的独特性来增加计数。

因此,可以说一个用户总共在推文上发布了“stackoverflow”一词四次,而“stackoverflow”仅被该用户使用。同一用户在推文中还多次推文“I”,“for”和"is"(例如10),但这些推文也被其他用户的大量推文推文。

我想找到一个查询,该查询可以将“stackoverflow”的计数/分数提高到比“for”的计数/分数更高的水平。

在这种情况下,elasticsearch类型将包含一个带有完整推文(“tweet”)的字符串,一个未分析的数组,其中包含推文中使用的单词(“tweetedWords”)和用户名(“user”)。

有任何想法吗?

最佳答案

找到正确的Google关键字(“频率上的elasticsearch汇总”)后,我找到了所要查找的:有意义的术语。

{
  "query" : {
    "terms": {"user": ["{user}"]}
  },
  "size": 0,
  "aggs": {
    "tweetedWords": {
      "significant_terms": {
        "field": "tweetedWords"
      }
    }
  }
}

关于elasticsearch - Elasticsearch-根据计数和唯一性进行聚合和排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34999087/

相关文章:

elasticsearch - 如何使用Elasticsearch 5.5.1为文件建立索引

php - 用于 PHP 的 Elasticsearch 查询

elasticsearch - simple_query_string 和 query_string 有什么区别?

java - 将 Java 映射转换为 SearchSourceBuilder Elasticsearch 7.2 Java 高级 API

java - 实现 twitter 和 facebook 之类的主题标签

elasticsearch - Filebeat/Logstash 从输出中删除不需要的字段和值

json - Elasticsearch 查询的无模式支持

elasticsearch - ELK堆栈和缩放

elasticsearch - Ngram Tokenizer在字段上,不在查询上

elasticsearch - Elasticsearch,嵌套聚合