Annotated Lucene 源码剖析中文版 PDF 文档

发布于 2022-11-25 00:14:38 字数 2960 浏览 171 评论 0

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

安静被遗忘

文章 0 评论 0

喔爱吃橙子

文章 0 评论 0

草莓味的萝莉

文章 0 评论 0

梦里兽

文章 0 评论 0

mb_83J3Cyxa

文章 0 评论 0

时间海

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文