Elasticsearch是以Restful 风格来命名自己的API的,因此这节就以此来学习下Elasticsearch的基本用法。
基本用法
API基本格式:http://<ip>:<port>/<索引>/<类型>/<文档id>
常用http动词:GET/PUT/POST/DELETE
创建索引
打开我们的head插件:http://localhost:9100/
点击索引-创建索引 如图:
填写索引名称、分片数、被分数(默认为5个分片1个备份),注意分片创建成功后无法修改,备份数可随意修改
,创建完成后如图所示:
book为索引名称,01234为5个分片,粗线框为主分片,细线框为备份分片,对应关系如:细线框0为粗线框0的备份,以此类推,通常备份和主分片在不同的节点上,这样一个节点挂了还有备份分片。
以上为非结构化索引,相反还有结构化索引,那么怎么区分呢?
点击上面的信息-索引信息
出现如图:查看里面的结构化关键词mappings,为空则为非结构化索引
那么如果创建结构化索引呢:
点击复合查询
输入如下格式:
点击易读-验证JSON
正确后提交,在点击信息-索引信息
查看mappings有结构映射的,即为格式化的索引
以上我们创建索引是在head插件了,但head并不是很完美,这里我推荐使用postman
这个工具,他是一个具有http请求的模拟器,可以自动验证json格式,具体用法可以百度下很简单,如图创建people这个索引:
基本增删改查
插入文档
指定文档id插入
自动产生文档id插入
文档id是一个唯一索引值指向我们的文档数据
下面我们来插入一条数据