ElasticSearch入門介紹之會當凌絕頂(一)

ElasticSearch也是一款很是優秀的開源的全文檢索框架,以大名鼎鼎的Apache Lucene爲基礎,高度封裝了更豐富,易用的API,同時與Apache Solr同樣,提供了很是強大的分佈式集羣功能! 

有不懂ElasticSearch(下文簡稱es)是幹啥的朋友,能夠點此連接在百科上先大體瞭解下。 


下面進入正題,本篇散仙先從宏觀上介紹es的一些概念和特性,讓你們可以對es總體有個認識,後續,散仙會寫一些怎麼安裝,部署,調優,使用,集羣等 

es和lucene,solr同樣,都是無模式的基於列式的存儲格式,這和大多數的NoSQL數據庫是同樣的,很是靈活,下面咱們經過一張圖,來看下關係型數據庫映射到es裏面,對應的名詞關係: 
node

 

 

 

瞭解這個以後,咱們對es的認識就會更加清晰明瞭,下面咱們看下es自身的一些優點和功能: 


1,一個基於分佈式的Restful的搜索引擎 
2,高可用 
3,每份索引是基於配置衝的一個shard 
4,每一個shard能夠有一個或多個副本 
5,讀操做自動負載到任何一個副本 
6,多租戶和多Type的 
7,支持多於一種索引(相似數據庫) 
8,一個索引又支持多種type(相似表) 
9,靈活的索引配置,分片數,存儲類型 
10,多種多樣的set的api接口 
11,基於http的restful的api 
12,完美支持本地原生Java api 
13,全部的api操做,支持自動路由轉發 
14,面向Document的存儲模式 
15,動態的數據類型配置,無須提早定義 
16,schema能夠給每一個type進行定製化操做 
17,長久的高可靠,異步的寫支持 
18,近實時的搜索效果(注意是近實時,不是實時) 
19,基於Apache Luecene 
20,每一個shard都是一個功能齊全的lucene索引 
21,全部的lucene功能在es裏均可以經過簡單的配置和插件進行實現 
22,保證操做一致性 
23,單個doc(至關於關係型數據庫裏的一行數據)級別的操做,支持A(原子的),C(一致的),I(隔離的),D(持久的)特性 
24,徹底基於Lucene開源的企業級全文檢索框架 
數據庫

 

 

 

不一樣的讀寫場景支持: 
es是一個高可靠的,分佈式的搜索引擎,每份超大的索引被拆分紅多個shards,每個shard支持一個或多個副本,默認狀況下,一份大的索引拆分紅5個shards,每一個shard又有一個副本(5/1),固然,咱們也能夠根據本身的狀況配置適合咱們的拓撲結構,,包括1個shard,10個副本(1/10),支持讀多寫少的場景,或者20個shard,一個備份,支持寫多,讀少的場景,固然在咱們搜索時,會是相似一個map,reduce的過程,多個map檢索,最後在一個reduce進行合併結果。 

爲了支持es的分佈式的特性,每一個shard會部署在一個或多個node(機器節點)上,支持啓動和關閉,只要確保咱們寫正確了http端口,系統就會繼續接受請求,爲咱們查詢最近一次的索引的數據 
api

 

 

 

最後,散仙幫朋友發個招聘啓事: 

招聘職位: 搜索工程師 
一些要求: 

1,熟練使用lucene,solr 
2,有電商搜索經驗的優先 
3, 3年以上的Java開發經驗 
4,學歷專科以上便可 

公司主作跨境b2b電商平臺 
地址在三元橋附近 
福利:話補,飯補   
薪水在15K-20K之間 

有意者請留言聯繫散仙,幫推薦! 
微信

 

歡迎你們關注微信公衆號:我是工程師(woshigcs),更多與攻城師息息相關的內容,盡在此處。 
二維碼掃描: 
restful

 

 

相關文章
相關標籤/搜索