一、elasticsearch
1.1 分词器
1.2 ik分词器的模式
1.3 拓展词条
type
字段的数据类型,常见字符串有text(可分词)、keyword(j精确值,如国家、品牌、ip)
数值分为long、integer、short、double、byte、float
布尔:boolean
日期:date
对象:objectindex
是否创建索引,默认为trueanallyzer
分词器,只能结合text用。
properties
该字段的子字段,例如姓和名
2.2 索引库操作
- 创建索引库
PUT /hzxy
{
“mappings”: {
“properties”: {
“schoolName”:{
“type”: “text”
, “analyzer”: “ik_smart”
},
“email”:{
“type”:“keyword”,
“index”: false
},
“studentName”:{
“properties”: {
“firstName”:{
“type”:“keyword”
},
“lastName”:{
“type”:“keyword”
}
}
}
}
}
}
- 查看索引库
get /hzxy- 删除
delete /hzxy- 禁止修改索引库,修改后倒排索引会全部失效,但允许添加新字段
PUT /hzxy/_mapping
{
“properties”:{
“studentNum”:{
“type”:“integer”
}
}
}
2.3 文档的操作
- 新增文档
POST /hzxy/_doc/1
{
“email”:“5101919@qq.com”,
“studentName”:{
“firstName”:“三”,
“lastName”:“张”
},
“schoolName”:“贺州学院”,
“studentNum”:120
}
- 删除文档
DELETE /hzxy/_doc/1- 查询文档
GET /hzxy/_doc/1
修改文档
- 全量修改(存在先全部清除在添加,不存在直接添加)
PUT /hzxy/_doc/1
{
“email”:“51019”,
“studentName”:{
“firstName”:“五”,
“lastName”:“王”
},
“schoolName”:“贺州学院”,
“studentNum”:120
}- 局部修改
POST /hzxy/_update/1
{
“doc”: {
“studentNum”:130
}
}