全文检索

lucene入门&Solr

自闭症网瘾萝莉.ら 提交于 2019-11-26 14:53:33
LUCENE 1. 学习计划 1、案例分析:什么是全文检索,如何实现全文检索 2、Lucene实现全文检索的流程 a) 创建索引 b) 查询索引 3、配置开发环境 4、创建索引库 5、查询索引库 6、分析器的分析过程 a) 测试分析器的分词效果 b) 第三方中文分析器 7、索引库的维护 a) 添加文档 b) 删除文档 c) 修改文档 8、Lucene的高级查询Lucene的查询 a) 使用Query的子类查询 MatchAllDocsQuery TermQuery NumericRangeQuery BooleanQuery b) 使用QueryParser QueryParser MulitFieldQueryParser 2. 案例 实现一个文件的搜索功能,通过关键字搜索文件,凡是文件名或文件内容包括关键字的文件都需要找出来。还可以根据中文词语进行查询,并且需要支持多个条件查询。 本案例中的原始内容就是磁盘上的文件,如下图: 3. 需求分析 3.1. 数据库搜索 数据库中的搜索很容易实现,通常都是使用sql语句进行查询,而且能很快的得到查询结果。 为什么数据库搜索很容易? 因为数据库中的数据存储是有规律的,有行有列而且数据格式、数据长度都是固定的。 3.2. 数据分类 我们生活中的数据总体分为两种:结构化数据和非结构化数据。 结构化数据:指具有固定格式或有限长度的数据,如数据库

Lucene介绍与入门使用

跟風遠走 提交于 2019-11-26 03:14:12
Lucene介绍与入门使用   Lucene简介   Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。   那么先来说一说什么是全文搜索   说之前先说一说 数据的分类 :      我们生活中的数据总体分为两种:结构化数据和非结构化数据。     (1) 结构化数据 :指具有固定格式或有限长度的数据,如数据库,元数据等。     (2) 非结构化数据 :指不定长或无固定格式的数据,如邮件,word文档等磁盘上的文件   结构化数据查询方法   数据库搜索