标题：Lucene+nutch搜索引擎开发
版权信息
书 名: Lucene+nutch搜索引擎开发
作　者：王学松
出版社： 人民邮电出版社
出版时间： 2008
ISBN: 9787115182166
开本： 16
定价: 59.00 元
编辑推荐
《Lucene+nutch搜索引擎开发》适合对搜索引擎开发有兴趣的读者阅读，包括搜索引擎开发的初学者、高等院校、信息专业学生、从事搜索开发的程序设计人员等。入门：引导读者快速掌握（Lucene和nutch的使用方法）；揭秘：深度剖析搜索引擎内核；实战：手把手带您构建企业级搜索引擎；推荐：Web开发专家强烈推荐。
互联网搜索的使用水平可以反映全民的信息处理能力，几年前有研究发现美国用户比欧洲用户的互联网使用水平领先半年左右，主要是根据谁搜索时平均使用的关键词的个数多。中文用户的搜索使用水平相对于西文用户目前仍然处于比较初级的阶段，而中文网站搜索功能的缺失也是一个重要的因素。
网站拥有了较多内容后，最先会考虑基于目录的内容分类，以解决信息快速定位的问题，随着内容量的进一步增加，很多内容在发表之后就很快被湮没，成为“信息孤岛”，而不断加深的目录结构也会让用户逐渐失去耐心，这时，关键词检索的优势就体现出来了：
关键词检索可以让处于“信息孤岛”状态的内容以一种更直接的方法提供给用户；
和基于目录/分类的树形结构不同，基于关键词检索还可以让内容之间实现网状的关联结构，从而大大提高信息的引用密度。
基于传统数据库的关键词检索由于性能问题让很多网站放弃了搜索功能，问题的解决归根结底还是需要一个全文引擎。而Lucene开源引擎的出现让这种原来被少数公司掌握的技术得到了迅速的普及，这里应该再次感谢引擎的核心贡献者DougCutting先生，同时也希望有更多的中文开发人员能积极投入：到Lucene的相关项目开发中去，尤其在中文和其他亚洲双字节语言处理方面的问题。
Lucene也是我学习的第一个Java程序，当初是通过jdb一行行dubug了解其中的原理和机制的，非常高兴有这样一本专门的参考书出现，它无疑会为开发人员了解并更快掌握全文检索技术节省大量的时间。
目录　入门篇
第1章　搜索引擎概述1.1　什么是搜索引擎　
1.1.1　搜索引擎与信息检索　
1.1.2　搜索引擎的概念　
1.1.3　搜索引擎的使用　
1.1.4　搜索引擎发展历史　
1.2　搜索引擎分类　
1.2.1　按照工作方式分类　
1.2.2　按照领域范围分类　
1.2.3　信息类型分类　
1.3　主流搜索引擎　
1.3.1　全球著名搜索引擎　
1.3.2　中文搜索引擎的发展历史　
1.3.3　著名中文搜索引擎　
1.3.4　其他细化搜索引擎　
1.4　搜索引擎评价原则　
1.4.1　评价指标体系　
1.4.2　其他评测因素　
1.5　搜索引擎相关资源　
1.5.1　搜索引擎开源项目　
1.5.2　搜索引擎研究网站　
1.5.3　搜索论坛和厂商黑板报　
1.6　系统运行环境准备　
1.6.1　Java环境安装设置　
1.6.2　Tomcat服务器安装　
1.6.3　Eclipse开发环境准备　
1.7　未来搜索技术前瞻　
1.7.1　现状存在问题　
1.7.2　未来发展趋势　
1.8　小结第2章　搜索引擎原理探秘2.1　解密搜索引擎原理　
2.1.1　搜索引擎技术框架　
2.1.2　网页信息抓取技术　
2.1.3　网页内容分析技术　
2.1.4　网页索引建立技术　
2.1.5　用户检索与结果排序　
2.1.6　网页检索工具与接口　
2.2　网络爬虫简单实现　
2.2.1　网络蜘蛛功能需求　
2.2.2　网络蜘蛛实现原理　
2.2.3　网络爬虫系统结构　
2.2.4　网页采集程序设计　
2.2.5　网页采集程序实现　
2.2.6　程序实现存储扩展　
2.3　网页分析程序实现　
2.3.1　网页分析功能需求　
2.3.2　网页分析实现原理　
2.3.3　网页分析系统结构　
2.3.4　网页分析程序设计　
2.3.5　文本语素分割与过滤　
2.4　网页索引程序实现　
2.4.1　网页索引功能需求　
2.4.2　网页索引实现原理　
2.4.3　网页索引程序设计　
2.4.4　网页索引程序实现　
2.5　检索程序实现　
2.5.1　检索功能需求　
2.5.2　检索实现原理　
2.5.3　检索程序设计　
2.5.4　网页检索程序实现　
2.6　简单搜索引擎系统　
2.7　小结　
第3章　开源搜索引擎入门3.1　开源搜索引擎简介　
3.1.1　Lucene系统概述　
3.1.2　Nutch概述　
3.2　Lucene全文检索系统部署　
3.2.1　下载Lucene系统　
3.2.2　Lucene部署配置　
3.2.3　Lucene测试运行　
3.3　Lucene开发实例入门　
3.3.1　Lucene实例功能　
3.3.2　Lucene开发实例　
3.3.3　代码实例解析　
3.4　Nutch开源搜索引擎部署　
3.4.1　Cygwin软件安装　
3.4.2　Nutch下载与安装　
3.4.3　Nutch系统环境测试　
3.4.4　Nutch搜索页面部署　
3.5　Nutch系统调试与开发　
3.5.1　Eclipse中加载Nutch　
3.5.2　Nutch工程编译与发布　
3.6　小结　
目录　内核揭秘篇
第4章　搜索引擎数据获取4.1　网络蜘蛛原理　
4.1.1　体系结构设计　
4.1.2　访问策略与算法　
4.1.3　效率优化与更新　
4.1.4　蜘蛛访问规范　
4.1.5　开源蜘蛛简介　
4.2　Nutch网络蜘蛛　
4.2.1　Nutch网络蜘蛛概述　
4.2.2　Nutch抓取模式分类　
4.2.3　抓取测试站点建立　
4.3　Nutch局域网抓取　
4.3.1　本地下载准备　
4.3.2　启动下载过程　
4.3.3　下载过程解析　
4.3.4　下载多个网站　
4.4　Nutch互联网抓取　
4.4.1　下载列表获取　
4.4.2　下载大量网站　
4.5　Nutch抓取比较　
4.6　Nutch结果检测　
4.6.1　网页内容检索　
4.6.2　使用Readdb获取摘要　
4.6.3　使用SegRead读取分段　
4.6.4　Luke工具使用　
4.7　Nutch配置文件解析　
4.8　Heritrix网络蜘蛛　
4.8.1　Heritrix概述　
4.8.2　Heritrix体系结构　
4.8.3　Heritrix安装与使用　
4.9　小结　
第5章　搜索引擎信息索引5.1　文档索引原理　
5.1.1　索引概述　
5.1.2　索引基本结构　
5.1.3　倒排索引原理　
5.1.4　索引分类　
5.1.5　高性能索引　
5.2　Lucene索引器　
5.2.1　Lucene索引介绍　
5.2.2　Lucene索引结构　
5.2.3　多文件索引结构　
5.2.4　复合索引结构　
5.3　Lucene索引实例　
5.3.1　索引创建代码解析　
5.3.2　索引创建器（IndexWriter）　
5.3.3　索引管理器（IndexReader）　
5.3.4　索引修改器（IndexModifier）　
5.3.5　索引分析器（Analyzer）　
5.4　Lucene索引操作　
5.4.1　添加文本文件索引　
5.4.2　创建Lucene增量索引　
5.4.3　使用索引项删除文档　
5.4.4　使用编号删除文档　
5.4.5　压缩文档编号　
5.4.6　索引文档更新　
5.5　Lucene索引高级特性　
5.5.1　选择索引域类型　
5.5.2　索引参数优化　
5.5.3　使用磁盘索引　
5.5.4　使用内存索引　
5.5.5　同步与锁机制　
5.6　Lucene高级应用实例　
5.6.1　创建本地搜索的索引　
5.6.2　索引数据库记录　
5.6.3　索引优化与合并　
5.7　Nutch中的Lucene索引　
5.8　小结　
第6章　搜索引擎查询处理6.1　信息查询原理　
6.1.1　信息查询概述　
6.1.2　查询基本流程　
6.1.3　查询结果显示　
6.1.4　高性能查询　
6.2　Lucene查询概述　
6.2.1　Lucene查询操作基础　
6.2.2　Lucene查询实例入门　
6.2.3　查询工具IndexSearcher类　
6.2.4　查询封装Query类　
6.2.5　查询分析器QueryParser类　
6.2.6　查询结果集Hits类　
6.3　Lucene基本查询　
6.3.1　Lucene查询Query对象　
6.3.2　最小项查询TermQuery　
6.3.3　区间范围搜索RangeQuery　
6.3.4　逻1/4组合搜索BooleanQuery　
6.3.5　字串前缀搜索PrefixQuery　
6.3.6　短语搜索PhraseQuery　
6.3.7　模糊搜索FuzzyQuery　
6.3.8　通配符搜索WildcardQuery　
6.3.9　位置跨度搜索SpanQuery　
6.4　Lucene高级查询　
6.4.1　索引内存检索　
6.4.2　多关键字跨域检索　
6.4.3　多检索器跨索引检索　
6.5　Nutch中的Lucene查询　
6.6　小结　
第7章　搜索引擎结果排序7.1　搜索引擎文档排序原理　
7.1.1　传统检索排序技术　
7.1.2　向量模型排序局限　
7.1.3　搜索引擎相关性排序　
7.1.4　链接分析PageRank原理　
7.1.5　搜索引擎排序流程　
7.2　Lucene检索排序　
7.2.1　Lucene相关性因素　
7.2.2　Lucene相关排序流程　
7.2.3　Lucene排序计算体系　
7.2.4　Lucene排序控制方法　
7.3　文档Boost加权排序　
7.3.1　Lucene中Boost介绍　
7.3.2　Boost值全文档排序　
7.3.3　Boost值文档域排序　
7.3.4　BoostingTermQuery排序　
7.4　Sort对象检索排序　
7.4.1　Sort对象概述　
7.4.2　Sort对象相关性排序　
7.4.3　Sort对象文档编号排序　
7.4.4　Sort对象独立域排序　
7.4.5　Sort对象联合域排序　
7.4.6　Sort对象逆向排序　
7.5　Lucene相关性公式　
7.5.1　Lucene评分结果分析　
7.5.2　Lucene排序公式　
7.5.3　其他动态排序因子　
7.6　Lucene自定义排序　
7.6.1　自定义排序比较接口　
7.6.2　自定义排序接口类实例　
7.6.3　自定义排序结果测试实例　
7.6.4　自定义排序测试结果　
7.7　Nutch中的结果排序　
7.7.1　Nutch排序因素　
7.7.2　Nutch链接分析　
7.7.3　Nutch相关度计算　
7.8　小结　
第8章　文档分析器与中文分词8.1　文档分析与中文分词原理　
8.1.1　文档分析预处理概述　
8.1.2　文档分析基本流程　
8.1.3　中文分析处理中的分词　
8.2　Lucene分析器内核原理　
8.2.1　Lucene分析器原理　
8.2.2　Analysis包简介　
8.2.3　Analyzer类的组合结构　
8.2.4　JavaCC构造分析器　
8.2.5　StopAnalyzer内核代码分析　
8.2.6　StandardAnalyzer内核代码分析　
8.3　Lucene分析器应用模式　
8.3.1　使用默认分析器建立索引　
8.3.2　使用多种分析器建立索引　
8.3.3　使用分析器检索查询　
8.4　Lucene主要分析器应用实例　
8.4.1　停用词分析器StopAnalyzer　
8.4.2　标准分析器StandardAnalyzer　
8.4.3　简单分析器SimpleAnalyzer　
8.4.4　空格分析器WhitespaceAnalyzer　
8.4.5　关键字分析器KeywordAnalyzer　
8.5　TokenStream分词器内核分析　
8.5.1　Tokenizer分词器　
8.5.2　标准分词器StandardTokenizer　
8.5.3　字符分词器CharTokenizer　
8.5.4　空格分词器WhiteSpaceTokenizer　
8.5.5　字母分词器LetterTokenizer　
8.5.6　小写分词器LowerCaseTokenizer　
8.6　TokenStream过滤器内核分析　
8.6.1　TokenFilter过滤器　
8.6.2　标准过滤器StandardFilter　
8.6.3　停用词过滤器StopFilter　
8.6.4　小写过滤器LowerCaseFilter　
8.6.5　长度过滤器LengthFilter　
8.6.6　词干过滤器PorterStemFilter　
8.7　Lucene中文分词　
8.7.1　中文分词基本原理方法　
8.7.2　StandardAnalyzer分析器中文处理　
8.7.3　CJKAnalyzer中文分析器　
8.7.4　ChineseAnalyzer中文分析器　
8.7.5　IK_CAnalyzer中文分析器　
8.7.6　中科院ICTCLAS中文分词　
8.7.7　JE中文分词　
8.7.8　中文分词问题　
8.8　Nutch分词和预处理　
8.8.1　Nutch分析器　
8.8.2　Nutch中文分词　
8.9　小结　
第9章　搜索引擎文本分析9.1　非结构化文本简介　
9.1.1　非结构化文本概述　
9.1.2　非结构化文本检索　
9.2　HTML文档分析　
9.2.1　主流HTML文档分析器　
9.2.2　HTMLParser安装配置　
9.2.3　HTMLParser的框架结构　
9.3　HTMLParser应用实例　
9.3.1　HTMLParser功能模式　
9.3.2　HTMLParser内容解析方式　
9.3.3　Visitor模式正文解析　
9.3.4　Filter模式简单链接提取　
9.3.5　Filter模式搜索链接提取　
9.3.6　Lexer模式遍历文档　
9.4　PDF文档分析　
9.4.1　常用的PDF处理包　
9.4.2　PDFBox安装配置　
9.5　PDFBox应用实例　
9.5.1　PDFBox提取文档内容　
9.5.2　PDFBox文档内容索引　
9.6　Office文档分析　
9.6.1　常用Office文档处理包　
9.6.2　使用POI安装与配置　
9.6.3　POI原理与接口介绍　
9.7　POI分析Office文档实例　
9.7.1　POI处理Excel文档　
9.7.2　POI处理Word文档　
9.8　XML文档分析　
9.8.1　主流XML文档分析器　
9.8.2　JDOM分析器安装配置　
9.8.3　xerces分析器安装配置　
9.9　XML解析应用实例　
9.9.1　使用JDOM分析XML 文档　
9.9.2　使用xerces分析XML 文档　
9.10　Nutch文档处理　
9.11　小结　
第10章　分布式搜索与缓存10.1　分布式检索与缓存　
10.1.1　分布式搜索引擎现状　
10.1.2　分布式搜索引擎原理　
10.1.3　搜索引擎缓存现状　
10.1.4　搜索引擎缓存原理　
10.2　Nutch与分布式检索　
10.2.1　Google分布式文件系统　
10.2.2　MapReduce系统介绍　
10.2.3　Hadoop分布式文件系统　
10.2.4　Nutch分布式文件系统　
10.2.5　Nutch分布式检索概述　
10.2.6　Nutch分布式检索器　
10.3　Lucene分布式检索　
10.3.1　Socket通信基础　
10.3.2　Lucene索引服务器　
10.4　Nutch与搜索缓存　
10.5　开源系统缓存系统　
10.6　小结　
目录　实战篇
第11章　Nutch专题搜索引擎实例11.1　专题搜索需求分析　
11.1.1　专题搜索功能需求　
11.1.2　专题搜索用例分析　
11.2　构建Nutch基础搜索引擎　
11.2.1　Nutch搜索功能分析　
11.2.2　信息下载功能测试　
11.2.3　Nutch基础Web检索　
11.2.4　Web用户页面修改　
11.3　专题搜索系统设计　
11.3.1　系统框架设计　
11.3.2　选择开发工具组件　
11.4　专题关键词管理　
11.4.1　专题关键词策略　
11.4.2　关键词存储设计　
11.4.3　关键词管理程序　
11.5　专题资源发现　
11.5.1　专题网页链接发现　
11.5.2　专题资源网站提取　
11.6　专题信息下载　
11.6.1　批量信息下载　
11.6.2　信息自动下载　
11.7　专题信息分析与索引　
11.7.1　网页信息分析　
11.7.2　创建索引　
11.8　检索辅助功能　
11.8.1　相关词推荐　
11.8.2　检索词高亮显示　
11.8.3　检索结果翻页　
11.9　小结　
第12章　Lucene实现企业搜索实例12.1　企业搜索需求分析　
12.1.1　企业搜索需求概述　
12.1.2　企业搜索用例分析　
12.2　企业级搜索系统设计　
12.2.1　系统框架设计　
12.2.2　Lucene检索框架　
12.3　企业级搜索系统设计　
12.3.1　创建Lucene工程　
12.3.2　全文检索索引生成　
12.3.3　全文检索检索页面　
12.4　数据引擎设计　
12.4.1　数据库数据管理　
12.4.2　非结构化文档　
12.5　企业信息索引　
12.5.1　数据索引建立　
12.5.2　信息检索代码　
12.5.3　检索Web代码　
12.5.4　检索结果测试　
12.6　小结
……