index_prefixes编辑

index_prefixes 参数允许对词语前缀进行索引,以加快前缀搜索速度。它接受以下可选设置

min_chars

要索引的最小前缀长度。必须大于 0,默认值为 2。该值包含在内。

max_chars

要索引的最大前缀长度。必须小于 20,默认值为 5。该值包含在内。

此示例使用默认前缀长度设置创建文本字段

response = client.indices.create(
  index: 'my-index-000001',
  body: {
    mappings: {
      properties: {
        body_text: {
          type: 'text',
          index_prefixes: {}
        }
      }
    }
  }
)
puts response
PUT my-index-000001
{
  "mappings": {
    "properties": {
      "body_text": {
        "type": "text",
        "index_prefixes": { }    
      }
    }
  }
}

空设置对象将使用默认的 min_charsmax_chars 设置

此示例使用自定义前缀长度设置

response = client.indices.create(
  index: 'my-index-000001',
  body: {
    mappings: {
      properties: {
        full_name: {
          type: 'text',
          index_prefixes: {
            min_chars: 1,
            max_chars: 10
          }
        }
      }
    }
  }
)
puts response
PUT my-index-000001
{
  "mappings": {
    "properties": {
      "full_name": {
        "type": "text",
        "index_prefixes": {
          "min_chars" : 1,
          "max_chars" : 10
        }
      }
    }
  }
}