加载中

令牌计数字段类型

类型为 token_count 的字段实际上是 integer(整数)字段,它接受字符串值,对其进行分析,然后索引字符串中的令牌数量。

例如

 PUT my-index-000001 {
  "mappings": {
    "properties": {
      "name": {
        "type": "text",
        "fields": {
          "length": {
            "type":     "token_count",
            "analyzer": "standard"
          }
        }
      }
    }
  }
}

PUT my-index-000001/_doc/1
{ "name": "John Smith" }

PUT my-index-000001/_doc/2
{ "name": "Rachel Alice Williams" }

GET my-index-000001/_search
{
  "query": {
    "term": {
      "name.length": 3
    }
  }
}
  1. name 字段是 text(文本)字段,它使用默认的 standard 分析器。
  2. name.length 字段是一个 token_count multi-field(多字段),它将索引 name 字段中的令牌数量。
  3. 这个查询只匹配包含 Rachel Alice Williams 的文档,因为它包含三个令牌。

token_count 字段接受以下参数

analyzer
应该用于分析字符串值的 analyzer(分析器)。必需。为了获得最佳性能,请使用不带令牌过滤器的分析器。
enable_position_increments
指示是否应计算位置增量。如果您不想计算被分析器过滤器(例如 stop)移除的令牌,请将其设置为 false。默认为 true
doc_values
字段是否应以列式存储方式存储在磁盘上,以便以后可用于排序、聚合或脚本编写?接受 true(默认)或 false
index
字段是否可搜索?接受 true(默认)和 false
null_value
接受一个与字段具有相同 type 的数值,该值将替换任何显式的 null 值。默认为 null,这意味着该字段被视为缺失。
store
字段值是否应独立于 _source 字段存储和检索。接受 truefalse(默认)。
重要

合成 _source 通常仅适用于 TSDB 索引(index.mode 设置为 time_series 的索引)。对于其他索引,合成 _source 处于技术预览阶段。技术预览中的功能可能会在未来的版本中更改或移除。Elastic 将努力修复任何问题,但技术预览中的功能不受官方 GA 功能的支持 SLA 的约束。

token_count 字段在其默认配置中支持 合成 _source

© . All rights reserved.