ElasticSearch7 2 1的一些學習筆記

2021-10-22 18:39:13 字數 1898 閱讀 2879

索引(index) 相當於資料庫中的表,

type這個概念在es7.x中已經被移除,現在預設是_doc,

文件document相當於資料庫中的一行資料,

field相當於一行資料中的一列。

string型別的:

keyword:預設是不可分詞的

text:可以被分詞

數字型別:

byte,short,integer,long ,double,float,

scaled_float 如果要存的數字市65.25,scaled_float 型別會儲存成6525,scaled_float 有乙個縮放因子,通過指定縮放因子是100,就會得到真正的**65.25.

post請求是插入請求的時候,如果/_doc/後面不傳入id的話,插入到es中的資料的 _id,就會是自動生成的。

post和put請求都可以更新資料

這裡我用name欄位進行查詢ik_max_word,name欄位是text的,分詞型別用的是ik_max_word

match匹配查詢

這裡只會查詢到一條,也就是星期四的那條資料,如果name後面值改為星期,就會查詢到四條,也就是星期一到星期四的資料。

term精確查詢

這裡也只會查詢到一條資料,然後我就想這個和match有什麼區別了?

這裡查詢的值都是一樣的,都是 星四,結果是不一樣的,term是查詢不到值的,match是查詢到一條資料的。

使用get _analyze

檢視了一下分詞的結果。

我想term是精確查詢,所以是不是只有分詞器對field進行分詞的時候,分割的結果集中有乙個和term中的值全等才會查詢到,match匹配查詢的話只要包含分詞的結果之一,就會查詢到。

bool聯合查詢,通常搭配must,should,must_not,filter

must 相當於sql中的and

should 相當於sql中的or

filter則是

filter和must都是返回結果必須滿足其中的條件,區別存在於

「_source」可以設定返回的字段

sort是排序,from是第幾頁,size每頁顯示多少個。

條件修改_update_by_query,第一次執行的時候報錯,原因是因為等號後面的字串少加了 』 單引號 給括起來。

還有一種寫法,其中elasticsearch painless是es的乙個指令碼語言

Elasticsearch 7 2 學習筆記(二)

確切的匹配若干個單詞或者短語 phrases 例如我們想要查詢同時包含 rock 和 climbing 並且是相鄰的 的員工記錄。match查詢變更為match phrase查詢即可 get megacorp employee search 之前的語句上增加highlight引數 get megac...

ElasticSearch7 2之索引別名的使

在開發中,隨著業務需求的迭代,較 的業務邏輯就要 臨更新甚 是重構,對於es來說,為了適應新的業務邏輯,可能就要對原有的索引做 些修改,如對某些欄位做調整,甚 是重建索引。做這些操作的時候,可能會對業務造成影響,甚 是停機調整等問題。由此,es提供了索引別名來解決這些問題。索引別名就像 個快捷 式或...

7 2 使用者管理

只有管理員完成初始化登陸,並設定完響應使用者註冊的電子郵箱之後,才能啟用桉樹的登陸介面和註冊介面。桉樹會給客戶傳送乙個接受或拒絕乙個註冊申請的電子郵件。在接受到通知的情況下,使用者將看到乙個啟用帳戶的鏈結。啟用帳戶之前,使用者必須用註冊提交的使用者名稱和密碼登入。有興趣加入雲的使用者可以訪問桉樹管理...