ES学习笔记--索引库的操作
mapping属性
mapping是对索引库中文档的约束,常见的mapping属性包括:
type:字段数据类型,
字符串:text(可分词的文本),keyword(精确值,例如:品牌,国家,IP地址)
数值:long,integer,short,byte,double,float
布尔:boolean
日期:date
对象:object
index:是否创建索引,默认为true
analyzer:使用哪种分词器
properties:该字段的子字段
创建索引库
ES中通过restful请求操作索引库,文档,请求内容用DSL语句来表示。创建索引库和mapping的dsl语法如下:
PUT /索引库名称
创建索引库示例:
PUT /test { "mappings": { "properties": { "info":{ "type": "text", "analyzer": "ik_smart" }, "email":{ "type": "keyword", "index": false }, "name":{ "type": "object", "properties": { "firstName":{ "type":"keyword" }, "lastName":{ "type":"keyword" } } } } } }
查看索引库语法:
GET /索引库名 GET /test
修改索引库
索引库和mapping一旦创建无法修改,但是可以添加新的字段
PUT /索引库名/_mapping
PUT /heima/_mapping
{
"properties":{
"address":{
"type":"text"
}
}
}
删除索引库
DELETE /索引库名
eg:DELETE /heima