一文帶你了解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登陸認證