开发手册 欢迎您!
软件开发者资料库

Elasticsearch - 映射

Elasticsearch Mapping - 从基本概念,安装,填充Elasticsearch,版本之间的迁移,API约定,文档API,搜索API,聚合,索引API,集群API,查询DSL,映射,分析,模块,从简单而简单的步骤学习Elasticsearch测试。

映射是存储在索引中的文档的大纲.它定义了数据类型,如geo_point或字符串以及文档和规则中存在的字段的格式,以控制动态添加字段的映射.例如,

POST http://localhost:9200/bankaccountdetails

请求正文

{   "mappings":{      "report":{         "_all":{            "enabled":true         },         "properties":{            "name":{ "type":"string"}, "date":{ "type":"date"},            "balance":{ "type":"double"}, "liability":{ "type":"double"}         }      }   }}

回复

{"acknowledged":true}

字段数据类型

Elasticsearch支持多种不同的数据类型对于文档中的字段.以下数据类型用于存储Elasticsearch中的字段 :

核心数据类型

这些是几乎所有系统都支持的基本数据类型如整数,长整数,双精度,短整数,字节,双精度,浮点数,字符串,日期,布尔值和二进制.

复杂数据类型

这些数据类型是核心数据类型的组合.像数组,JSON对象和嵌套数据类型.以下是嵌套数据类型的示例 :

POST http://localhost:9200/tabletennis/team/1

请求正文

{   "group" : "players",   "user" : [      {         "first" : "dave", "last" : "jones"      },      {         "first" : "kevin", "last" : "morris"      }   ]}

回复

{   "_index":"tabletennis", "_type":"team", "_id":"1", "_version":1,    "_shards":{"total":2, "successful":1, "failed":0}, "created":true}

地理数据类型

这些数据类型用于定义地理属性.例如,geo_point用于定义经度和纬度,geo_shape用于定义不同的几何形状,如矩形.

专用数据类型

这些数据类型用于特殊目的,如IPv4("ip")接受IP地址,完成数据类型用于支持自动完成建议,token_count用于计算字符串中的令牌数.

映射类型

每个索引都有一个或多个映射类型,用于将索引的文档划分为逻辑组.映射可以根据以下参数彼此不同而减去;

元字段

这些字段提供有关映射和信息的信息与之相关的其他对象.与_index,_type,_id和_source字段类似.

字段

不同的映射包含不同数量的字段和具有不同数据类型的字段.

动态映射

Elasticsearch为自动创建映射提供了一种用户友好的机制.用户可以将数据直接发布到任何未定义的映射,Elasticsearch将自动创建映射,称为动态映射.例如,

POST http://localhost:9200/accountdetails/tansferreport

请求正文

{   "from_acc":"7056443341", "to_acc":"7032460534",   "date":"11/1/2016", "amount":10000}

回复

{   "_index":"accountdetails", "_type":"tansferreport",   "_id":"AVI3FeH0icjGpNBI4ake", "_version":1,   "_shards":{"total":2, "successful":1, "failed":0},   "created":true}

映射参数

映射参数定义映射的结构,有关字段和存储的信息以及如何分析映射数据搜索的时间.这些是以下映射参数 :

  • analyzer

  • boost

  • coerce

  • copy_to

  • doc_values

  • dynamic

  • 已启用

  • fielddata

  • geohash

  • geohash_precision

  • geohash_prefix

  • 格式

  • ignore_above

  • ignore_malformed

  • include_in_all

  • index_options

  • lat_lon

  • index

  • fields

  • 规范

  • null_value

  • position_increment_gap

  • properties

  • search_analyzer

  • 相似度

  • 商店

  • term_vector