1.全文检索概念介绍
今天小编给大家讲解全文搜索的概念,希望大家对全文搜索能够有一个整体的了解。
1.1搜索引擎的概念
(一)搜索引擎的分类
web搜索:百度,google
桌面搜索:开始,运行里面的搜索。
企业搜索:站内搜索,企业知识库搜索。
(二)什么是搜索引擎
搜索引擎是一种软件,能够为文本建立索引,能够根据索引搜索文本信息。
(三)两个基本的组件
- 索引组件
- 搜索组件
1.2我们身边的搜索
l 在BBS、BLOG、新闻等系统中提供的搜索文章的功能,如这里的贴吧的例子。搜索的范围是系统内的文章数据,搜索出来之后符合条件的记录高亮、并且按点击率排序
l Eclipse中的帮助子系统:点击HelpàHelpContents,可以查找出相关的帮助信息。搜索的范围是Eclipse的所有帮助文件
l Windows系统中的有搜索功能:打开“我的电脑”,按“F3”就可以使用查找的功能,查找指定的文件或文件夹。搜索的范围是整个电脑中的文件资源
l 搜索引擎,如Baidu或Google等,可以查询到互联网中的网页、PDF、DOC、PPT、图片、音乐、视频等。下图是使用百度搜索Alan zhuang的效果,希望大家喜欢我的博客。
以上的查询功能都类似。都是查询的文本内容,都是相同的查询方式,即找出含有指定字符串的资源,不同的只是查询范围(分别为硬盘、所有帮助文件、数据库、互联网。
按被搜索的资源类型,分为两种:可以转为文本的、多媒体类型。这里需要注意,百度或谷歌提供的音乐或视频搜索不是多媒体搜索,他们是按文件名搜索。在微信上有一款摇一摇搜歌功能,可以让它听10秒钟的音乐,然后他就能上网找出这段音乐的名称、演奏者等信息。这是多媒体搜索
1.3 什么是全文检索
全文检索是计算机程序通过扫描文章中的每一个词,对必要的词建立一个索引,指明该词在文章中出现的次数和位置。当用户查询时根据建立的索引查找,类似于通过字典的检索字表查字的过程。
全文检索(Full-Text Retrieval)是指以文本作为检索对象,找出含有指定词汇的文本。全面、准确和快速是衡量全文检索系统的关键指标。
关于全文检索,我们要知道:1,只处理文本。2,不处理语义。3,搜索时英文不区分大小写。4,结果列表有相关度排序。5,并且可以对结果具有过滤高亮的功能
在信息检索工具中,全文检索是最具通用性和实用性的。
1.4全文检索应用场景
我们使用Lucene,主要是做站内搜索,即对一个系统内的资源进行搜索。如BBS、BLOG中的文章搜索,网上商店中的商品搜索等。所以,学完Lucene后我们就可以为自已的项目增加全文检索的功能。
得到商品的基本信息而且是按照某种规则排序的(例如热卖、点击率.....),感兴趣在通过连接.读取数据库的完成数据,这样既可以实现高效的查询效率,又可以为分流查询请求。
1.5. 全文检索与数据查询的区别
1. 相关度排序: 查出的结果没有相关度排序,不知道我想要的结果在哪一页。我们在使用百度搜索时,一般不需要翻页,为什么?因为百度做了相关度排序:为每一条结果打一个分数,这条结果越符合搜索条件,得分就越高,叫做相关度得分,结果列表会按照这个分数由高到低排列,所以第1页的结果就是我们最想要的结果
2. 查询的方式: 全文检索的速度大大快于SQL的like搜索的速度。这是因为查询方式不同造成的,以查字典举例:数据库的like就是一页一页的翻,一行一行的找,而全文检索是先查目录,得到结果所在的页码,再直接翻到这一页
定位不一样:一个更侧重高效、安全的存储、一个是侧重准确、方便的搜索