一文带你了解Postman操作ES
查询模版
- 先来点干货:常用的查询模版 ,这个模版基本满足生产查询要求
注释我这里注释,在执行时去掉,只是给大家看一下什么意思
例举一个请求:ES7.x后type默认为_doc,将test替换为_doc
{
"query" : {
"bool" : {
"filter":[//filter 这后面是过滤条件
{"term":{"uri":"111111"}},//客户号
{"range":{"rundata_date":{"gte":"20190108","lte":"20190110"}}}//时间过滤,注意此字段类型,string不能过滤
]
}
},
"aggregations" : { //这里我主要关注一个指标,handleTime字段,标示执行时间,主要对它进行监控
"avg_handleTime" : { //可以自己命名
"avg" : {
"field": "handleTime"//平均执行时间
}
},
"percent_handleTime":{
"percentiles":{
"field": "handleTime",
"percents":[50,95,99] //这个是现实 50、95、99的线,从小到大,例如到95%执行时间为1.5s,可以看满足预期的比例
}
},
"min_handleTime":{
"min":{
"field": "handleTime"//最小执行时间
}
},
"max_handleTime":{
"max":{
"field": "handleTime"//最大执行时间
}
}
},
"size":0//显示几条数据,我这里不需要显示,可以根据需要修改
}
ES对照关系
索引操作
【Index】
1、创建索引
2、获取索引
3、获取所有索引
4、删除索引
文档操作
[Documents]
1、创建文档
- 分解
http://127.0.0.1:9200/shopping/_doc/1001
http://127.0.0.1:9200/ 这个是IP和端口
shopping 索引
_doc ES7.x后默认type为_doc,请求的时候可以省略不写
1001 主键,document id ,唯一,我们常常通过它来检索数据
- 扩展 document id 有两种生成方式
第一种:手动指定,我上面这种就是手动指定,可以指定
一条数据的一个字段
,这个字段要求是主键第二种:自动生成,不指定ES系统就会自动生成。自动生成的id,长度为20个字符,URL安全,base64编码,GUID,分布式系统并行生成时不可能会发生冲突
2、主键查询
- 根据主键查询一条数据
3、全量数据
- 该索引下的全部数据
4、覆盖数据
- 这个会覆盖原来的 document id 1003 下的数据
5、更新数据
- 其它不变,更新部分字段数据
6、删除文档
- 根据document id删除 ,其实相当于根据主键删除那一列
查询操作
1、条件查询
2、匹配查询
3、全量查询
4、分页查询
- from 显示第几页,size为每页显示几条数据
5、分页过滤
- 只显示指定字段
6、排序查询
7、组合查询
{
"query" : {
"bool":{ //表示多个条件
"must" : [ //must 表示多个条件同时成立 should 表示或者的意思
{
"match":{
"category":"小米"
}
},
{
"match":{
"price":"3999.0"
}
}
],
"filter" : {
"range" : {
"price" : {
"gt":3000
}
}
}
}
}
}
8、分词查询
9、完全匹配查询
Mapping
ES模版
1、创建Mapping
- 创建Mapping需要先创建索引
2、查询Mapping
GET http://127.0.0.1:9200/wsy/_Mapping
3、查询template
- 在logstash可以定义模版,后续在Logstash更新
GET http://127.0.0.1:9200/_template/shopping
别名
-
别名:通过检索一个索引可以检索多个索引的数据,例如我们每天建一个索引,wsy_20211103,wsy_20211104,wsy_20211105…..
想看到所有有关wsy_*的数据,我们可以通过别名来实现
1、查询别名
2、添加别名
- 删除将add改为 “remove”
登陆认证
- 有关ES怎么登陆认证请看 ES登陆认证