十九、Elasticsearch 教程: 映射 ( Mapping )
索引中每个文档都有一个类型( type ) 。 每个类型拥有自己的映射 ( mapping )或者模式定义 (schema definition)
一个映射定义了字段类型,每个字段的数据类型,以及字段被 Elasticsearh 处理的方式。映射还用于设置关联到类型上的元数据
所以,从某些方面说,映射是存储在索引中的文档的大纲,或者说相当于数据库中的某个表的表结构
范例
例如下面这个请求,用于定义银行账户详情
POST http://localhost:9200/bankaccountdetails?pretty
请求正文
{
"mappings":{
"report":{
"properties":{
"name":{ "type":"text"},
"date":{ "type":"date"},
"balance":{ "type":"double"},
"liability":{ "type":"double"}
}
}
返回响应如下
{
"acknowledged" : true,
"shards_acknowledged" : true,
"index" : "bankaccountdetails"
字段类型
Elasticsearch 为文档中的字段提供了大量的数据类型支持。以下列出的数据类型都可以用来定义文档的字段类型
1、 基础数据类型;
Elasticsearch 几乎支持所有系统的基本数据类型
1、 整型(integer);
2、 长整型(longint);
3、 双精度型(double);
4、 短整型(shortint);
5、 字节型(byte);
6、 浮点型(float);
7、 字符串型(string);
8、 日期类型(date);
9、 布尔类型(boolean);
10、 二进制类型(binary);
2、 复合数据类型;
复合数据类型一般由一种或多种数据类型组合而成,比如数据、JSON 对象和嵌套数据类型。