Annotated Lucene 源码剖析中文版 PDF 文档
Apache Lucene 是一个高性能(high-performance)的全能的全文检索(full-featured text search engine)的搜索引擎框架库,完全(entirely)使用 Java 开发。它是一种技术(technology),适合于(suitable for)几乎(nearly)任何一种需要全文检索(full-text search)的应用,特别是跨平台(cross-platform)的应用。
目录
1 目录 ........... 1
2 Lucene 是什么 ............ 3
2.1.1 强大特性 ........... 3
2.1.2 API 组成 ............ 4
2.1.3 Hello World! ... 5
2.1.4 Lucene roadmap ................. 6
3 索引文件结构 ............. 7
3.1 索引数据术语和约定 ................. 7
3.1.1 术语定义 ........... 7
3.1.2 倒排索引(inverted indexing) .. 8
3.1.3 Fields 的种类 .. 8
3.1.4 片断(segments) ............. 8
3.1.5 文档编号(document numbers) .... 9
3.1.6 索引结构概述 ... 9
3.1.7 索引文件中定义的数据类型 ......... 10
3.2 索引文件结构 ......... 10
3.2.1 索引文件概述 . 10
3.2.2 每个 Index 包含的文件 ... 11
3.2.2.1 Segments 文件 ........ 11
3.2.2.2 Lock 文件 ................ 14
3.2.2.3 Deletable 文件 ...... 14
3.2.2.4 Compound 文件(.cfs)....... 14
3.2.3 每个 Segment 包含的文件 ............. 15
3.2.3.1 Field 信息(.fnm) ............ 15
3.2.3.2 Field 数据(.fdx 和.fdt) 16
3.2.3.3 Term 字典(.tii 和.tis) .. 18
3.2.3.4 Term 频率数据(.frq)....... 21
3.2.3.5 Positions 位置信息数据(.prx)....... 23
3.2.3.6 Norms 调节因子文件(.nrm)............... 24
3.2.3.7 Term 向量文件 ........ 25
3.2.3.8 删除的文档 (.del)......... 28
3.3 局限性(Limitations) ............. 29
4 索引是如何创建的 ... 30
4.1 索引创建示例 ......... 30
4.2 索引创建类 IndexWriter ........... 30
4.2.1 org.apache.lucene.index.IndexWriter...... 31
4.2.2 org.apache.lucene.index.DocumentsWriter ........ 33
4.3 索引创建过程 ......... 34
4.3.1 DocFieldProcessorPerThread.processDocument() .. 36
4.3.2 DocInverterPerField.processFields()...... 37
4.3.3 TermsHashPerField.addToken().. 38
4.3.4 FreqProxTermsWriterPerField.newTerm()/addTerm() ........ 39
4.3.5 TermVectorsTermsWriterPerField.newTerm()/addTerm() ........ 42
5 索引是如何存储的 ... 44
5.1 数据存储类 Directory ............ 44
5.1.1 org.apache.lucene.store.Directory.......... 44
5.1.2 org.apache.lucene.store.FSDirectory...... 44
5.1.3 org.apache.lucene.store.RAMDirectory.... 45
5.1.4 org.apache.lucene.store.IndexInput........ 46
5.1.5 org.apache.lucene.store.IndexOutput...... 47
6 文档内容是如何分析的 ......... 49
6.1 文档分析类 Analyzer .............. 49
6.1.1 org.apache.lucene.store.Analyzer............ 49
6.1.2 org.apache.lucene.store.StandardAnalyzer .......... 49
7 如何给文档评分 ....... 50
7.1 文档评分类 Similarity .......... 50
7.1.1 org.apache.lucene.search.Similarity...... 50
7.2 Similarity 评分公式 .............. 51
下载地址:https://www.wenjiangs.com/wp-content/uploads/2022/11/22YRht4vqNIBP3Vq.zip
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: 常见的互联网攻击与防御 PDF 文档
下一篇: Linux 常用命令手册 PDF 文档
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论