今天就跟大家聊聊有關(guān) ElasticSearch的常用術(shù)語(yǔ)有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),廣豐企業(yè)網(wǎng)站建設(shè),廣豐品牌網(wǎng)站建設(shè),網(wǎng)站定制,廣豐網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,廣豐網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
這篇文章主要介紹 ElasticSearch 的基本概念,學(xué)習(xí)文檔、索引、集群、節(jié)點(diǎn)、分片等概念,同時(shí)會(huì)將 ElasticSearch 和關(guān)系型數(shù)據(jù)庫(kù)做簡(jiǎn)單的類比,還會(huì)簡(jiǎn)單介紹 REST API 的使用用法。
ElasticSearch 術(shù)語(yǔ)
索引和文檔是偏向于邏輯上的概念,節(jié)點(diǎn)和分片更偏向于物理上的概念。
首先來說下什么是文檔:
文檔(Document)
ElasticSearch(簡(jiǎn)稱 ES) 是面向文檔的,文檔是所有可搜索數(shù)據(jù)的最小單位。
給大家舉幾個(gè)例子,讓大家更形象地理解什么是文檔:
日志文件中日志項(xiàng)
一本電影的具體信息、一張唱片的詳細(xì)信息
MP3 播放器里的一首歌、一篇 PDF 文檔中的具體內(nèi)容
一條客戶數(shù)據(jù)、一條商品分類數(shù)據(jù)、一條訂單數(shù)據(jù)
大家可以把文檔理解為關(guān)系型數(shù)據(jù)庫(kù)中的一條記錄。
在 ES 中文檔會(huì)被序列化成 JSON 格式,保存在 ES 中,JSON 對(duì)象由字段組成,其中每個(gè)字段都有對(duì)應(yīng)的字段類型(字符串/數(shù)組/布爾/日期/二進(jìn)制/范圍類型)。
在 ES 中,每個(gè)文檔都有一個(gè) Unique ID,可以自己指定 ID 或者通過 ES 自動(dòng)生成。
在上一篇文章手把手教你搭建 ELK 實(shí)時(shí)日志分析平臺(tái)中,我們講到了通過 Logstash 向 ES 中導(dǎo)入數(shù)據(jù),其中部分測(cè)試數(shù)據(jù)集和對(duì)應(yīng)的轉(zhuǎn)換后的格式如下所示:
movieId,title,genres 193585,Flint (2017),Drama 193587,Bungo Stray Dogs: Dead Apple (2018),Action|Animation 193609,Andrew Dice Clay: Dice Rules (1991),Comedy
我們從測(cè)試數(shù)據(jù)集 csv 文件中讀取一個(gè)個(gè)的 RowData 的電影數(shù)據(jù),然后通過 Logstash 轉(zhuǎn)換進(jìn)行轉(zhuǎn)化以后進(jìn)入到 ES 中就是 JSON 格式。
JSON 每個(gè)字段都有自己的數(shù)據(jù)類型,ES 可以幫助你自動(dòng)做做一個(gè)數(shù)據(jù)類型的推算,并且在 ES 中數(shù)據(jù)還支持?jǐn)?shù)組和嵌套。
每一個(gè)文檔都有對(duì)應(yīng)的元數(shù)據(jù),用于標(biāo)注文檔的相關(guān)信息,我們來了解下元數(shù)據(jù)都有什么內(nèi)容:
{ "_index" : "movies", "_type" : "_doc", "_id" : "2035", "_score" : 1.0, "_source" : { "title" : "Blackbeard's Ghost", "genre" : [ "Children", "Comedy" ], "id" : "2035", "@version" : "1", "year" : 1968 } }
其中,_index 代表文檔所屬的索引名;_type 表示文檔所屬的類型名;_id 為文檔唯一 id;_source 為文檔的原始 JSON 數(shù)據(jù),當(dāng)搜索文檔的時(shí)候默認(rèn)返回的就是 _source 字段;@version 為文檔的版本信息,可以很好地來解決版本沖突的問題;_score為相關(guān)性打分,是這個(gè)文檔在這次查詢中的算分。
介紹完文檔后,讓我們來看下索引:
索引(Index)
索引簡(jiǎn)單來說就是相似結(jié)構(gòu)文檔的集合,比如可以有一個(gè)客戶索引,商品分類索引,訂單索引,索引有一個(gè)名稱,一個(gè)索引可以包含很多文檔,一個(gè)索引就代表了一類類似的或者相同的文檔,比如說建立一個(gè)商品索引,里面可能就存放了所有的商品數(shù)據(jù),也就是所有的商品文檔。每一個(gè)索引都是自己的 Mapping 定義文件,用來去描述去包含文檔字段的類型,分片(Shard)體現(xiàn)的是物理空間的概念,索引中的數(shù)據(jù)分散在分片上。
在一個(gè)的索引當(dāng)中,可以去為它設(shè)置 Mapping 和 Setting,Mapping 定義的是索引當(dāng)中所有文檔字段的類型結(jié)構(gòu),Setting 主要是指定要用多少的分片以及數(shù)據(jù)是怎么樣進(jìn)行分布的。
索引在不同的上下文會(huì)有不同的含義,比如,在 ES 當(dāng)中,索引是一類文檔的集合,這里就是名詞;同時(shí)保存一個(gè)文檔到 ES 的過程也叫索引(indexing),拋開 ES,提到索引,還有可能是 B 樹索引或者是倒排索引,倒排索引是 ES 中一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),會(huì)在以后的文章進(jìn)行講解。
接下來對(duì)類型進(jìn)行講解:
類型(Type)
在 7.0 之前,每一個(gè)索引是可以設(shè)置多個(gè) Types 的,每個(gè) Type 會(huì)擁有相同結(jié)構(gòu)的文檔,但是在 6.0 開始,Type 已經(jīng)被廢除,在 7.0 開始,一個(gè)索引只能創(chuàng)建一個(gè) Type,也就是 _doc。
每個(gè)索引里都可以有一個(gè)或多個(gè) Type,Type 是索引中的一個(gè)邏輯數(shù)據(jù)分類,一個(gè) Type 下的文檔,都有相同的字段(Field),比如博客系統(tǒng),有一個(gè)索引,可以定義用戶數(shù)據(jù) Type,博客數(shù)據(jù) Type,評(píng)論數(shù)據(jù) Type 等。
到此為止,我們學(xué)習(xí)了文檔、索引以及類型的概念,接下來學(xué)習(xí)什么是集群?什么是節(jié)點(diǎn)?什么是分片?
首先來看下集群的概念。
集群(Cluster)
ES 集群其實(shí)是一個(gè)分布式系統(tǒng),要滿足高可用性,高可用就是當(dāng)集群中有節(jié)點(diǎn)服務(wù)停止響應(yīng)的時(shí)候,整個(gè)服務(wù)還能正常工作,也就是服務(wù)可用性;或者說整個(gè)集群中有部分節(jié)點(diǎn)丟失的情況下,不會(huì)有數(shù)據(jù)丟失,即數(shù)據(jù)可用性。
當(dāng)用戶的請(qǐng)求量越來越高,數(shù)據(jù)的增長(zhǎng)越來越多的時(shí)候,系統(tǒng)需要把數(shù)據(jù)分散到其他節(jié)點(diǎn)上,最后來實(shí)現(xiàn)水平擴(kuò)展。當(dāng)集群中有節(jié)點(diǎn)出現(xiàn)問題的時(shí)候,整個(gè)集群的服務(wù)也不會(huì)受到影響。
ES 的分布架構(gòu)當(dāng)中,不同的集群是通過不同的名字來區(qū)分的,默認(rèn)的名字為 elasticsearch,可以在配置文件中進(jìn)行修改,或者在命令行中使用 -E cluster.name=wupx 進(jìn)行設(shè)定,一個(gè)集群中可以有一個(gè)或者多個(gè)節(jié)點(diǎn)。
一個(gè) ES 集群有三種顏色來表示健康程度:
Green:主分片與副本都正常分配
Yellow:主分片全部正常分配,有副本分片未能正常分配
Red:有主分片未能分配(例如,當(dāng)服務(wù)器的磁盤容量超過 85% 時(shí),去創(chuàng)建了一個(gè)新的索引)
了解完集群,那么就來看下什么是節(jié)點(diǎn)。
節(jié)點(diǎn)(Node)
節(jié)點(diǎn)其實(shí)就是一個(gè) ES 實(shí)例,本質(zhì)上是一個(gè) Java 進(jìn)程,一臺(tái)機(jī)器上可以運(yùn)行多個(gè) ES 進(jìn)程,但是生產(chǎn)環(huán)境一般建議一臺(tái)機(jī)器上只運(yùn)行一個(gè) ES 實(shí)例。
每一個(gè)節(jié)點(diǎn)都有自己的名字,節(jié)點(diǎn)名稱很重要(在執(zhí)行運(yùn)維管理操作的時(shí)候),可以通過配置文件進(jìn)行配置,或者啟動(dòng)的時(shí)候 -E node.name=node1 指定。每一個(gè)節(jié)點(diǎn)在啟動(dòng)之后,會(huì)分配一個(gè) UID,保存在 data 目錄下。
默認(rèn)節(jié)點(diǎn)會(huì)去加入一個(gè)名稱為 elasticsearch 的集群,如果直接啟動(dòng)很多節(jié)點(diǎn),那么它們會(huì)自動(dòng)組成一個(gè) elasticsearch 集群,當(dāng)然一個(gè)節(jié)點(diǎn)也可以組成一個(gè) elasticsearch 集群。
候選主節(jié)點(diǎn)(Master-eligible Node) & 主節(jié)點(diǎn)(Master Node)
每一個(gè)節(jié)點(diǎn)啟動(dòng)后,默認(rèn)就是一個(gè) Master-eligible 節(jié)點(diǎn),可以通過在配置文件中設(shè)置 node.master: false 禁止,Master-eligible 節(jié)點(diǎn)可以參加選主流程,成為 Master 節(jié)點(diǎn)。當(dāng)?shù)谝粋€(gè)節(jié)點(diǎn)啟動(dòng)時(shí)候,它會(huì)將自己選舉成 Master 節(jié)點(diǎn)。
每個(gè)節(jié)點(diǎn)上都保存了集群的狀態(tài),只有 Master 節(jié)點(diǎn)才能修改集群的狀態(tài)信息,如果是任意節(jié)點(diǎn)都能修改信息就會(huì)導(dǎo)致數(shù)據(jù)的不一致性。
集群狀態(tài)(Cluster State),維護(hù)一個(gè)集群中必要的信息,主要包括如下信息:
所有的節(jié)點(diǎn)信息
所有的索引和其相關(guān)的 Mapping 與 Setting 信息
分片的路由信息
下面我們來看下什么是 Data Node 和 Coordinating Node?
數(shù)據(jù)節(jié)點(diǎn)(Data Node) & 協(xié)調(diào)節(jié)點(diǎn)(Coordinating Node)
顧名思義,可以保存數(shù)據(jù)的節(jié)點(diǎn)叫作 Data Node,負(fù)責(zé)保存分片上存儲(chǔ)的所有數(shù)據(jù),當(dāng)集群無法保存現(xiàn)有數(shù)據(jù)的時(shí)候,可以通過增加數(shù)據(jù)節(jié)點(diǎn)來解決存儲(chǔ)上的問題,在數(shù)據(jù)擴(kuò)展上有至關(guān)重要的作用。
Coordinating Node 負(fù)責(zé)接收 Client 的請(qǐng)求,將請(qǐng)求分發(fā)到合適的節(jié)點(diǎn),最終把結(jié)果匯集到一起返回給客戶端,每個(gè)節(jié)點(diǎn)默認(rèn)都起到了 Coordinating Node 的職責(zé)。
還有其他的節(jié)點(diǎn)類型,大家可以了解下:
其他節(jié)點(diǎn)類型
冷熱節(jié)點(diǎn)(Hot & Warm Node) :熱節(jié)點(diǎn)(Hot Node)就是配置高的節(jié)點(diǎn),可以有更好的磁盤吞吐量和更好的 CPU,那冷節(jié)點(diǎn)(Warm Node)存儲(chǔ)一些比較久的節(jié)點(diǎn),這些節(jié)點(diǎn)的機(jī)器配置會(huì)比較低。不同硬件配置的 Data Node,用來實(shí)現(xiàn) Hot & Warm 架構(gòu),降低集群部署的成本。
機(jī)器學(xué)習(xí)節(jié)點(diǎn)(Machine Learning Node):負(fù)責(zé)跑機(jī)器學(xué)習(xí)的工作,用來做異常檢測(cè)。
部落節(jié)點(diǎn)(Tribe Node):連接到不同的 ES 集群,并且支持將這些集群當(dāng)成一個(gè)單獨(dú)的集群處理。
預(yù)處理節(jié)點(diǎn)(Ingest Node):預(yù)處理操作允許在索引文檔之前,即寫入數(shù)據(jù)之前,通過事先定義好的一系列的 processors(處理器)和 pipeline(管道),對(duì)數(shù)據(jù)進(jìn)行某種轉(zhuǎn)換、富化。
每個(gè)節(jié)點(diǎn)在啟動(dòng)的時(shí)候會(huì)通過讀取 elasticsearch.yml 配置文件決定自己承擔(dān)什么樣的角色,那么讓我們看下配置節(jié)點(diǎn)類型吧!
配置節(jié)點(diǎn)類型
開發(fā)環(huán)境中一個(gè)節(jié)點(diǎn)可以承擔(dān)多種角色。
生產(chǎn)環(huán)境中,應(yīng)該設(shè)置單一的角色的節(jié)點(diǎn)(dedicated node)。
講完節(jié)點(diǎn),讓我們來看下什么是分片?
分片(Shard)
由于單臺(tái)機(jī)器無法存儲(chǔ)大量數(shù)據(jù),ES 可以將一個(gè)索引中的數(shù)據(jù)切分為多個(gè)分片(Shard),分布在多臺(tái)服務(wù)器上存儲(chǔ)。有了分片就可以橫向擴(kuò)展,存儲(chǔ)更多數(shù)據(jù),讓搜索和分析等操作分布到多臺(tái)服務(wù)器上去執(zhí)行,提升吞吐量和性能。
索引與分片的關(guān)系如上圖所示,一個(gè) ES 索引包含很多分片,一個(gè)分片是一個(gè) Lucene 的索引,它本身就是一個(gè)完整的搜索引擎,可以獨(dú)立執(zhí)行建立索引和搜索任務(wù)。Lucene 索引又由很多分段組成,每個(gè)分段都是一個(gè)倒排索引。 ES 每次 refresh 都會(huì)生成一個(gè)新的分段,其中包含若干文檔的數(shù)據(jù)。在每個(gè)分段內(nèi)部,文檔的不同字段被單獨(dú)建立索引。每個(gè)字段的值由若干詞(Term)組成,Term 是原文本內(nèi)容經(jīng)過分詞器處理和語(yǔ)言處理后的最終結(jié)果(例如,去除標(biāo)點(diǎn)符號(hào)和轉(zhuǎn)換為詞根)。
分片分為兩類,一類為主分片(Primary Shard),另一類為副本分片(Replica Shard)。
主分片主要用以解決水平擴(kuò)展的問題,通過主分片,就可以將數(shù)據(jù)分布到集群上的所有節(jié)點(diǎn)上,一個(gè)主分片就是一個(gè)運(yùn)行的 Lucene 實(shí)例,當(dāng)我們?cè)趧?chuàng)建 ES 索引的時(shí)候,可以指定分片數(shù),但是主分片數(shù)在索引創(chuàng)建時(shí)指定,后續(xù)不允許修改,除非使用 Reindex 進(jìn)行修改。
副本分片用以解決數(shù)據(jù)高可用的問題,也就是說集群中有節(jié)點(diǎn)出現(xiàn)硬件故障的時(shí)候,通過副本的方式,也可以保證數(shù)據(jù)不會(huì)產(chǎn)生真正的丟失,因?yàn)楦北痉制侵鞣制目截?,在索引中副本分片?shù)可以動(dòng)態(tài)調(diào)整,通過增加副本數(shù),可以在一定程度上提高服務(wù)查詢的性能(讀取的吞吐)。
下面通過一個(gè)例子來理解下主分片和副本分片是怎么樣把數(shù)據(jù)分散在集群不同的節(jié)點(diǎn)上的:
PUT /blogs { "settings" :{ "number_of_shards" : 3, "number_of_repicas" : 1 } }
上面是 blogs 索引的定義,其中 settings 中的 number_of_shards 表示主分片數(shù)為 3,number_of_repicas 表示副本只有 1 份。
上圖為 wupx 的一個(gè)集群,里面總共有 3 個(gè)節(jié)點(diǎn),通過上面對(duì)索引 blogs 的配置,當(dāng)有數(shù)據(jù)進(jìn)來的時(shí)候,ES 內(nèi)部就會(huì)把主分片分散在三個(gè)節(jié)點(diǎn)上,同時(shí)把每個(gè)分片的副本分散到其他節(jié)點(diǎn)上,當(dāng)集群中有節(jié)點(diǎn)出現(xiàn)故障,ES 內(nèi)部就會(huì)產(chǎn)生故障轉(zhuǎn)移的機(jī)制,故障轉(zhuǎn)移機(jī)制會(huì)在以后的文章進(jìn)行講解,在上圖中可以看到三個(gè)主分片被分散到三個(gè)節(jié)點(diǎn)上,若在這個(gè)時(shí)候?yàn)榧涸黾右粋€(gè)節(jié)點(diǎn),是否可以增加系統(tǒng)的可用性呢?
帶著這個(gè)問題,我們先看下分片的設(shè)定:
分片的設(shè)定
分片的設(shè)定在生產(chǎn)環(huán)境中是十分重要的,很多時(shí)候需要提前做好容量規(guī)劃,因?yàn)橹鞣制谒饕齽?chuàng)建的時(shí)候需要預(yù)先設(shè)定的,并且在事后無法修改,在前面的例子中,一個(gè)索引被分成了 3 個(gè)主分片,這個(gè)集群即便增加再多節(jié)點(diǎn),索引也只能分散在 3 個(gè)節(jié)點(diǎn)上。
分片設(shè)置過大的時(shí)候,也會(huì)帶來副作用,一方面來說會(huì)影響搜索結(jié)果的打分,影響統(tǒng)計(jì)結(jié)果的準(zhǔn)確性,另外,單個(gè)節(jié)點(diǎn)上過多的分片,也會(huì)導(dǎo)致資源浪費(fèi),同時(shí)也會(huì)影響性能。從 7.0 版本開始,ES 的默認(rèn)主分片數(shù)設(shè)置從 5 改為了 1,從這個(gè)方面也可以解決 over-sharding 的問題。
在了解完 ES 的術(shù)語(yǔ)后,來和我們熟悉的關(guān)系型數(shù)據(jù)庫(kù)做個(gè)類比,以便于我們理解。
RDBMS & ES
我相信大家對(duì)關(guān)系型數(shù)據(jù)庫(kù)(簡(jiǎn)稱 RDBMS)應(yīng)該比較了解,因此接下來拿關(guān)系型數(shù)據(jù)庫(kù)和 ES 做一個(gè)類比,讓大家更容易理解:
從表中,不難看出,關(guān)系型數(shù)據(jù)庫(kù)和 ES 有如下對(duì)應(yīng)關(guān)系:
關(guān)系型數(shù)據(jù)庫(kù)中的表(Table)對(duì)于 ES 中的索引(Index)
關(guān)系型數(shù)據(jù)庫(kù)中的每條記錄(Row)對(duì)應(yīng) ES 中的文檔(Document)
關(guān)系型數(shù)據(jù)庫(kù)中的字段(Column)對(duì)應(yīng) ES 中的字段(Filed)
關(guān)系型數(shù)據(jù)庫(kù)中的表定義(Schema)對(duì)應(yīng)著 ES 中的映射(Mapping)
關(guān)系型數(shù)據(jù)庫(kù)中可以通過 SQL 進(jìn)行查詢等操作,在 ES 中也提供了 DSL 進(jìn)行查詢等操作
當(dāng)進(jìn)行全文檢索或者對(duì)搜索結(jié)果進(jìn)行算分的時(shí)候,ES 比較合適,但如果對(duì)數(shù)據(jù)事務(wù)性要求比較高的時(shí)候,會(huì)把關(guān)系型數(shù)據(jù)庫(kù)和 ES 結(jié)合使用。
為了方便其他語(yǔ)言的整合,ES 提供了 REST API 來給其他程序進(jìn)行調(diào)用,當(dāng)我們的程序要和 ES 進(jìn)行集成的時(shí)候,只需要發(fā)出 HTTP 的請(qǐng)求就會(huì)得到相應(yīng)的結(jié)果,接下來對(duì)基本的 API 進(jìn)行介紹:
REST API
打開 Kibana,我們首先打開 Kibana 的管理菜單(Management),其中提供索引管理功能,可以看到索引管理中有 movies 索引,為上篇文章中導(dǎo)入的,點(diǎn)擊索引,可以看到索引的 Setting 和 Mapping 信息,如何對(duì)其進(jìn)行設(shè)置會(huì)在之后的文章會(huì)進(jìn)行介紹。
言歸正傳,來給大家看 REST API:
接下來打開 Kibana 的開發(fā)工具(Dev Tools),movies 為索引,現(xiàn)在輸入 GET movies點(diǎn)擊執(zhí)行,就可以查看電影索引相關(guān)的信息,主要包含索引的 Mapping 和 Setting。
輸入 GET movies/_count 點(diǎn)擊執(zhí)行,就可以看到索引的文檔總數(shù),運(yùn)行結(jié)果如下:
{ "count" : 9743, "_shards" : { "total" : 1, "successful" : 1, "skipped" : 0, "failed" : 0 } }
輸入如下代碼
POST movies/_search { }
點(diǎn)擊執(zhí)行,就可以查看前 10 條文檔,了解文檔格式。
還可以對(duì)索引的名字進(jìn)行通配符查詢,使用 GET /_cat/indices/mov*?v&s=index ,可以查看匹配的索引。
使用 GET /_cat/indices?v&s=docs.count:desc,可以按照文檔個(gè)數(shù)排序。
使用 GET /_cat/indices?v&health=green,可以查看狀態(tài)為 green 的索引。
使用 GET /_cat/indices?v&h=i,tm&s=tm:desc,可以查看每個(gè)索引占用的內(nèi)存。
ES 還提供了 API 去查看集群的健康狀況,使用 GET _cluster/health 可以集群的健康狀況,返回結(jié)果如下:
{ "cluster_name" : "wupx", "status" : "green", "timed_out" : false, "number_of_nodes" : 2, "number_of_data_nodes" : 2, "active_primary_shards" : 10, "active_shards" : 10, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 }
可以看到集群名字叫 wupx,集群狀態(tài)是 green,一共有 2 個(gè)節(jié)點(diǎn),這兩個(gè)節(jié)點(diǎn)都是承擔(dān) Data Node 角色,另外還有 10 個(gè)主分片。
REST API 就介紹到這里,其余的大家可以自己去摸索下。
細(xì)心的小伙伴會(huì)發(fā)現(xiàn) Kibana 怎么變成中文界面了,其實(shí) Kibana 在 7.0 版本之后,官方自帶漢化資源文件(位于 Kibana 目錄下的 node_modules/x-pack/plugins/translations/translations/),大家可以在 config 目錄下修改 kibana.yml 文件,在文件中加上配置項(xiàng) i18n.locale: "zh-CN",然后重新啟動(dòng) Kibana 就漢化完成了。
本文主要學(xué)習(xí)了文檔、索引、集群、節(jié)點(diǎn)等概念,了解到每個(gè)集群中每個(gè)節(jié)點(diǎn)可以承擔(dān)不同的角色,還了解了什么是主分片和副本分片以及它們?cè)诜植际较到y(tǒng)中起到的作用,還通過和關(guān)系型數(shù)據(jù)庫(kù)做類比,讓大家更易理解,另外還介紹了 REST API 使用,最后給大家總結(jié)下 ES 術(shù)語(yǔ)的思維導(dǎo)圖,思維導(dǎo)圖源文件可以在公眾號(hào)武培軒回復(fù)es獲取。
看完上述內(nèi)容,你們對(duì) ElasticSearch的常用術(shù)語(yǔ)有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。