字段类型
简单字段类型:text、keyword、date、long、double、boolean、ip
嵌套类型:object、nested
特殊类型:geo_point,geo_shape 或 completion
动态映射
包括动态字段映射、动态模版和索引模版
如果文档中有新的字段(值不为null或空数组),es会把这个字段添加到mapping中
JSON datatype | Elasticsearch datatype |
---|---|
null | No field is added. |
true or false | boolean field |
floating point number | float field |
integer | long field |
object | object field |
array | Depends on the first non-null value in the array. |
string | Either a date field (if the value passes date detection), a double or longfield (if the value passes numeric detection) or a text field, with a keywordsub-field. |
索引模版只在创建索引时生效,修改模版不会对已创建的索引生效。使用创建索引API创建索引时,API指定的同名字段优先于模版定义的字段。
Lucene不理解内部对象,Lucene文档是由一组键值对列表组成的,为了能让es有效地索引内部类,它把文档转化成类似如下结构的文档
{
“tweet”: [elasticsearch, flexible, very],
“user.id”: [@johnsmith],
“user.gender”: [male],
“user.age”: [26],
“user.name.full”: [john, smith],
“user.name.first”: [john],
“user.name.last”: [smith]
}