es索引與資料結構 ,以及其他知識使用

2021-08-16 11:15:35 字數 1812 閱讀 7268

1:es   索引與資料結構對映

----es索引說明: 

索引結構: index/type/id   

對應的關係型資料庫結構  index = database , type = table , id = id 

----預設

--插入新的索引

put test-index/default/1

--查詢索引與資料結構

-結果,

"test": }}

}}}}

}--解釋

es會對字段型別進行分析和模式匹配,test的字段會對映為string,other欄位對映為long

put newindex

,"age": }}

}}--說明

索引newindex - 指定 name為text ,age指定long

--檢視

--測試

put newindex/default/1

--結果

failed to parse [age]

--測試2

put newindex/default/1

--結果

"created": true

2:es  對binary資料型別的支援

--原理

該binary型別接受乙個二進位制值作為 base64編碼的字串。該欄位預設情況下不儲存,不可搜尋

--使用

put my_index

, "blob": }}

}}

資料插入:
put my_index/_doc/1

----在外掛程式中獲取

final scriptdocvalues.bytesrefs bytesrefs = (scriptdocvalues.bytesrefs)doc().get("

blob");

byte binary = bytesrefs.getvalue().bytes;

3:es 中文分詞器安裝與使用   

--這裡搬運自github  原github位址

--安裝

./bin/elasticsearch-plugin install /releases/download/v6.2.2/elasticsearch-analysis-ik-6.2.2.zip

--使用

}4:es  索引模板

--場景

當定義多個類似結構的索引資料時使用

索引分段儲存

命名my_* 會對所有以my_為字首的索引進行結構對映

--使用

"default": "properties": ,

"age": }}

}}5:es   查詢快取

--原理

--使用

6:es  分片與查詢

--原理與意義

--合理使用

7: es系統監控工具 安裝x-pack 

可看這篇文章:

mysql的索引及其資料結構

mysql使用中,當業務量過大,通常會通過建立索引增加效率。兩種索引 索引其實是一種資料結構,在mysql中主要有兩種 hash索引和b tree 索引。兩者中hash索引是無序的,不支援範圍查詢,只適合等值查詢。b 樹是一種多路平衡查詢樹,所以他的節點是有序的 左子節點小於父節點 父節點小於右子節...

索引的資料結構及其優化策略

為什麼使用b 樹而不是紅黑樹作為索引?一般來說,索引本身也很大,不可能全部儲存在記憶體中,因此索引往往以索引檔案的形式儲存的磁碟上。這樣的話,索引查詢過程中就要產生磁碟i o消耗,相對於記憶體訪問,i o訪問的消耗要高幾個數量級,索引的結構組織要儘量減少查詢過程中磁碟i o的訪問次數。磁碟往往不是嚴...

資料結構 氣泡排序以及其優化

我以前一直對冒牌排序不以為然,作為最容易寫出來的排序.直到前兩天我被人問到乙個問題,讓我把普通的氣泡排序最好的時間複雜度 優化到o n 當然氣泡排序最壞時間複雜度o n 2 這個沒有辦法改變.我們只能盡量優化它的過程讓它少走幾次迴圈.其實仔細做起來,我 在寫程式有時候還是太片 面了不能夠考慮到最優的...