
?????????????????????????????? ElasticSearch簡(jiǎn)介
ElasticSearch(以下簡(jiǎn)稱(chēng)ES)在官網(wǎng)的定義為:Elasticsearch 是一個(gè)分布式、可擴(kuò)展、實(shí)時(shí)的 RESTful 風(fēng)格的搜索和數(shù)據(jù)分析引擎,是一個(gè)“天然”支持分布式的基于Apache Lucene(TM)的搜索分析引擎。它可以被下面這樣準(zhǔn)確的形容:
? ? 一個(gè)分布式的實(shí)時(shí)文檔存儲(chǔ),每個(gè)字段都可以被索引與搜索
? ? 一個(gè)分布式實(shí)時(shí)分析搜索引擎
? ? 能勝任上百個(gè)服務(wù)節(jié)點(diǎn)的擴(kuò)展,并支持 PB 級(jí)別的結(jié)構(gòu)化或者非結(jié)構(gòu)化數(shù)據(jù)
---------------------
??????????? 幾個(gè)基本概念
①、Node(節(jié)點(diǎn)):?jiǎn)蝹€(gè)裝有Es 服務(wù)并且提供故障轉(zhuǎn)移和擴(kuò)展服務(wù)器。
②、cluster(集群):一個(gè)集群就是由一個(gè)或多個(gè)node組織在一起,共同工作,共同分享整個(gè)數(shù)據(jù)具有負(fù)載均衡功能的集群。
③、Document(文檔):一個(gè)文檔是一個(gè)可被索引的基礎(chǔ)信息單元。
④、Index(索引):索引就是一個(gè)擁有幾分相似特征的文檔的集合。
⑤、Type(類(lèi)型):一個(gè)索引中你可以定義一種或多種類(lèi)型。
⑥、Field(列):Field是Es的最小單位,相當(dāng)于數(shù)據(jù)的某一列。
⑦、shards(分片):Es將索引分成若干份,每個(gè)部分就是一個(gè)shard。
⑧、Replicas(復(fù)制):Replicas是索引一份或是幾份拷貝
總結(jié):
(1)、Document :可以表示為單個(gè)客戶(hù)的信息;
? ? ? ? ? ? Index:可以表示為多個(gè)客戶(hù)的信息,索引里的文檔都是相似的;建立索引,英文全都要小寫(xiě)。
? ? ? ? ? ? Replicas:Es為了防止數(shù)據(jù)的丟失,還為了做這個(gè)負(fù)載均衡,所以用Replicas。
(2)、Es是非關(guān)系型數(shù)據(jù)庫(kù)
---------------------

節(jié)點(diǎn)類(lèi)型
ES集群中節(jié)點(diǎn)分為:主節(jié)點(diǎn)(master)、數(shù)據(jù)節(jié)點(diǎn)(data)、客戶(hù)端節(jié)點(diǎn)(client),節(jié)點(diǎn)的類(lèi)別是由elasticsearch.yml 配置文件的node.master、node.data兩個(gè)參數(shù)的值來(lái)定義的。
? ? node.master:這個(gè)屬性表示節(jié)點(diǎn)是否具有成為主節(jié)點(diǎn)的資格。注意:此屬性的值為true,并不意味著這個(gè)節(jié)點(diǎn)就是主節(jié)點(diǎn)。因?yàn)檎嬲闹鞴?jié)點(diǎn),是由多個(gè)具有主節(jié)點(diǎn)資格的節(jié)點(diǎn)進(jìn)行選舉產(chǎn)生的。所以,這個(gè)屬性只是代表這個(gè)節(jié)點(diǎn)是不是具有主節(jié)點(diǎn)選舉資格。默認(rèn)情況下,elasticsearch集群中每個(gè)節(jié)點(diǎn)都有成為主節(jié)點(diǎn)的資格,也都存儲(chǔ)數(shù)據(jù),還可以提供查詢(xún)服務(wù)。這些功能是由兩個(gè)屬性控制的。node.master和node.data,默認(rèn)情況下這兩個(gè)屬性的值都是true。
---------------------