_type field

原文链接 : https://www.elastic.co/guide/en/elasticsearch/reference/5.3/mapping-type-field.html

译文链接 : http://www.apache.wiki/display/Elasticsearch/_type+field

贡献者 : 朱彦安ApacheCNApache中文网

每个索引的文档都与一个 _type(请参阅 “Mapping Typesedit” 一节)以及一个 _id 相关联。 为了使类型名称快速搜索,_type 字段被索引。

_type字段的值可以在查询,聚合,脚本以及排序时访问:

  1. # Example documents
  2. curl -XPUT 'localhost:9200/my_index/type_1/1?pretty' -H 'Content-Type: application/json' -d'
  3. {
  4. "text": "Document with type 1"
  5. }
  6. '
  7. curl -XPUT 'localhost:9200/my_index/type_2/2?refresh=true&pretty' -H 'Content-Type: application/json' -d'
  8. {
  9. "text": "Document with type 2"
  10. }
  11. '
  12. curl -XGET 'localhost:9200/my_index/_search?pretty' -H 'Content-Type: application/json' -d'
  13. {
  14. "query": {
  15. "terms": {
  16. "_type": [ "type_1", "type_2" ] # 1
  17. }
  18. },
  19. "aggs": {
  20. "types": {
  21. "terms": {
  22. "field": "_type", # 2
  23. "size": 10
  24. }
  25. }
  26. },
  27. "sort": [
  28. {
  29. "_type": { # 3
  30. "order": "desc"
  31. }
  32. }
  33. ],
  34. "script_fields": {
  35. "type": {
  36. "script": {
  37. "lang": "painless",
  38. "inline": "doc['_type']" # 4
  39. }
  40. }
  41. }
  42. }
  43. '

| 1 | 在 _type 字段上查询 | | 2 | 在 _type 字段上聚合 | | 3 | 在 _type 字段上排序 | | 4 | 在脚本中访问 _type 字段 |