要真正掌握Elasticsearch的读写原理,首先要了解其底层Lucene的读写原理,推荐以下系列文章:
Lucene学习总结之一:全文检索的基本原理 Lucene学习总结之二:Lucene的总体架构
Lucene学习总结之三:Lucene的索引文件格式(1) Lucene学习总结之三:Lucene的索引文件格式(2) Lucene学习总结之三:Lucene的索引文件格式(3)
Lucene学习总结之四:Lucene索引过程分析(1) Lucene学习总结之四:Lucene索引过程分析(2) Lucene学习总结之四:Lucene索引过程分析(3) Lucene学习总结之四:Lucene索引过程分析(4)
Lucene学习总结之五:Lucene段合并(merge)过程分析
Lucene学习总结之七:Lucene搜索过程解析(1) Lucene学习总结之七:Lucene搜索过程解析(2) Lucene学习总结之七:Lucene搜索过程解析(3) Lucene学习总结之七:Lucene搜索过程解析(4) Lucene学习总结之七:Lucene搜索过程解析(5) Lucene学习总结之七:Lucene搜索过程解析(6)
注意:以上只可作为参考,因为Elasticsearch的内核Lucene版本变化很快
对于Elasticsearch读写原理,可参考: Every shard deserves a home 上文翻译版:每一个数据分片都适得其所 Dynamically Updatable Indices Segment Merging:分段合并原理 Elasticsearch架构原理 ElasticSearch读写原理 Elasticsearch写入原理深入详解 elasticsearch原理剖析