`
sd3560531
  • 浏览: 4320 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

ES按照整个字段统计

    博客分类:
  • ES
阅读更多
在使用terms facets时,经常想统计一个整个字段的值出现了多少次.如果用下面的消息发送请求:
{
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "default_field": "content",
            "query": "风暴"
          }
        }
      ],
      "must_not": [],
      "should": []
    }
  },
  "from": 0,
  "size": 50,
  "sort": [],
  "facets": {
    "sd3560531facet": {
      "terms": {
        "field": "siteName",
        "all_terms": true
      }
    }
  }
}
得出的统计结果是:
facets: {
province: {
_type: terms
missing: 0
total: 18
other: 0
terms: [
{
term: 区
count: 4
}
{
term: 论
count: 3
}
{
term: 讨
count: 3
}
{
term: 战
count: 2
}
{
term: 场
count: 2
}
{
term: 风
count: 1
}
{
term: 综
count: 1
}
{
term: 纪
count: 1
}
{
term: 合
count: 1
}
{
term: 本
count: 0
}
]
}
默认统计的是每个字出现的次数.不符合实际应用要求.
重新修改消息请求如下:
{
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "default_field": "content",
            "query": "风暴"
          }
        }
      ],
      "must_not": [],
      "should": []
    }
  },
  "from": 0,
  "size": 50,
  "sort": [],
  "facets": {
    "sd3560531facet": {
      "terms": {
        "script_field": "_source.siteName",
        "all_terms": true
      }
    }
  }
}
得出的结果为:
facets: {
province: {
_type: terms
missing: 0
total: 4
other: 0
terms: [
{
term: 战场讨论区
count: 2
}
{
term: 风纪区
count: 1
}
{
term: 综合讨论区
count: 1
}
]
}
}
表示符合条件的4条记录中,siteName字段里,战场讨论区有两条,风纪区有1条,综合讨论区有一条.
分享到:
评论

相关推荐

    elasticsearch数据库

    Elasticsearch(简称ES)是一种基于Lucene的开源搜索引擎,它在全文搜索、分析和实时数据存储方面具有出色性能。作为NoSQL数据库的一种,Elasticsearch设计之初的目标就是实现分布式、可扩展且具有高可用性的搜索...

    elasticsearch-8.5.1-windows-x86-64.zip

    Elasticsearch是一个强大的开源搜索引擎,基于Java开发,其核心功能是全文检索,但同时也支持结构化数据、非结构化数据的检索。它以其高可扩展性、实时性、分布式处理能力以及灵活的数据模型赢得了广大用户的青睐。...

    Elasticsearch-head插件.zip

    1. **集群概览**:通过Elasticsearch-head,你可以查看整个集群的状态,包括节点数量、索引列表、文档计数、存储空间等基本信息。 2. **索引管理**:可以创建、删除索引,查看索引的设置,包括映射(mapping)、...

    elasticsearch-1.6.2

    Elasticsearch(简称ES)是一款基于Lucene的开源、分布式、全文搜索引擎,它以其强大的搜索能力、高可扩展性和实时性赢得了广大用户的青睐。在1.6.2这个版本中,Elasticsearch已经具备了相当成熟的功能和优化,下面...

    ES学习以及介绍

    在Elasticsearch中,数据以文档的形式存在,每个文档都包含一系列字段(Fields)。索引则类似于数据库中的表,用于存储相同类型的数据。通过`PUT`或`POST`请求将文档存入指定索引,而`GET`请求可检索文档。 ### 4. ...

    Elasticsearch示例数据 shakespeare.json

    每个索引可以包含一个或多个类型(types),尽管在最新的Elasticsearch版本中,类型已被逐步淘汰,推荐将整个索引视为一种类型。在这个示例中,"shakespeare.json"可能代表一个索引,其中包含了多种不同类型的数据,...

    elasticsearch-2.3.5

    1. 分布式:Elasticsearch 可以在多台服务器上运行,形成一个集群,数据分布在整个集群中,提供高可用性和容错性。 2. 文档(Document):Elasticsearch 存储的基本单位是文档,类似于 JSON 对象,包含多个字段...

    Elasticsearch入门(五):Elasticsearch基础概念与基本操作 文章中所用用到的 http 文件

    6. **聚合(Aggregations)**:Elasticsearch提供强大的聚合功能,可用于统计分析,如`GET /my_index/_search?size=0&aggs=my_agg{...}`。 现在,让我们关注`es.http`和`es_book.http`这两个文件。它们可能包含了执行...

    elasticsearch聚合值过滤

    在 Elasticsearch(ES)中,聚合(Aggregations)是一种强大的数据汇总工具,允许用户对索引中的数据进行分组和统计分析。而“elasticsearch聚合值过滤”是ES聚合功能的一个高级应用场景,它允许我们根据聚合计算出...

    项目课程系列之Elasticsearch

    Elasticsearch 提供了丰富的功能,包括地理搜索、脚本字段、自定义分析器、聚合分析、机器学习等。其中,聚合分析允许对大量数据进行统计计算,如求平均值、最大值、最小值等;机器学习则可进行异常检测和预测分析。...

    elasticsearch-5.6.8.tar.gz

    Elasticsearch 强大的聚合功能允许用户对结果进行统计分析,如求和、平均值、最大值、最小值等。同时,还可以进行桶聚合(如范围聚合、术语聚合)来按特定条件对结果进行分组。 ### 7. 监控和告警 Elasticsearch ...

    elasticsearch6实战教程资料

    3. **动态映射**:Elasticsearch 自动为未知字段创建映射,但有时需手动设置。 4. **更新映射**:当需要修改字段类型时,可以更新映射。 5. **索引模板**:预先定义索引设置和映射,便于批量创建新索引。 ### 四、...

    Elasticsearch服务器开发高清(第2版).pdf

    1. **索引与文档**:Elasticsearch中的数据以JSON文档形式存在,这些文档被分配到索引中,每个索引都有自己的映射(mapping),定义了字段的类型和分析规则。 2. **分片与复制**:为了实现高可用性和水平扩展,...

    ElasticSearch 5.4 java依赖包

    7. **映射(Mapping)**:在Elasticsearch中,映射定义了文档字段的数据类型和分析规则。这有助于确保正确地索引和搜索数据。 8. **搜索和分析**:Elasticsearch提供强大的全文搜索、聚合和分析功能。它支持复杂的...

    Elasticsearch 5

    除了基本操作,Elasticsearch 还提供了诸如脚本字段、自定义分词器、倒排索引优化、滚动搜索、多索引操作等高级功能。在实际开发中,你可能需要深入学习这些内容以提升应用性能和用户体验。 总的来说,这个 MAVEN ...

    elasticsearch5.1

    5. **聚合分析**:Elasticsearch 5.1 提供了丰富的聚合功能,如术语聚合(Term Aggregation)、统计聚合(Statistical Aggregation)和桶聚合(Bucket Aggregation),用于对数据进行深度分析和可视化。 6. **脚本...

    最新版linux elasticsearch-8.1.1-linux-x86_64.tar.gz

    Elasticsearch是一个开源的全文搜索引擎,它以其高效、可扩展和分布式特性在IT行业中广泛应用,尤其是在日志分析、实时搜索和大数据分析等领域。最新版的Linux版本为`elasticsearch-8.1.1-linux-x86_64.tar.gz`,这...

    elasticsearch教程文档

    4. **缓存(Cache)**: 利用 Elasticsearch 内置的查询结果缓存和字段数据缓存,加快查询速度。 5. **热温冷数据分离**: 对于不同访问频率的数据,可以使用不同的索引策略,将热点数据保存在更快的存储介质上。 **...

    elasticsearch-2.3.3

    9. **插件支持**:Elasticsearch 社区提供了大量插件,如 Kibana(可视化工具)、Logstash(日志收集工具)和 Beats(轻量级数据发送者)等,它们可以增强 Elasticsearch 的功能并简化整个 ELK(Elasticsearch, ...

    ElasticSearch学习文档.rar

    Elasticsearch(ES)是一种基于 Lucene 的分布式、开源的全文搜索引擎,设计用于处理海量数据,具有实时分析、高可用性和可扩展性。它不仅是一个搜索引擎,还被广泛应用于日志分析、监控、安全分析等多个领域。本...

Global site tag (gtag.js) - Google Analytics