页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始

copy_to 参数允许你创建自定义的 _all 字段.换句换来说,可以将多个字段的值复制到 group field(组字段),然后可以作为单个字段进行查询.例如, first_name 和 last_name 可以复制到 full_name 字段中,如下所示 :

curl -XPUT 'localhost:9200/my_index?pretty' -H 'Content-Type: application/json' -d'
{
  "mappings": {
    "my_type": {
      "properties": {
        "first_name": {
          "type": "text",
          "copy_to": "full_name"  # 1
        },
        "last_name": {
          "type": "text",
          "copy_to": "full_name"  # 2
        },
        "full_name": {
          "type": "text"
        }
      }
    }
  }
}
'
curl -XPUT 'localhost:9200/my_index/my_type/1?pretty' -H 'Content-Type: application/json' -d'
{
  "first_name": "John",
  "last_name": "Smith"
}
'
curl -XGET 'localhost:9200/my_index/_search?pretty' -H 'Content-Type: application/json' -d'
{
  "query": {
    "match": {
      "full_name": {  # 3
        "query": "John Smith",
        "operator": "and"
      }
    }
  }
}
'


1

2

first_name(名字)和 last_name(姓氏)字段复制到

full_name 字段.

3first_name(名字)和 last_name(姓氏)字段仍然可以分别查询, full_name 可以通过 first_name(名字)和 last_name(姓氏)来查询.


 

一些要点:

  •  复制的是字段值,而不是 term(词条)(由分析过程产生).
  •  _source 字段不会被修改来显示复制的值. 
  • 相同的值可以复制到多个字段,通过 "copy_to": [ "field_1", "field_2" ] 来操作.
  • 无标签