如何诚信网站平台建设,网站开发需要的资料,wordpress仿静态,河北省住建和城乡建设厅网站首页我们都知道#xff0c;elasticsearch在进行搜索引擎的工作时#xff0c;是会先把数据库中的信息存储一份到elasticsearch中#xff0c;再去分词查询等之后的工作的。
elasticsearch中的文档数据会被序列化为json格式后存储在elasticsearch中。elasticsearch会对存储的数据进…我们都知道elasticsearch在进行搜索引擎的工作时是会先把数据库中的信息存储一份到elasticsearch中再去分词查询等之后的工作的。
elasticsearch中的文档数据会被序列化为json格式后存储在elasticsearch中。elasticsearch会对存储的数据进行分类管理相同类型的放在一起。
索引相同类型的文档的集合即同一类型数据的集合叫索引这个不是MySQL中的那个索引为了区分开我们通常把这的索引叫索引库对应的mysql数据库中的table表。
映射索引中文档的字段约束信息类似表的结构约束。常见的mapping映射有
type 字段数据类型常见类型有1、字符串text可分词、keyword精确值不可分词比如品牌名 2、数值 long、integer、short、byte、double、float 3、布尔boolean 4、日期 date 5、对象 object
index:是否创建索引默认是true。看看在实际搜索时你会不会根据这个字段进行筛选查询不会用到就false。
analyser分词器只有text类型才会分词
properties 该字段的子字段只有object才会用到。
#创建索引库并设置mapping映射
PUT /heima
{mappings: {properties: {info:{type: text, analyzer: ik_smart},age:{type: byte},email:{type: keyword, index: false},name:{type: object, properties: {firstName: {type: keyword},lastName: {type: keyword}}}}}
}#查询索引库
GET /heima#删除索引库
DELETE /heima 这代码意思是我们创建的索引库 名叫 /heima 其中属性用info 、age、email、name(子属性 firstName、lastName)
修该操作有点特殊不支持对索引库中已有的字段进行修改但可以新增没有的字段
#修改索引库,不支持对已有的索引库做出修改但可以添加新的字段
PUT /heima/_mapping
{properties:{info:{type:keyword}}
}
下面是对索引库中文档的增删改查
#新增文档 post /索引库名/_doc/文档id
POST /heima/_doc/1
{age:21,email:****1,info:黑马程序员Java学习,name:{firstName:yun,lastName:zhao}
}#查询文档
GET /heima/_doc/1#删除文档
DELETE /heima/_doc/1 同样修改操作有点特殊有俩种方式
#方法一全量修改会删除旧文档添加新文档,文档内所有字段都需要写一遍
#如果修改的文档id对应文档不存在修改操作就会变为新增操作
PUT /heima/_doc/1
{age:21,email:****2,info:黑马程序员Java学习,name:{firstName:yun,lastName:zhao}
}
#方法二增量修改修改指定字段
POST /heima/_update/1
{doc: {email:*****3}
}批量处理同时新增、删除、更新多个数据
#批量处理 index为新增注意新增的各个字段必须写在同一行中。
POST /_bulk
{index:{_index:heima,_id:3}}
{info:黑马程序员Java学习3,age:23,email:****3,name:{firstName:wu,lastName:wang}}
{index:{_index:heima,_id:4}}
{info:黑马程序员Java学习4,age:24,email:****4,name:{firstName:liu,lastName:liu}}#批量删除 delete为删除
POST /_bulk
{delete:{_index:heima,_id:3}}
{delete:{_index:heima,_id:4}}#批量更新 update 。 doc中写要更新的字段
POST /_bulk
{update:{_id:3,_index:heima}}
{doc:{email:****3.1}}
{update:{_id:4,_index:heima}}
{doc:{email:****4.1}}