开始前先来了解一个简单的事情:RestFul。
为了方便直观我们使用Head插件提供的接口进行演示,内部调用的RESTful接口。
RESTful接口URL的格式:
http://IP:PORT/{}
其中_index、_type是必须提供的(稍后为大家展示这两项的数据方便理解)。
_id是可选的,不提供es会自动生成。
_index、_type将信息进行分层,利于管理。
_index可以理解为数据库;_type理解为数据表;_id相当于数据库表中记录的主键,是唯一的。
可以通过数据动态、基本查询来确定这三项信息都是什么。
_index,_type,_id
-
索引文档的查询(GET)
根据索引时的ID查询的文档的RESTful接口如下
URL:(两种写法,追加链接后面和在下面写是一样的)
http://IP:PROT/_index/_type/_id
我是采用下面这种写法。
-
文档索引的创建(PUT)
URL写法参考GET:
http://IP:PROT/_index/_type/_id
如果大家不确定新增内容都有哪些字段,可以前往数据动态,找到对应的索引信息,点开其中一条数据就可以看到。
_source里的内容就是索引里对应的字段。
点击提交请求,如果右侧出现version:“1”,那代表这数据插入成功,如果重复执行则为更新,version+1。
如果插入失败那么多数情况都是JSON格式问题,可以校验一下格式,还有json外面不要带_source。
-
文档索引的更新(PUT)
URL:http://IP:PROT/_index/_type/_id
更新操作可完全参考插入操作。
更新接口与创建接口完全一样,ES会查询记录是否存在,如果不存在就是创建,存在就是更新操作。
但是需要注意返回结果:version:2,created:false。
创建的时候version为1,这里执行了更新操作就变为2。 -
文档索引的删除(DELETE)
URL格式参照GET请求:
http://IP:PROT/_index/_type/_id
根据_id删除,删除后无法再查出数据。
到这里head插件的增删改查就结束了,感谢大家的观看。如果有不对的地方或更好的建议还望大佬们指出来。