Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)_第1頁
Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)_第2頁
Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)_第3頁
Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)_第4頁
Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Elasticsearch源碼解析與優(yōu)化實(shí)戰(zhàn)讀書筆記模板01思維導(dǎo)圖讀書筆記目錄分析內(nèi)容摘要精彩摘錄作者介紹目錄0305020406思維導(dǎo)圖實(shí)戰(zhàn)讀者模塊速度原理問題第章流程分析模塊節(jié)點(diǎn)小結(jié)數(shù)據(jù)搜索總結(jié)優(yōu)化分片過程速度關(guān)鍵字分析思維導(dǎo)圖內(nèi)容摘要內(nèi)容摘要本書介紹了Elasticsearch的系統(tǒng)原理,旨在幫助讀者了解其內(nèi)部原理、設(shè)計(jì)思想,以及在生產(chǎn)環(huán)境中如何正確地部署、優(yōu)化系統(tǒng)。系統(tǒng)原理分兩方面介紹,一方面詳細(xì)介紹主要流程,例如啟動(dòng)流程、選主流程、恢復(fù)流程;另一方面介紹各重要模塊的實(shí)現(xiàn),以及模塊之間的關(guān)系,例如gateway模塊、allocation模塊等。本書的最后一部分介紹如何優(yōu)化寫入速度、搜索速度等大家關(guān)心的實(shí)際問題,并提供了一些診斷問題的方法和工具供讀者參考。讀書筆記讀書筆記從源碼和理論角度分析es的具體實(shí)現(xiàn).整體評價(jià)不錯(cuò).但是總感覺有些細(xì)節(jié)說的不到位.還需要讀者結(jié)合自己的實(shí)踐和作者的結(jié)論去做驗(yàn)證.。至少畫點(diǎn)流程圖,時(shí)序圖,架構(gòu)圖。邏輯混亂,看的人莫名其妙。原理上講的比較粗,基本都是分析一些主要代碼初期入門還是可以的。精彩摘錄精彩摘錄在存儲(chǔ)結(jié)構(gòu)上,由_index、_type和_id唯一標(biāo)識(shí)一個(gè)文檔。由于系統(tǒng)先緩沖一段數(shù)據(jù)才寫,且新段不會(huì)立即刷入磁盤,這兩個(gè)過程中如果出現(xiàn)某些意外情況(如主機(jī)斷電),則會(huì)存在丟失數(shù)據(jù)的風(fēng)險(xiǎn)。通用的做法是記錄事務(wù)日志,每次對ES進(jìn)行操作時(shí)均記錄事務(wù)日志,當(dāng)ES啟動(dòng)的時(shí)候,重放translog中所有在最后一次提交后發(fā)生的變更操作。比如HBase等都有自己的事務(wù)日志。目前我們認(rèn)為ES適合中等數(shù)據(jù)量的業(yè)務(wù),不適合存儲(chǔ)海量數(shù)據(jù)。通過關(guān)鍵詞檢索文檔內(nèi)容,會(huì)使用倒排索引的數(shù)據(jù)結(jié)構(gòu)。倒排索引一旦被寫入文件后就具有不變性,不變性具有許多好處:對文件的訪問不需要加鎖,讀取索引時(shí)可以被文件系統(tǒng)緩存等。一個(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)過分詞器處理和語言處理后的最終結(jié)果(例如,去除標(biāo)點(diǎn)符號(hào)和轉(zhuǎn)換為詞根)。在實(shí)際應(yīng)用中,我們不應(yīng)該向單個(gè)索引持續(xù)寫數(shù)據(jù),直到它的分片巨大無比。巨大的索引會(huì)在數(shù)據(jù)老化后難以刪除,以_id為單位刪除文檔不會(huì)立刻釋放空間,刪除的doc只在Lucene分段合并時(shí)才會(huì)真正從磁盤中刪除。目錄分析1.1基本概念和原理1.2集群內(nèi)部原理1.3客戶端API1.4主要內(nèi)部模塊簡介第1章走進(jìn)Elasticsearch2.1編譯源碼2.3代碼書簽和斷點(diǎn)組2.2調(diào)試Elasticsearch第2章準(zhǔn)備編譯和調(diào)試環(huán)境3.1選舉主節(jié)點(diǎn)3.2選舉集群元信息3.3allocation過程3.4indexrecovery第3章集群啟動(dòng)流程3.6小結(jié)3.5集群啟動(dòng)日志第3章集群啟動(dòng)流程4.1啟動(dòng)流程做了什么4.2啟動(dòng)流程分析4.3節(jié)點(diǎn)關(guān)閉流程4.4關(guān)閉流程分析4.5分片讀寫過程中執(zhí)行關(guān)閉12345第4章節(jié)點(diǎn)的啟動(dòng)和關(guān)閉4.7小結(jié)4.6主節(jié)點(diǎn)被關(guān)閉第4章節(jié)點(diǎn)的啟動(dòng)和關(guān)閉5.1設(shè)計(jì)思想5.2為什么使用主從模式5.3選舉算法5.4相關(guān)配置第5章選主流程5.5流程概述5.6流程分析5.7節(jié)點(diǎn)失效檢測5.8小結(jié)第5章選主流程6.1PacificA算法6.2ES的數(shù)據(jù)副本模型6.3AllocationIDs6.4SequenceIDs6.5_version12345第6章數(shù)據(jù)模型7.1文檔操作的定義7.2可選參數(shù)7.3Index/Bulk基本流程7.4Index/Bulk詳細(xì)流程7.5I/O異常處理12345第7章寫流程7.7思考7.6系統(tǒng)特性第7章寫流程8.1可選參數(shù)8.3GET詳細(xì)分析8.2GET基本流程第8章GET流程8.5思考8.4MGET流程分析第8章GET流程9.2searchtype9.1索引和搜索第9章Search流程9.4小結(jié)9.3分布式搜索過程第9章Search流程10.1相關(guān)配置10.2流程概述10.3主分片恢復(fù)流程10.4副分片恢復(fù)流程第10章索引恢復(fù)流程分析10.5recovery速度優(yōu)化10.6如何保證副分片和主分片一致10.7recovery相關(guān)監(jiān)控命令10.8小結(jié)第10章索引恢復(fù)流程分析11.1元數(shù)據(jù)11.3元數(shù)據(jù)的恢復(fù)11.2元數(shù)據(jù)的持久化第11章gateway模塊分析11.5思考11.4元數(shù)據(jù)恢復(fù)流程分析第11章gateway模塊分析12.1什么是allocation12.2觸發(fā)時(shí)機(jī)12.3allocation模塊結(jié)構(gòu)概述12.4allocators12.5deciders12.6核心reroute實(shí)現(xiàn)010302040506第12章allocation模塊分析12.7從gateway到allocation流程的轉(zhuǎn)換12.9思考12.8從allocation流程到recovery流程的轉(zhuǎn)換第12章allocation模塊分析13.1倉庫13.2快照13.3從快照恢復(fù)13.4創(chuàng)建快照的實(shí)現(xiàn)原理第13章Snapshot模塊分析13.6思考與總結(jié)13.5刪除快照實(shí)現(xiàn)原理第13章Snapshot模塊分析14.1集群狀態(tài)14.3提交集群任務(wù)14.2內(nèi)部封裝和實(shí)現(xiàn)第14章Cluster模塊分析14.4集群任務(wù)的執(zhí)行過程14.5集群狀態(tài)的發(fā)布過程14.6應(yīng)用集群狀態(tài)14.7查看等待執(zhí)行的集群任務(wù)14.8任務(wù)管理API14.9思考與總結(jié)010302040506第14章Cluster模塊分析15.1配置信息15.3REST解析和處理15.2Transport總體架構(gòu)第15章Transport模塊分析15.5思考與總結(jié)15.4RPC實(shí)現(xiàn)第15章Transport模塊分析16.1線程池類型16.2處理器設(shè)置16.3查看線程池16.4ES的線程池實(shí)現(xiàn)第16章ThreadPool模塊分析16.6思考與總結(jié)16.5其他線程池第16章ThreadPool模塊分析17.1準(zhǔn)備源索引17.3Shrink的工作原理17.2縮小索引第17章Shrink原理分析18.1translogflush間隔調(diào)整18.2索引刷新間隔refresh_interval18.3段合并優(yōu)化18.4indexingbuffer第18章寫入速度優(yōu)化18.5使用bulk請求18.6磁盤間的任務(wù)均衡18.7節(jié)點(diǎn)間的任務(wù)均衡18.8索引過程調(diào)整和優(yōu)化18.9參考配置18.10思考與總結(jié)010302040506第18章寫入速度優(yōu)化19.1為文件系統(tǒng)cache預(yù)留足夠的內(nèi)存19.2使用更快的硬件19.3文檔模型19.4預(yù)索引數(shù)據(jù)第19章搜索速度的優(yōu)化19.5字段映射19.6避免使用腳本19.7優(yōu)化日期搜索19.8為只讀索引執(zhí)行force-merge19.9預(yù)熱全局序號(hào)(globalordinals)12345第19章搜索速度的優(yōu)化19.10executionhint19.11預(yù)熱文件系統(tǒng)cache19.12轉(zhuǎn)換查詢表達(dá)式19.13調(diào)節(jié)搜索請求中的batched_reduce_size第19章搜索速度的優(yōu)化19.14使用近似聚合19.15深度優(yōu)先還是廣度優(yōu)先19.16限制搜索請求的分片數(shù)19.17利用自適應(yīng)副本選擇(ARS)提升ES響應(yīng)速度第19章搜索速度的優(yōu)化20.1預(yù)備知識(shí)20.3測試數(shù)據(jù)20.2優(yōu)化措施第20章磁盤使用量優(yōu)化21.1集群層21.2節(jié)點(diǎn)層21.3系統(tǒng)層21.4索引層第21章綜合應(yīng)用實(shí)踐21.5客戶端21.7控制相關(guān)度21.6讀寫第21章綜合應(yīng)用實(shí)踐22.1使用ProfileAPI定位慢查

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論