Elasticsearch搜索引擎原理理解通俗易懂

記得小馬最早期剛參加工作的時候全文索引用的是Sphinx。 當(dāng)一個功能需要對表中的text varchar等文本進(jìn)行l(wèi)ike查詢時骡尽,MySQL全表掃描很慢遣妥,需要Sphinx。Sphinx能解決性能和中文分詞問題攀细。

Sphinx是一款基于SQL的高性能全文檢索引擎箫踩,Sphinx的性能在眾多全文檢索引擎中也是數(shù)一數(shù)二的爱态,利用Sphinx,我們可以完成比數(shù)據(jù)庫本身更專業(yè)的搜索功能境钟,而且可以有很多針對性的性能優(yōu)化锦担。

使用流程

1.PHP先把要搜索的短語發(fā)給sphinx服務(wù)器(用API發(fā)起請求),sphinx服務(wù)器返回的是記錄的ID

2.PHP用sphinx返回的ID查詢數(shù)據(jù)庫慨削。

Elasticsearch是啥

百科如是說:

Elasticsearch是一個基于Lucene搜索服務(wù)器洞渔。它提供了一個分布式多用戶能力全文搜索引擎,基于RESTful web接口缚态。Elasticsearch是用Java語言開發(fā)的磁椒,并作為Apache許可條款下的開放源碼發(fā)布,是一種流行的企業(yè)級搜索引擎玫芦。Elasticsearch用于云計算中浆熔,能夠達(dá)到實時搜索,穩(wěn)定桥帆,可靠医增,快速,安裝使用方便环葵。官方客戶端在Java调窍、.NET(C#)、PHP张遭、Python邓萨、Apache Groovy、Ruby和許多其他語言中都是可用的菊卷。根據(jù)DB-Engines的排名顯示缔恳,Elasticsearch是最受歡迎的企業(yè)搜索引擎,其次是Apache Solr洁闰,也是基于Lucene歉甚。

小馬本來想自己整理下這塊東西,無意間看到一篇漫畫式的文章扑眉,特別清晰而且通俗易懂纸泄,忍不住引用了,為作者的良苦用心點贊腰素。

原文地址:終于有人把Elasticsearch原理講透了聘裁!

倒排索引

可以通俗理解為使用文本內(nèi)分詞關(guān)鍵字建立索引,搜索時先找到標(biāo)題再找到內(nèi)容(百度谷歌搜索引擎原理)弓千。

搜索引擎原理

Elasticsearch簡介


ES基本概念

呂老師:之前我們說過衡便,Elasticsearch 把操作都封裝成了 HTTP 的 API,我們只要給 Elasticsearch 發(fā)送 HTTP 請求就行。

比如使用curl -XPUT 'http://ip:port/poems'镣陕,就能建立一個名為 Poems 的索引谴餐,其他操作也是類似的。

Elasticsearch 分布式原理

ELK系統(tǒng)

呂老師:但是如果日志接入了ELK 系統(tǒng)就不一樣呆抑。比如系統(tǒng)運(yùn)行過程中岂嗓,突然出現(xiàn)了異常,在日志中就能及時反饋理肺,日志進(jìn)入 ELK 系統(tǒng)中摄闸,我們直接在 Kibana 就能看到日志情況。如果再接入一些實時計算模塊妹萨,還能做實時報警功能年枕。

es集群+elk搭建+kafka搭建分布式日志收集系統(tǒng)。

總結(jié)

反向索引又叫倒排索引乎完,是根據(jù)文章內(nèi)容中的關(guān)鍵字建立索引熏兄。

搜索引擎原理就是建立反向索引。

Elasticsearch 在 Lucene 的基礎(chǔ)上進(jìn)行封裝树姨,實現(xiàn)了分布式搜索引擎摩桶。

Elasticsearch 中的索引、類型和文檔的概念比較重要帽揪,類似于 MySQL 中的數(shù)據(jù)庫硝清、表和行。

Elasticsearch 也是 Master-slave 架構(gòu)转晰,也實現(xiàn)了數(shù)據(jù)的分片和備份芦拿。

Elasticsearch 一個典型應(yīng)用就是 ELK 日志分析系統(tǒng)。

Elasticsearch如何再項目中配合MySQL使用

像的處理流程上面已經(jīng)介紹了查邢,那ES怎么結(jié)合項目呢蔗崎?以下的意思是直接同步DB數(shù)據(jù),然后即可以同時支持查詢考了扰藕。但應(yīng)該會有更高效的協(xié)作方式缓苛,你覺得呢?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末邓深,一起剝皮案震驚了整個濱河市未桥,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌芥备,老刑警劉巖冬耿,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異门躯,居然都是意外死亡淆党,警方通過查閱死者的電腦和手機(jī)酷师,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進(jìn)店門讶凉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來染乌,“玉大人,你說我怎么就攤上這事懂讯『杀铮” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵褐望,是天一觀的道長勒庄。 經(jīng)常有香客問我,道長瘫里,這世上最難降的妖魔是什么实蔽? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮谨读,結(jié)果婚禮上局装,老公的妹妹穿的比我還像新娘。我一直安慰自己劳殖,他們只是感情好铐尚,可當(dāng)我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著哆姻,像睡著了一般宣增。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上矛缨,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天爹脾,我揣著相機(jī)與錄音,去河邊找鬼劳景。 笑死誉简,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的盟广。 我是一名探鬼主播闷串,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼筋量!你這毒婦竟也來了烹吵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤桨武,失蹤者是張志新(化名)和其女友劉穎肋拔,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呀酸,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡凉蜂,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片窿吩。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡茎杂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出纫雁,到底是詐尸還是另有隱情煌往,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布轧邪,位于F島的核電站刽脖,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏忌愚。R本人自食惡果不足惜曲管,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望硕糊。 院中可真熱鬧翘地,春花似錦、人聲如沸癌幕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽勺远。三九已至橙喘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間胶逢,已是汗流浹背厅瞎。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留初坠,地道東北人和簸。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像碟刺,于是被迫代替她去往敵國和親锁保。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,914評論 2 355