安裝包解壓後執行kibana.bat(es已經執行的情況下):http://localhost:5601/
es是面向文件的,儲存文件的同時對其進行索引使其能被搜尋到。
1.建立文件:
put /lxy/demo1/
1
2.讀取文件:
//返回全部資料
get /lxy/demo1/
1
//返回部分資料
get /lxy/demo1/
1?_source=username
3.更新文件:上傳操作在將要被上傳的文件已存在的情況下(通過文件id是否相同來判斷)將會變成修改操作
//全域性更新,如果你更新的時候漏寫了字段,就會被覆蓋,相當於全域性覆蓋
post /lxy/demo1/
1
//區域性更新
post /lxy/demo1/
1/_update
}
兩者區別是區域性更新不會刪除已有的但是更新中沒有寫的字段,它會保持原樣
4.刪除文件:
delete /lxy/demo1/
1
5.批量讀取文件:
//ids相當於存id的陣列,可以存多個文件id
get lxy/demo1/_mget
6.分頁搜尋文件:
get /lxy/_search?size=
1&from=
0
7.查詢字串搜尋:
get /lxy/demo1/_search?q=id:
1
又es提供的專門的查詢語句就叫dsl查詢與過濾
需要傳入query、from等引數用於查詢
get /lxy/demo1/_search},
"from":0
,"size":10
,"_source":[
"id"
,"username"
]}
get /lxy/demo1/_search}}
get /lxy/demo1/_search
}}
關於過濾和查詢,過濾結果可用於後續查詢,過濾效能高於查詢,一般是先過濾再查詢
查詢和過濾通過bool組合,查詢用must、should或must not來表示,過濾用filter來表示
match會分詞,term不會,match分詞後會分別找到其對應的文件,並給出排序分數
get _search}]}}}
//比如這裡會先過濾id為1的,再查詢馬六王五
get _search}]
,"filter":}}}}
分詞器
在全文檢索理論中,文件的查詢是通過關鍵字查詢文件索引來進行匹配,因此將文字拆分為有意義的單詞,對於搜尋結果的準確性至關重要,因此,在建立索引的過程中和分析搜尋語句的過程中都需要對文字串分詞。
//檢視指定型別的對映
如何自定義對映,記住要先修改對映再新增資料
delete lxy
put lxy
,"name":}
}}
//全域性對映
put _template/global_template,:
,"dynamic_templates":[
}}}}
,}}]}}}
ES 和 Kibana 的安裝啟用
部署命令 docker pull docker.elastic.co elasticsearch elasticsearch 7.6.0 docker run name es p 9200 9200 p 9300 9300 e discovery.type single node 單點模式 v da...
ES搜尋 kibana搜尋設定
現在的線上效能監控整體右移,線上的介面資料通過kibana可以查詢到資料。做資料篩選的時候用kibana看,不會。搞搞文件看下。參考 一 搜尋單個的doc get 搜尋內容的名稱比如索引名 search 可以搜尋uri或者搜尋請求body.1.可以在get中設定一些查詢的要求,比如搜尋結果排序方式等...
docker部署es和kibana遇到的坑
docker容器部署es和kibana需要注意的點 1 es和kibana的映象版本必須一致。我這次用的是7.7.1版本 2 es非常占用記憶體,因此在建立容器的時候一定要控制es使用的記憶體 在7.7.1版本的kibana中已經存在了漢化補丁,我們只需要在配kibana的置檔案中新增資訊即可 我在...