elasticsearch 增删改查基本操作

最近在学习elasticsearch.就想着记录下es的基本操作。

es的基本概念:

1、索引index:相当于mysql的database

2、类型type:相当于mysql的表

3、文档:相当于mysql的行

新增索引:

a、可以借助于es的head插件:

elasticsearch 增删改查基本操作_第1张图片

这里的索引名称是自定义的。

b、使用接口创建索引:

elasticsearch 增删改查基本操作_第2张图片

我这里是使用postman进行接口请求的。创建一个people索引,并且映射一个man类型。man类型里面有name,country,age,date四个属性。

新增文档:在man类型中新增一条数据,我这里采用自定义id,所以url地址后面有个1,使用put请求

elasticsearch 增删改查基本操作_第3张图片

也可以采用es自动生成ID,就不需要后面的id了,并且需要使用post请求:

elasticsearch 增删改查基本操作_第4张图片

修改文档:

a、基于文档进行修改:

我想修改ID为1 的数据的name。注意接口地址后面有个_update

elasticsearch 增删改查基本操作_第5张图片

b、基于脚本的修改:

脚本修改,可以使用es自带的语言painless ,也可以使用python等脚本语言。

elasticsearch 增删改查基本操作_第6张图片

或者使用params,注意圈红部分与上图的区别

elasticsearch 增删改查基本操作_第7张图片

 

删除记录:删除要使用delete请求

比如我要删除people文档的man类型下ID为1的数据:

elasticsearch 增删改查基本操作_第8张图片

 

删除索引:

elasticsearch 增删改查基本操作_第9张图片

 

查询数据:

a、基本查询:

查询book索引下,novel类型中id为1的数据:

elasticsearch 增删改查基本操作_第10张图片

b、条件查询:

match_all表示查询所有,from ,size类似于mysql中的分页查询。

elasticsearch 增删改查基本操作_第11张图片

elasticsearch 增删改查基本操作_第12张图片

关键字查询:match:{...}

elasticsearch 增删改查基本操作_第13张图片

 

聚合查询:根据word_count聚合

elasticsearch 增删改查基本操作_第14张图片

下面是聚合后查询输的信息

elasticsearch 增删改查基本操作_第15张图片

 

也可以使用聚合查询进行计算:

stats表示统计,会查询出最大,最小,平均,个数,求和等值,stats也可以换成max,min,avg,sum 等,

elasticsearch 增删改查基本操作_第16张图片

 

说完基础查询,我们再来说下高级查询:

高级查询分为:子条件查询跟复合条件查询。

子条件查询:特定条件查询所指的特定值。

       query context:

             全文本查询:

             elasticsearch 增删改查基本操作_第17张图片

              习语匹配查询
          elasticsearch 增删改查基本操作_第18张图片

          多字段匹配查询:匹配author跟title字段中包含ES的内容

         elasticsearch 增删改查基本操作_第19张图片

        语法查询:

                        elasticsearch 增删改查基本操作_第20张图片

          字段级别的查询

     filter Context:查询过程中只判断文档是佛满足条件,只返回yes/no ,不会考虑匹配程度。

复合条件查询:以一定的逻辑组合子条件进行查询。

另外这篇文章写得不错,可以参考:https://blog.csdn.net/laoyang360/article/details/51931981

你可能感兴趣的:(elasticsearch)