信息时代的爆炸带来的是海量数据的发展,而搜索引擎带来了大浪淘沙的功能。 网民们通过搜索引擎都能够找到自己所需要的网页,并且通过搜索引擎还能快速找到帮助自己发展的位置。 而搜索引擎的发展从第一代简单的搜索,到当前复杂的数据挖掘,这其中的过程如下:
第一代引擎出现在 1994 年。此代的搜索引起内容简单、搜索的范围不广,而且他们对于搜索到的资讯和时间要求都不很严格,导致了在搜索过程中,人们经常需要花费大量的耐心来进行检索,一般检索的时间要等到10 秒或者更长。 这一代的搜索使用的技术是在线搜索和IR 搜索技术。 根据数据统计,在当时在网络爬虫的数据大约每天 1500 次查询左右。
第二代搜索是建立在第一代搜索的基础之上的。 由于第一代搜索的速度非常缓慢,第二代搜索在采用新技术---分布式响应方案的基础上,提升了相应规模和相应速度,通过建立起一个大型、分布式的索引数据库,每天直接对应各种用户的需求, 并能够快速的进行反馈。这种索引快速,导致了用户数量的不断增加和扩展。
第三代搜索是在获取用户数据上的。 通过搜索引擎充分理解用户的需求,分析用户对当前数据的安排和内容,并直接响应出用户检索的内容,减少用户的查询时间和响应时间。 这种检索方式,需要充分利用用户与检索内容的交互,进行数据挖掘和数据分析,方能实现。
我们当前正处于第二代和第三代搜索之间, 在减少响应速度和响应时间之间,着名的搜索公司 Google 和国内的百度有着自己的发展方向。
在因特网领域,搜索引擎技术得到了广泛使用,然而他在国内外的含义却有所不同。 在美国搜索引擎通常指的是基于因特网的搜索引擎, 他们通过网络机器人程序收集上千万到几亿个网页, 并且每一个词都被搜索引擎索引,也就是我们说的全文检索。 在美国,他们通过网络机器人程序收集上千万到几亿个网页, 并且每一个词都被搜索引擎索引,也就是我们说的全文检索。着名的因特网搜索引擎包括 First Search、Google、HotBot 等。 在中国,搜索引擎通常指基于网站目录的搜索服务或是特定网站的搜索服务,本人这里研究的是基于因特网的搜索技术。
一、搜索引擎的结构
本文基于浏览器/服务器(Browse/Server)结构,使用JSP 作 为开发语言 ,J2EE 作 为开发工具 ,MySQL 作 为数据库,并在 Tomcat5.0 上进行发布。 由于 JAVA 语言具有可移植、安全性、解释执行、高性能、动态性,以及稍做修改后就具有跨平台性的优点, 使得本系统操作方便、快捷。
1、网络蜘蛛概念
网络蜘蛛即 Web Spider , 是一个很生动的名字。 假如我们把互联网比喻成一个蜘蛛网, 那么 Spider 就是在蜘蛛网上爬来爬去的蜘蛛。 通过网页的链接地址, 网络蜘蛛从网站某一个页面( 通常是首页) 开始, 通过读取网页的内容, 找到其他网页的链接地址, 然后再通过这些链接地址继续读取下一个网页。 这样一直循环下去, 直到把这一网站所有的网页都抓取完为止。 如果把整个互联网当成一个整体网站, 那么网络蜘蛛就是通过上述原理抓取 Interner 网上的所有网页。 对于搜索引擎来说, 要抓取互联网上所有的网页几乎是不可能的, 从目前公布的数据来看, 容量最大的搜索引擎也不过是抓取了整个网页数量的百分之四十左右。 这其中的原因一方面是抓取技术的瓶颈, 无法遍历所有的网页, 有许多网页无法从其它网页的链接中找到; 另一方面是存储技术和处理技术的问题,如果按照每个页面的平均大小为 20K 计算(包含图片) , 100 亿网页的容量是 100 ×2000G 字节, 即使能够存储, 下载也存在问题 ( 按照一台机器每秒下载20K 计算, 需要 340 台机器不停的下载一年时间 , 才能把所有网页下载完毕) .
2、网络蜘蛛的主要技术在抓取网页时, 网络蜘蛛一般有广度优先和深度优先两种策略。 广度优先其实就是一种并行处理, 网络蜘蛛通过起始网页中链接的所有网页, 选择其中的一个链接网页, 抓取在此网页中链接的所有网页,依次扩展,从而提高其抓取速度。 深度优先是指网络蜘蛛会从起始页开始, 一个链接一个链接地跟踪下去, 处理完这条线路之后再转入下一起始页, 继续跟踪链接。 这一方法的优点是网络蜘蛛在设计时比较容易。 相对于深度优先来说,广度优先要常用的多。
目前一般的网站都希望有更多的访问者访问, 也就是需要有更多的搜索引擎找到访问的网页,也即是全面地抓取自己网站的网页。 为了让本网站的网页更全面地被抓取到, 网站管理员可以建立一个网站地图, 即 SiteMap. 网络蜘蛛通过 sitemap.htm 这个入口爬取这个网站的网页,抓取这些文件后,通过读取其中的文本信息,提取对搜索引擎的搜索准确性有重要帮助的文档信息, 同时, 这些信息也利用网络蜘蛛正确跟踪其它链接。 在搜索引擎中网络蜘蛛占有重要位置, 对搜索引擎的查全、查准都有影响, 决定了搜索引擎数据容量的大小。 同时,它的好坏还直接影响到搜索结果页中的死链接( 即链接所指向的网页已经不存在) 个数。
二、搜索引擎总体设计
现实环境中,有许多用户都有搜索服务的需求,例如很多网站都渴望有自己的站内搜索,这当然可以通过数据库来简单实现,但是在搜索服务器的负载量很大的情况下,数据库是无力应付的,而且数据库简单的基于字符串匹配的方式也显得过于呆板, 不能提供更多的高级搜索功能。 有的用户可能会选择自己组建开发团队来开发搜索引擎, 也可能会购买商用的搜索服务器软硬件来搭建搜索平台。 不过, 笔者认为普通用户也可以选择简单地购买搜索服务,不需要自己的开发团队,也不需要自己购买搜索服务软硬件。 也就是说, 用户只简单地提出搜索服务要求,其它一切都交给搜索服务提供商,软硬件和数据维护与更新都交给服务提供商。
在上述情况下, 一个搜索引擎服务器提供商可以为若干个客户提供搜索,他们需要根据不同用户的需求去设计数据的索引策略和搜索策略,同时需要在自己的服务器主机上保存和维护不同用户的数据。 Solr1.3 优秀的多核心性能正好能满足这样的需求, 一方面多核心可以实现多库, 也就可以实现多个服务并行提供; 另一方面Solr1.3 的各个核心之间的独立性和可配置性 ,又使得搜索服务提供商可以根据不同用户的需求来进行个性化的配置。
经过3~5年的飞速发展,目前桌面搜索和移动搜索几乎各占半壁江山,移动搜索大有赶超桌面搜索,成为主要搜索途径之势。2013~2014年中国搜索引擎行业竞争持续升级,百度独领风骚的同时,几大追随者毫不懈怠,持续练就内功,同时借助外力,以期对百度构成威胁...
本文从卷烟企业对信息数据检索的需求出发,论述了基于Solr开发出符合自身企业的搜索引擎的可行性,介绍了有关搜索引擎及Solr的相关知识。...
0引言信息检索系统主要为互联网用户提供对资源的检索服务,用户通过输入自己想要寻找的资源信息(诸如资源的部分名称,资源内容中相关关键词等),信息检索系统根据用户提供的检索需求进行资源匹配和资源定位,并按照一定的顺序将匹配的资源反馈给用户。搜...
1语音信息及其特点自然界存在着各种各样的声音,对声音进行数字化处理得到的结果称为音频,是一种重要的计算机多媒体信息。20Hz~20kHz是正常的人耳能够感知合理频率范围。音频信息中的一种重要类型为语音,具有以下重要特征:(1)由高度抽象的概念交流...
1引言互联网的深入发展带来了各种类型信息资源数量的快速膨胀。截至2014年6月,我国拥有273万个网站,3.3亿个IPv4地址[1].面对浩瀚巨量的网络资源,用户通过搜索引擎快速获取所需信息尤为重要。目前,我国搜索引擎用户达4.9亿;网民平均使用...
1引言在线社交网络是一种在信息网络上由社会个体集合及个体之间的连接关系构成的社会性结构。在线社交网络可分为4类:1)即时消息类应用,是一种提供在线实时通信的平台,如QQ、微信等;2)在线社交类应用,是一种提供在线社交关系的平台,如Facebook...
1、引言近年来,随着数字化教育浪潮的不断推进,我国在教育资源建设方面已经取得了巨大的成就,各类教育资源的数量巨大且呈现几何级数增长。随着搜索引擎技术的发展,通用搜索引擎的功能变得日益强大,取得了很大的成功,但其仍有局限性,如搜索的深度不够,...
上世纪中页,传播学家麦克卢汉曾在《理解媒介:论人的延伸》中提出:媒介是人感觉能力的延伸或扩展。这一经典概念的重要意义,在于将人的单一感官和媒体的传播特征进行了对应。例如,从视角延伸到印刷媒介,从听觉延伸到广播以及视、听觉共同延伸到电视。而...
搜索引擎经历近30年的发展,目前在使用的有几种类型,如全文搜索引擎、分类目录搜索引擎、多元搜索引擎、集成搜索引擎等。但这些都是网络上的公用商业搜索引擎,它们往往不能满足企业的需要。...
第4章模型构建及假设提出。本章在前两章文献综述和理论分析的基础上,结合访谈的结果提出了搜索引擎优化方法和效果的维度,并构建了两者的概念模型,提出了各研究变量之间的假设关系。4.1访谈。访谈法是指研究者通过面对面、QQ等访谈方式,与受访者...