lucene笔记-视频配套笔记解析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
传智播客 Java学院 传智.入云龙 全文检索技术之Lucene 课程计划 什么全文检索 数据类型:结构化数据和非结构化数据 非结构化数据查询方法 全文检索的概念 什么是Lucene Lucene实现全文检索的流程(重点) Lucene的入门程序(重点) 分析器Analyzer(重点) 索引库的维护(重点) 索引库的增加索引 删除索引 修改索引 索引库的查询(重点) 使用Query的子类查询 使用QueryParser查询 相关的排序 什么全文检索 结构化数据:数据的长度类型是固定的。数据库中的数据 非结构化数据:长度不固定格式不固定。Word文档、excel、pdf、txt。 结构化数据的查询 使用sql语句查询就可以 非结构化数据的查询 需求:在文件中找出包含java字符的文档。 实现方法 目测 顺序扫描。如果文件量大的话比如说20G,顺序扫描会变的很慢。 非结构化的数据变结构化 先从文件中找出文件所有的词汇,形成一个列表。查询的时候直接查询列表,找到关键词后根据这词找到相应的文档。 一次创建多次使用。 全文检索的概念 这种先建立索引,再对索引进行搜索的过程就叫全文检索(Full-text Search)。 全文检索应用领域 搜索引擎,百度、谷歌 站内搜索 微博搜索 论坛搜索 电商搜索,搜索的是商品信息。 什么是Lucene Lucene的概念 Lucene是apache下的一个开放源代码的全文检索引擎工具包。提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能。 Lucene和搜索引擎的区别 Lucene是一个工具包:需要进行编程才能实现全文检索的功能呢 搜索引擎:一套独立运行的系统,提供了全文检索功能。 Lucene的下载 下载地址: HYPERLINK / / 本课程Lucene的版本:4.10.3 包名 功能 org.apache.lucene.analysis 语言分析器,主要用于的切词 Lucene提供的分析器实现类在: lucene-analyzers-common-4.10.3.jar org.apache.lucene.document 索引存储时的文档结构管理,类似于关系型数据库的表结构 org.apache.lucene.index 索引管理,包括索引建立、删除等 org.apache.lucene.queryParser 查询分析器,实现查询关键词间的运算,如与、或、非等, 生成查询表达式, org.apache.lucene.search 检索管理,根据查询条件,检索得到结果 org.apache.lucene.store 数据存储管理,包括一些I/O操作 org.apache.lucene.util 公用类 Lucene实现全文检索的流程 案例: 我们以一个案例来研究全文检索系统架构:实现一个文件的搜索功能,通过关键字搜索文件,凡是文件名或文件内容包括关键字的文件都需要找出来。 实现的流程 创建索引 获得文档 使用文件流读取文档的内容就可以获得文档。 搜索引擎: 使用网络爬虫来获得。 Nutch:apache的爬虫程序 Heritrix:爬虫程序 Jsoup:html分析的工具包 电商网站: 数据库中的表,例如商品表。数据库中的每一条记录都是一个原始文档。 Solr:直接从数据库中的表导入到索引库中。 创建文档对象 每个文件对应一个文档对象Document对象。Field域。 每个文档对象Document对象中可以有多个域,每个域可以存储文件的相关属性。 例如: 文件名 文档内容 文件路径 文件的大小 Document Document 文件内容文件名 文件内容 文件名 文件的大小文件的路径 文件的大小 文件的路径 其他属性。。。 其他属性。。。 不同的文档中域可以不同,同一个文档中可以有相同的域。 分析文档 主要是分析文档的内容,文件的标题。 目的:分析出文档中包含的关键词。 先根据空格进行字符串的拆分得到词汇列表 词汇列表中无意义的词叫做“停用词”。去除停用词。例如:a、the、an 去掉标点符号。 统一大小写,转换成小写。 最终得到语汇单元流。 注意:并不是所有域都需要分析,只需要分析指定的域就可以。 创建索引 将索引和document对象写入索引库。持久化的过程。 创建索引是对语汇单元索引,通过词语找文档,这种索引的结构叫倒排索引结构。 持久就是把索引和document写索引库,索引库包含量部分内容。索引、和document 索引库 索引库 索引 索引 Lucene Solr Hadoop java Document1 Document1 Document2 Document2 Docum

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档