對(duì)不起 | 對(duì)不起,你以前學(xué)的 ElasticSearch 都不行!

撒是ElasticSearch

ElasticSearch 是一個(gè)基于 Lucene 的搜索服務(wù)器,其提供了一個(gè)分布式的多用戶能力的全文搜索引擎,基于 RestFul Api Web 接口,基于 Java 語(yǔ)言開(kāi)發(fā),在 Apache 許可下發(fā)布??梢赃B接多種語(yǔ)言,例如Java,PhP,.net 等。

快速入門

創(chuàng)建索引庫(kù)

ES 的索引庫(kù)是一個(gè)邏輯概念,包括分詞列表和文檔列表,相當(dāng)于MySql的表,MongoDB的集合。

基于Restful API 這樣使用

put http://localhost:9200/索引庫(kù)名稱

同時(shí)需要設(shè)置需要的請(qǐng)求體

{
    "settings":{ 
        "index":{
            "number_of_shards":1,
            "number_of_replicas":0
        }
    }
}

number_of_shards 分片數(shù)量

number_of_replicas 副本數(shù)量

同時(shí),還可以使用 head 插件創(chuàng)建新的索引

image

創(chuàng)建映射

在索引中,每個(gè)文檔都包含了一個(gè)或多個(gè) fieID,創(chuàng)建映射就是在索引庫(kù)中創(chuàng)建 fieID 的過(guò)程。

其對(duì)比如下

文檔(Document)----------------Row記錄 
字段(Field)-------------------Columns列

其格式如下

post http://localhost:9200/索引庫(kù)名稱/_mapping

為 xedu_course 索引庫(kù)創(chuàng)建對(duì)應(yīng)的映射,共包括三個(gè)字段:

name:課程名稱

description:課程描述

studymondel:課程狀態(tài)

image.png

在 head 中查看

image

創(chuàng)建文檔

相當(dāng)于創(chuàng)建 MySql 中的記錄

其格式如下

put 或 Post http://localhost:9200/索引庫(kù)名稱/_doc/id值 
# 如果不指定id值ES會(huì)自動(dòng)生成ID
image.png

在 head 中查看

image.png

搜索文檔

根據(jù)課程 id 查詢文檔

get http://192.168.116.129:9200/xedu_course/_doc/4028e58161bcf7f40161bcf8b77c0000
image.png

查詢所有記錄

get http://192.168.116.129:9200/xedu_course/_doc/_search
image.png

查詢名稱中包括 bootstrap 關(guān)鍵字的的記錄

get http://192.168.116.129:9200/xedu_course/_doc/_search?q=name:bootstrap

查詢學(xué)習(xí)模式為 201001 的記錄

get http://192.168.116.129:9200/xedu_course/_doc/_search?q=studymodel:201001

分詞器

索引中保存的是一個(gè)個(gè)的詞,當(dāng)去搜索的時(shí)候,使用關(guān)鍵字去匹配索引中的值,找到關(guān)聯(lián)的文檔。

測(cè)試分詞器

post http://192.168.116.129:9200/_analyze
{"text":"測(cè)試分詞器,后邊是測(cè)試內(nèi)容:spring cloud實(shí)戰(zhàn)"}
image.png

使用 ik 分詞器實(shí)現(xiàn)中文詞組分詞

post http://192.168.116.129:9200/_analyze 
{"text":"測(cè)試分詞器,后邊是測(cè)試內(nèi)容:spring cloud實(shí)戰(zhàn)","analyzer":"ik_max_word" }

映射

查詢

查詢所有索引的映射

get http://192.168.116.129:9200/_mapping
image.png

創(chuàng)建

post http://localhost:9200/索引庫(kù)名稱/_mapping

更新

可以添加字段,不能更新已有的字段

刪除

通過(guò)刪除索引來(lái)刪除映射

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容