




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 疆善戛联瓣( i | 珏t e m e t ) 豹爨魏霸羲及,a 靠蛩翳蘩颈燃至l 极大戆丰寨,获取僚怠懿方式也 随之改变。艇联网成为人们获收售息的主要来源之一。= 葭w e b 信息以n l 伺级数增长的情况下,如 褥鞫懿繇0 徽慰菠龌醪漱惑 一。援索弓 驾囊舅巷( s e a r c h 琶鹅醅) 撬骰黢嚷增囊鞭淬寅 而生。 搜索雩| 莺堤转绕貔萤怠捡索( i r f f o r m a l i o n r e t r i v a l ) 我拳与w 痨绪含羽产魏。 传统自嘴副鲺懈是从觥的文档库中溯户需要自憔息,其核心是女辞信息自索 弓l 墨曦嚷,凝蠢望彩酮抟襞强录_ 躬蕊狂蔓避援;方式。穗基剖嬲跨玟灏勃西,铑绞女藏基 检黼自嘲捕足需j 之。在匾附i n t e m e t 上刽豹字储、动穗j 瘦化白勺i 媾鲻簖,传统信恩懒米j 云 法t 曛户抉遮拔至l 联嚣要冬舞急。 翱弱l 挚怍为传统i r w e b 上的扩鼹,涉及至燃螺惚蹩、中文j 湫术、侄荆嗦引、 隐窘数据获敬、分商熬结构、海量数攒霹德、弼户雩亍为分辑等关键技术。从凌塞上蠢,搜索引擎 主臻由信宦深集、黍引、查询三部分构成。搜索引擎酋粥恿过信咸采集器( c r a w l 蹦) 从i n t e m e t 采簇阚夏数据,然崩敬参奏弓| 器( i n d e x e r ) 蹦浏戮攘= 戮黝辑,羯塞立索弘毒釜碧辫( s e a r c h e r ) 负费接受用户查询请求,通过索引找垂啊甬相关网页,排序后返回给用户。 搜索弓| 攀莲工1 镶 j | | 呈中,主要处璇耱攀嘲有:鼹矬鹾、素弓l 数舞及u r l 数据,不摹黪型 的刿窬瞵嘣髓蓬、熙新周黼面确不同自锵点,- 虫晌帮见埔矬蝴献懒张糟理悬搬獠 弓| 擎的揍蕊黪黎之一,也是本文数主要瑟究对客。 本文蓟骱馏了w e b 搦黼i 擎州剡蝴嘟院现状,阐述了搜索引擎的体系绷矫关踺技 术;然后分析了搜索弓l 擎l 燃瞧烈渚鬣理中尉斓哟塑默f 【l 毽契淞i 萁$ 擎惑霸鼍了共燃叟索引 擎中数据存储的努毗提出了不同的存储支持方案;最矧羊细描述了种具体的数据存睹系统 w d b 的实现,并使爝w d b 突理c r a w l e r 的数据存储。 关键词:万维网,因特网,抓取器,数瞩存储,搬艨引擎,信茬滏索,侄州隙弓 a b s t r a c t a s a p p e a r a n c e a n d p o i x f l a f i z a t i o n o f i n t e m e t , p e o p l e c a n a o c e s s m u c h m o r e i n f o r m a t i o n t h e m e t h o d o f 羽打崦硎h m 越衄i sc i 蕊g 缸h l e m e t b e c o m e m a r e s m r c e o f i n f o r m a t i o n h o w t o r e a s v a l i n t e r e s t i n g i n f o n i 碰o i lr a p i d l yb 0 2 0 m ea l la t l a o j v er e s e a r c ha r e aw i t h t h e e x t x m e n f i a lg r o w t h o fi n f o r m a t i o no i lt h e w e b s e a r c h e n g i n e w a s i n t r o d u c e d t o s o l v e t h i s p r a b l e m s e a r c hc i l 目血1 c i s t h e c o m b i n a t i o n o f t r a d i t i o n a l i n f o r m a t i o n m 1 r i e v a l a n d w e b n 扳l 矗砌缸白m l a 斑m 托嘣既赳酎如负圈船血) n 慨出灯m l e 血托p c 咖w 【l i 出r e t e 吐l n 鲫此i s 幻 i n d e xa n ds e a r c ht e x ti n - - o n t r a d i t i o n a ld i r e 唧a n df u l l - t e x ts e a r c ha r e u s e di np r o c e s so fs e a r c h i t c a nm e e tt h en e e d sw h e ni n f d n n a f i o ni sn o tl a r g e w h e nf a r i n gd i s m m u t e a , v o l a t i l ea n dh a i i g ev o l u m ed a t a , t r a d i t i o n a l i n f o r m a t i o n r e t r i e v a l c a n t f i n d t h e e x a c t i n f o r m a t i o n r a p i d l y s e a r c he n g i n ei st h ee x t e n d a b 丑i t yo ft r a d i t i o n a li rt e c h n i q u e s , c o n - n i n gt h ek e yt e c h n i q u e s :d a t a o o l l e c t i o n , c h i n e s ew o r ds e g x n e r a a f i o n , i n v e r t e di n d e x , r e r i v i n gh i d d e nd a 衄d i s t r i b u t e da l d f i t e o u r e s , h u g e d a t as t o r e ,a n a l y s i so fh u m a n b e h a v i o r , 血s e a r c h 锄西1 1 eo 。斌o f i n f o r m a t i o nc o l l e c t i o n , i n d e x i n g , q u e r y a tf a r s = 【, s e a r c he n g i n ec o l l e c t sw e bp a g e f r o ni n t e m e t u s i n gc r a w l e r t h e o , t h e w e b p a g e d a t aa l e a n a t y s e db yi n d e x e ra n di n d e x e sf i l ec a e a r e d s e a l _ d 】e i a c c e p tu s 盯q u e r yr e q u e s t s , f i n dr e l e v a n tr e s u l t s t h r o u g h i n d e x e s f i n a l l y , t h e r e s u l t s a r e s e n t t o u s e r a 船s o r t e d t h er e c e s s e dd a t ai ns e a r c h 豇1 cm a i n l yi r r d u d ew e b p a g ed a t a , i l l d e x c sd a t aa n d u r ld a 衄t h e y h a v e d i f f e r e n t c h a r a c t e m i n c a p a d t y , t h e u p d a t e p e r k ) d h o w t o m a n a g e t h e d a t a e f f i c i e n t l y i s o n e o f n l e k e y t e c h n i q u e o f s e a r c he a a g i n e a n d t h e k e y c o n t e n t i n t h i s t h e s i s i n t h i s p a p e r , b a s i c c o n c e p t a n d 0 2 n - e n ts t a t u s o f r e s e a r c h o f w e b s e a r c h e i l g i r l e a r e f u s t l y i n t r o d u c e d , t h ea r c h i t e c t u r eo f s e a r d ae 1 1 画硷a n d 脚t e c h 啦t l ea r ei l l u s t r a t e d ;t h e nt h e s t y l ea n d 曲越粥t e r s 0 f 山ed a t a w h i c hs t o l e di ns e a r c h 锄班l ea l e 绷l a l y s e d ,s o l n ed e s i g n so fd a t as t o r ea l ep o p o s e da n dt h ed a t as 1 0 犯 i m p l e m e n t s o f o t h e rs e a r c h e n g i n e a r e d i s c u s s e d ;f i n a l l y , a n i m p l e m e n t o f d a t a s l o p e s y s t e m m i n e d w d b i s i l h s a a t e d i n d e t a i l , w h i c h b e u s e d t os u p l x t t h e d a t a s t o r e o f c r a w l e n k e y w o r d s :i n t e m e t , w e b , c r a w l e r , d a t a s t o r e , s e a r c 血e n g i n e , i n f o r m a t i o n i e t r i e v a l , i n v e r t e d i n d e x 塑垩查堂堡主兰些堡苎 一_ - 塞上j ! ! ! 堡 1 。1 搜索引擎简介 第1 章绪论 在i n t e m e t 没有普及之前,人们主要通过传统介质( 主要是纸质) 和电子媒 介( 如c d r o m ) 获取信息,检索时主要采用传统目录方式和全文检索技术,在 信息规模不大的情况下,传统的信息检索( i n f o r m a t i o nr e t r i v a l ) 技术能够满足需 求。随着i n t e r n e t 的迅速发展以及w w w 技术的出现,i n t e m e t 成为人们获取信 息的主要来源之一。w 曲信息以指数级增长,据估算,截至2 0 0 2 年六月,网页 总数达到了1 4 亿【1 】。而在2 0 0 5 年,g o o g l e 显示已索引网页数目达到8 0 亿【2 】。 如何从如此浩瀚的信息中快速找到用户所需要的信息成为信息检索领域的研究 热点,搜索引擎就是在这种背景下出现的【3 】。 1 1 1 搜索引擎的定义 搜索引擎技术是传统i r 技术在w e b 环境中的应用。般来说,搜索引擎是 一种用于帮助用户在i n t e r n e t 上查询信息的搜索工具,它以一定的策略在i n t e r n e t 中搜集、发现信息,对信息进行理解、提取、组织和处理,并为用户提供检索服 务,从而起到信息导航的目i n 4 i 。搜索引擎已经成为人们进入i n t e r n e t 的“门户”。 1 1 2 搜索引擎的发展 作为w e b 信息获取的主要工具,搜索引擎是随着i n t e m e t 的发展而产生并成 长起来的。在1 9 9 0 年以前,由于i n t e m e t 的规模较小,人们在使用时并不依赖 于检索功能,没有搜索引擎的产生。 现代意义上的搜索引擎的祖先,是1 9 9 0 年出现的a r c h i e ,由加拿大m c g i l l 大学的“a r e h i eg r o u p ”成员( p e t e rd e u t s c h ,a 1 a l le m t a g e ,b i l lh e e l a n ,a n dm i k e p a r k e r ) 实现。当时w e b 还没有出现,i n t e m e t 上主要是通过f 1 甲协议进行文件 传输。a r c h i e 每隔一段时间连到每一个已知的匿名f 1 1 p 主机上,然后下传所有 公共文件完整的目录表,存贮在称为h n t e r n e t 档案数据库( i n t e m e ta r c h i v e s d a t a b a s e ) 0 7 。分布在世界各地的a r c h i e 服务器各自独立保持着对i n t e m e t 上匿名 f r p 主机的跟踪。当用户通过a r c h i e 检索文件时,所要进行的全部工作就是对 该数据库进行检索。尽管a r c h i e 还不是真正的搜索引擎,但工作原理与现在的 搜索引擎己经很接近,它依靠脚本程序自动搜索网上的文件,然后对有关信息进 行索引,供使用者查询【5 】。 最早的真正意义上的搜索引擎是创建于1 9 9 4 年的l y c o s ,当时m i c h a e l 浙江大学硕十学位论文墨! 望箜丝 m a u i d i n 将j o h nl e a v i t t 的l o n g l e g s 程序作为起点,实现了l y c o s 。发布时,收 集的数据量为5 4 0 0 0 个文档。除了相关性搜索外,l y 。c o s 还提供了前缀匹配和字 符相近限制。而l v c o s 最大的优势还是它的数据量:1 9 9 4 年8 月达到3 9 4 ,0 0 0 个 文档;1 9 9 5 年1 月达到1 5 0 万个文档:1 9 9 6 年1 1 月超过6 千万个文档,远远 超过其他搜索引擎 6 】。 1 9 9 5 年出现的a l t a v i s t a 改变了搜索引擎的定义。a l t a v i s t a 由前d e c 公司开 发,是当时i n t e r n e t 上最大的搜索引擎,搜索数据中包含了2 ,2 0 0 万个主页、3 ,0 0 0 万个u r l 和1 3 ,0 0 0 个新闻组的全文信息。a l t a v i s t a 检索速度非常突出,提供 了大量的创新功能:第一个支持自然语言搜索;第一个实现了高级搜索语法( 如 a n d ,o r ,n o t 等) ;支持n e w s g r o u p s ( 新闻组) 的内容搜索;还可以搜索图片 名称中的文字、搜索t i t l e s 等。a l t a v i s t a 也声称是第一个支持用户自己向网页索 引库提交或删除u r l 的搜索引擎,并能在2 4 小时内上线。a l t a v i s t a 最有趣的新 功能之一,是可以搜索有指向某个u r l 链接的所有网站。a l t a v i s t a 也对用户检 索界面作了大量革新,它在搜索框区域下放了“t i p s ”以帮助用户更好的表达搜 索式,这些小t i p 经常更新,这样,在搜索过几次以后,用户会看到很多他们可 能从来不知道的有趣功能。这系列功能,逐渐被其它搜索引擎广泛采用。 搜索引擎的又一次革新是1 9 9 8 年由s e r g e yb r i n 和l a w r e n c ep a g e 创建的 g o o g l e 。创新的搜索技术和简洁的用户界面使g o o g l e 从其他搜索引擎中脱颖而 出,象a l t a v i s t a 一样,再一次改变了搜索引擎的定义。g o o g l e 在网页重要性计 算、网页缓存、多文档格式支持、多语言支持、用户界面等方面实现了创新, p a g e r a n k 算法和超文本链接分析等技术的应用使g o o g l e 能够给用户提供高质量 的搜索结果。 1 1 3 搜索引擎的分类 目前i n t e r n e t 上提供搜索服务的搜索引擎有很多,在提供的查询功能及搜索 的数据规模上也各有千秋。按照信息收集方法和服务提供方式的不同,搜索引擎 大致可以分成三类【7 】: 1 基于c r a w l e r 的搜索引擎 基于c r a w l e r ( s p i d e r ) 的搜索引擎由c r a w l e r 自动负责信息的采集。c r a w l e r 按照某种搜索策略从w e b 中采集信息,由i n d e x e r 建立索引数据,供用户查询使 用。“搜索引擎”这个词的原义也只是指这种狭义上的基于c r a w l e r 的搜索引擎。 基于c r a w l e r 的搜索引擎信息量大、更新及时、人工干涉少,但是检索结果依赖 于用户提供的检索关键字,可能存在很多无关信息。这类搜索引擎的典型代表是 g o o g l e 。 2 基于目录的搜索引擎 2 浙江大学硕士学位论文第1 帚绪论 目录搜索引擎主要通过人工进行信息收集,目录编辑员对w e b 站点内容归 类,将网址、简介、类别等描述信息存入数据库中供用户在分类浏览及关键字检 索。由于目录依靠人工分类,因此检索的结果往往比基于c r a w l e r 的搜索引擎更 精确,但同时需要人工介入,维护工作量大、信息覆盖面小、信息更新不及时。 这类搜索引擎的典型代表是早期y a h o o 提供的目录服务。由于目录搜索引擎和基 于c r a w l e r 的搜索引擎有各自的优缺点,很多搜索引擎都同时提供目录和基于 c r a w l e r 的搜索服务,以便尽可能地提供全面准确的查询结果。 3 元搜索引擎 元搜索引擎实现依赖于其他搜索引擎,自己不进行信息采集。严格说来,元 搜索引擎不是真正的搜索引擎,只能算作一种用户代理。元搜索引擎把查询请求 转换为其它搜索引擎的命令格式,向多个搜索引擎发出检索请求,将检索结果经 过整理再发送给查询用户。元搜索引擎实现起来比较简单,但也有一定的局限性, 例如多数元搜索引擎都只能访问少数几个搜索引擎,并且通常不支持这些搜索引 擎的高级搜索功能,在处理逻辑查询时也常常会出现错误。这类搜索引擎的典型 代表是w e b c r a w l e r 。 1 1 4 当前主要搜索引擎 当前主要搜索引擎有【8 】: g o o s e g o o g l e 是全球最大的搜索引擎,它在全球各种语言市场几乎都是第一。作为 种基于c r a w l e r 的搜索引擎,g o o g l e 在w e b 信息覆盖率和关联度方面性能非 常突出。 y a h o o 作为世界上最大的门户网站,y a h o o 提供了基于目录的搜索引擎。然而从 2 0 0 2 开始,y a h o o 开始采用基于c r a w l e r 的搜索引擎,最初是使用g o o g l e 提供 的技术,现在开发了自己的搜索技术,称为称为y a h o os e a r c h t e c h n o l o g y ( y s t ) 。 m s n 作为世界上最大的软件公司,微软一直没有自己的搜索引擎技术。m s n 一 直采用其他搜索引擎的结果,但从2 0 0 4 年开始,微软开始开发种名为m s n b o t d 的搜索引擎。 a s kj e e v e s a s k j e e v e s 依靠其自然语言搜索技术在搜索引擎市场占据了自己的位置,通 过提问- 回答的方式给用户提供搜索结果。最初是依靠人工干预的方式提高搜索 质量,收购t e o m a 搜索引擎后增加了基于c r a w l e r 的搜索结果。 a o l s e a r c h 3 浙江大学硕:l 学位论文 第1 章绪论 a o l 作为世界上最早的i 1 户网站之一,搜索结果来源于基于c r a w l e r 的 g o o s e 搜索引擎。 1 2 研究现状 由于搜索引擎巨大的商业价值和学术研究价值各大公司都在投巨资进行搜 索引擎的研制开发,不断地涌现出新的具有鲜明特色的搜索引擎产品。同时,各 大科研结构和大学纷纷展开对搜索引擎技术相关领域的学术研究【9 1 。 作为i r 领域中最重要的会议之,t r e c ( t e x tr e t r i e v a lc o n f e r e n c e ) 从1 9 9 9 年1 1 月的第8 届开始增加w e b t r a c k 竞赛项目,考察w e b 文档与其它类型文档 在性质上的不同之处,测试在大规模的w e b 文档集上进行信息检索的算法性能。 在i e e e 主办的国际万维网会议( i n t e r n a t i o n a lw o r l d w i d ew e b c o n f e r e n c e ) 和a c m 主办的人机交互会议( c o m p u t e r h u m a i l i n t e r a c t i o n ,c u o 等重要学术会议上,发表 了越来越多的关于搜索引擎技术研究的文章。搜索引擎己经成为信息检索领域中 最活跃的研究方向【1 0 】。 近期具有代表性的成果有: s t a n f o r d 大学在其d l i 项目中开发了g o o g l e 搜索引擎,在w e b 高效搜索、 大规模索引、文档的相关度评价等方面作了深入的研究,提出了一种基于链接的 网页排名算法( p a g e r a n k 算法) 来计算网页的排名,并同时利用锚文本( a n c h o r s 、 信息进行网页相关度评价。 i b m a l m a d e n 研究中心研制了c l e v e r 系统,提出了类似于p a g e r a n k 的h i t s 算法,主要不同是将网页分为a u t h o r i t y 和h u b 两类,并就h i t s 算法在相关度 评价、网页分类、主题搜索等方面的作用进行了研究。 n e c 美国研究所开发了一个专门用于搜索学术文章的r e s e a t c h i n d e x 。其目 的是建立一个网上图书馆,只收集科技人员广泛使用的p d f 和p o s t s c r i p t 文件, 用“p d f ”,“p o s t s c r i p t ”等检索项组成查询送往其他著名的搜索引擎,对返回的 结果进行信息提取( 主题、摘要、作者、引用文献等) ,组成了一个2 7 万篇文献 的索引库,供科技人员查询。现在,n e c 开始致力于下代元搜索引擎i n q u i r u s 的开发。 国内先后有北京大学、清华大学、华南理工大学、国家智能研究中心等高校 和研究单位对搜索引擎技术进行了研究,开发出了几个实用的系统。 清华大学开发的“网络指南针”,利用智能、高效的网络搜索算法收集网页, 自动识别和转换常见的中文编码,向用户提供中文、英文、拼音、英汉翻译、 b i g 5 码等多种输入查询服务,并提供普通分类、学科分类、图书分类查询,共 计3 ,9 0 0 多个分类目录,收集的网页超过2 0 万页。 北大的“天网”中英文搜索引擎,在系统规模及系统性能方面达到了国外中 4 塑坚查兰堡! :堂垡堡苎 兰l l 量! ! 堡 型搜索引擎系统的技术水平,拥有1 0 0 万网页、1 4 万n e w s 文章和7 万f c p 文件, 是目前中文信息量最大的搜索引擎,在功能、性能、查准率、查全率等方面基本 达到了实用。 华南理工大学的“木棉”搜索引擎,分w e b 检索和f t p 检索两大部分。w e b 检索支持中英文混合查询、布尔查询、结构属性查询、模糊查询等多种查询方式。 f t p 检索实现基于文件主要属性的结构查询,以及模糊匹配等。目前系统收集约 5 0 万网页。 1 3 搜索引擎的发展动向 经过了多年的发展之后,现在的搜索引擎功能越来越强大,提供的服务也越 来越全面。据研究统计,目前i n t e r n e t 上搜索引擎已达数千种之多。然而,随着 多元化信息的增长,统一的用户入口已经不能满足用户的更深入的查询需求,搜 索引擎将向智能化、个性化、精确化、专业化、交叉语言检索、多媒体检索等适 应不同用户需求的方向发展【1 1 】。 智能化搜索 智能化是搜索引擎未来的发展方向。搜索引擎的智能化体现在两方面:一是 对搜索请求的理解,二是对网页内容的分析。通过智能代理技术对用户的查询计 划、意图、兴趣方向进行推理,自动进行信息搜集过滤,将用户感兴趣的信息返 回给用户。这其中也包含了对服务多项化、个性化,结果精确化,交叉语言检索 等方面的功能。 个性化搜索 个性化搜索引擎的核心是通过跟踪分析用户的搜索行为,充分地利用这些信 息来提高用户的搜索效率。这种搜索行为分析技术是种正在发展中的很有前途 的搜索引擎人机界面技术。 提高检索的有效性 解决查询结果过多的现象目前有以下几种方法:a ) 构建基于内容的搜索引 擎。基于内容的搜索不是根据字形,而是试图理解用户的请求,同时根据文档的 内容选出符合用户要求的文档。即通过各种方法获得用户没有在查询语句中表达 出来的真正用途,实现自然语言的智能查询功能。中文搜索引擎中当前比较成熟 的解决方案是依靠语义网络、汉语分词、句法分析、处理同义词等中文信息处理 技术最大程度地了解用户需求。b ) 将用户提问转化为系统已知的问题,然后对 已知问题进行解答,以求降低对自然语言理解技术的依赖性。用正文分类技 术将结果分类,使用可视化技术显示分类结构,用户可以只浏览自己感兴趣的类 别。d ) 进行站点类聚或内容类聚,减少信息的总量。e ) 让用户对返回结果进行 选择,进行二次查询是种非常有效的手段。 浙江丈学硕上学位论史 第】章绪论 实现交叉语言的检索 搜索引擎对多种语言的数据库进行交叉语言信息检索,返回能够回答用户问 题的所有语言的文档。若配上机器翻译,就可使返回结果以用户熟悉的语言显示。 虽然该技术目前还处于初步研究阶段,其难点在于语言之间在表达方式和语义对 应上的不确定性,但也是种发展方向。 提供对自然语言检索的支持 为了提高搜索引擎对用户检索提问的理解,就必须有一个好的检索提问语 言,为了克服关键词检索和目录查询的缺点,现在已经出现了自然语言智能答询。 如g o c i g l e 有专用于回答问题的g o o g l ea n s w e r ,微软有a n s w e r b o t 等。用户可 以输入简单的疑问句,比如”h o wc a nk i l lv i r u so f c o m p u t e r ? ”。搜索引擎在对提问 进行结构和内容的分析之后,或直接给出提问的答案,或引导用户从几个可选择 的问题中进行再选择。自然语言的优势在于,一是使网络交流更加人性化,二是 使查询变得更加方便、直接、有效。就以上面的例子来讲,如果用关键词查询, 多半人会用”v i r u s ”这个词来检索,结果中必然会包括各类病毒的介绍、病毒是怎 样产生的等等许多无效信息,而用”h o wc a nk i l lv i r u so f c o m p u t e r ? ”,搜索引擎会 将怎样杀病毒的信息提供给用户,提高了检索效率。 多媒体数据搜索 网络资源丰富多彩,具有很多类型的信息,用户需要的信息也不完全是网页 的形式,从用户的角度来看,必然要求搜索引擎能够覆盖更多的网络资源。现在 有很多搜索引擎已经提供了网页、新闻、图片、音乐等资源搜索,当然范围还可 以更广,再如可以搜索视频、音频等。 专业化搜索 主题搜索引擎是为了专门收录某一行业、某一学科、某一主题和某一地区的 信息而建立,非常实用,如有商务查询、企业查询、人名查询、电子邮件地址查 询和招聘信息查询等。 桌面型搜索 用户不用打开浏览器,而是直接通过只要通过它就能完全实现搜索过程,更 甚者它可以同时搜索本地、局域网和互联网上的信息。它完全越过传统的搜索模 式,越过浏览器,真正实现让搜索无处不在。搜索引擎脱离浏览器是一个发展趋 势,g o o g l e 、y a h o o 等已经推出桌面型搜索软件,而微软在2 0 0 5 年也同样有了 自己的桌面搜索软件。 此外还有一些其它值得注意的技术发展,如元搜索引擎,移动代理和x m l 技术,语音检索技术等。随着技术的不断发展进步,搜索引擎将会在信息检索中 发挥更大的作用。 6 浙扛人学硕士学位论文 第】章绪论 1 4 内容安排 本文主要研究了搜索引擎实现中所涉及的数据存储技术,给出一种支持海量 数据存储的系统实现,并介绍了c r a w l e r 利用其进行u r l 数据的存储管理。以 后各章的具体内容安排如下: 第二章介绍了搜索引擎总体结构、各组成部分实现功能及关键技术,并对 g o o g l e 的体系结构进行分析; 第三章介绍了搜索引擎中所涉及的存储数据及其存储实现技术。 第四章对实现的数据存储系统中系统结构及系统接口作详细介绍。 第五章用自实现的数据存储系统支持c r a w l e r 的数据存储。 第六章是对所做工作的总结和展望。 由于搜索引擎技术是- f - j 新兴技术,没有公开核心技术可以利用,加之时间 仓促且作者本人水平有限,论文中难免有谬误之处,敬请各位老师和同仁批评斧 正。 浙江大学矧士学位论文 第2 章搜索引擎技术 第2 章搜索引擎技术 2 1 搜索引擎的挑战 搜索引擎技术是由信息检索( i n f o r m a t i o nr e t r i e v a l ) 技术发展而来,是i r 技术在w e b 上的扩展【1 2 。 2 1 1 传统信息检索技术 信息检索技术研究信息的表示、存储、组织、g q , n 1 3 。传统i r 技术通常 处理的是文本信息,用于从一定规模的文档库中获取用户需要的信息,其核心是 文本信息的索引和检索。从历史上看,信息检索经历了手工检索、计算机检索到 目前网络化、智能化检索等多个发展阶段。 典型的i r 系统结构如图2 - 1 所示: 硅 i 丰一 图2 1 在使用前,i r 系统先对收集的文档建立索引。用户通过系统的查询接口输 入查询条件:系统对查询条件进行词干抽取、词义转换等一系列步骤生成系统内 部使用的检索关键字;通过索引获取检索结果集;在检索过程中,系统对检索文 档进行匹配计分,检索完成后,系统根据计分值对检索结果集中文档排序,将最 终结果返回给用户完成了整个检索过程。有些m 系统还提供了用户反馈机制来 提高检索相关度。 8 塑坚查堂婴:! :兰丝堡塞 兰! 兰堡童型兰! ! 查 i r 技术中,文档的表示和计算一直是研究的中心内容之一。主要的m 计算 模型有布尔模型、向量空间模型、概率模型等【1 4 】。布尔模型是一种基于集合理 论和布尔代数的简单检索模型,由于集合概念的直观性,布尔模型在使用上易于 被用户掌握,因而被许多i r 系统所采用。其主要缺点是精确匹配导致检索结果 过于简单。向量空间模型通过对索引项加权实现合理的检索结果。权值用于计算 系统中文档与查询请求的相似度,系统利用相似度对检索结果集中文档排序,以 获取更好的检索质量。概率模型采用相关反馈的方法,通过不断调整概率估计值, 直到获取一个满意的检索结果集的概率排序。向量空间模型与概率模型由于其形 式化特征直受到学者们的推祟。 2 1 2w e b 信息的挑战 i r 研究的对象一般是类似于科学论文集的有组织结构的文档集,在数据规模 上相对较小。作为m 技术在w e b 上的扩展,搜索引擎处理的信息是完全无组织 的异构的网页集合。表现在: 数据的分布性 数据分布存储在依靠网络连接的w e b 服务器上,要求系统对平台、网络等各 种复杂环境的适应能力强。 数据的动态性 i n t e r n e t 上w e b 服务器动态增加或减少非常频繁,网页信息变化也很快,导 致w e b 信息处于高度动态变化的状态中f i 5 ,要求系统具有高性能的动态索引和 数据更新技术。 海量数据 w e b 数据非常巨大,网页数目以亿为单位,仅文本的数据量据估计就达到 t b ( t e r a b y t e s ) 以上,且以指数级增长。另外,还存在大量的图像、音频、视 频资料,数据量就更为巨大了。从搜索引擎提供的数据看,g o o g l e 采集的网页 从最初的2 千万( 1 9 9 8 年) 发展到现在的8 0 亿( 2 ( ) 0 5 年) ,以几何级数增长。 到2 0 0 4 年,服务器规模达到有1 ,8 0 0 0 个,数据存储达到5 p b ( p e t a b y t e s ) 。m s n 采集的网页数目也达到5 0 亿 1 6 1 。 下表是各大搜索引擎最新采集数据量1 1 7 ,1 8 ,1 9 ,2 0 : 搜索引擎数据规模页面平均大小 g o o g l e 8 1b i l l i o n1 0 1 k m s n5 0b i l l i o n 1 5 0 k y a h o o4 2b i l l i o n ( e s t i m a t e )5 0 0 k a s kj e e v e s2 5b i l l i o n1 0 1 k + 表2 1 9 j l c 江人学坝十学位论文 第2 章搜索引擎技术 海量信息对搜索引擎在数据存储、索引结构、查询算法、相关排序等方面提 出了更高的要求。 数据的非结构化 w e b 中包含文本、图像、音频、视频等多种数据类型。h t m l 页面本身也是 一种非结构化( 或半结构化) 的数据类型。搜索引擎必须具有高效处理非结构化 数据的能力。 2 2 搜索引擎的体系结构 典型的搜索引擎结构一般由以下三个模块组成:信息采集模块( c r a w l e r ) 、 索引模块( i n d e x e r ) 、查询模块( s e a r c h e r ) 。如图2 ,2 所示: 图2 2 对应地,搜索引擎的工作可分为三个部分: c r a w l e r 从w e b 中采集网页数据: i n d e x e r 对c r a w l e r 采集数据进行分析生成索引; s e a r c h e r 接受查询请求,通过一定的检索算法获取查询结果,排序后 返回给用户 2 2 1c r a w l e r c r a w l e r 负责页面信息的采集,它的工作实现基于以下设想:既然所有网页 都可能链接到其他网站,那么从一个网站开始,跟踪所有网页上的所有链接,就 有可能检索整个互联网【2 1 】。初始数据一般由权威机构提供,如d m o z 2 2 。 c r a w l e r 工作原理如图2 - 3 所示。 浙江大学硕士学位论文第2 章搜索0 擎技术 图2 - 3 c r a w l e r 首先从待访问u r l 队列中获耿u r l s ,根据u r l 从w e b 中抓取网 页数据,然后对网页进行分析,从中提取出所有的u r l 链接,并把它们加入到 待访问u r l 队列中,同时将已访问u r l 移至己访问u r l 队列中。不断重复上 面的过程。所有采集到的页面保存到页面存储中进行下一步处理。 c r a w l e r 利用h t r p 协议来读取w e b 页面并沿着h t m l 文档中的超链接自动 获取w w w 资源。我们可将w w w 作为一个有向图来处理,将每一个页面看 作图中的一个节点,将页面中的超链接看作图中的有向边。因此可以采取有向图 的遍历算法( 深度优先或者广度优先算法) 来对w w w 进行遍历。 由于w e b 信息具有的分布性、非结构他、不稳定性等特点,c r a w l e r 存在以 下的关键问题: 多线程抓取时的任务调度问题。 搜索引擎会产生多个c r a w l e r 同时对网页进行抓取。如何给c r a w l e r 分配 任务,既不重复抓取,又不漏掉重要站点,是一个很关键的问题。这里需要 一个好的分布式算法,一个好的任务调度机制。 网页评估。 c r a w l e r 在抓取网页时存在一定的取舍,一般只会抓2 0 左右的网页,如 何评估网页非常重要,影响到搜索结果的质量。评估算法中典型的有g o o g l e 发明的p a g e r a n k 。 更新策略。 每经过一段时间,c r a w l e r 对已抓取网页进行更新,保证索引网页是最新 的。由于网页数据庞大,数据更新策略是c r a w l e r 的核心。 压缩算法。 c r a w l e r 抓取网页后,通过一定的压缩机制保存在本地,从而减少存储容 浙江大学坝f 学位论文第2 章搜索引擎技术 量,同时也减少各服务器之间网页传输时的通讯开销。 2 2 2i n d e x e r 搜索引擎在完成用户查询请求时,并不是即时检索w e b 上的数据,搜索的数 据实际上是预先采集的网页数据。要实现对采集页面的快速访问,必须通过某种 索引机制来完成。 页面数据可以用一系列关键词来表示,从检索目的来说,这些关键词描述了 页面的内容。只要找到页面,便可以找到其中的关键词。反过来,如果按关键词 建立到页面的索引,便可以根据关键词快速地检索到相关页面。具体地,关键词 被存储在索引文件( i n d e xf i l e ) d ? ,对于每个关键词,都有一个指针链表,该表中 的每个指针指向与该关键词相关的某个页面,所有指针链表构成置入文件 ( p o s t i n gf i l e ) 。这种倒排文件的方法几乎被当前所有的商用瓜系统所采用。 i n d e x e r 负责对c r a w l e r 采集的页面数据生成索引数据。基本结构如图2 - 4 所 不。 图2 - 4 i n d e x e r 首先从页面存储器中获取页面数据,对其进行分析,通过词典识别网 页中的词,通过停f r i l l ( s t o pw o r d s ) 表删除其中的停用词,生成检索词序列,并最 终生成索引数据。 i n d e x e r 中的关键问题: 索引存储 一般来讲,数据量和索引量的比例接近1 :1 。页面数据量很大时,索引 浙江凡学硕士学位论文 第2 章搜索,j 【擎技术 的容量也会很大。索引的存储一般采用分布式策略,索引数据分散存储在不 同服务器上。g o o g l e 中用来存储索引的服务器大概有1 0 0 0 多台。 索引更新 当页面数据更新时,索引数据必须相应的更新。更新策略一般采用增量 索引方式。对新增的数据建立新的索引块,然后在定时间,将这个新的索 引块并入旧的索引块实现增量更新。l u c e n e 采取的就是这种方式。 索引压缩 同样的,索引也存在数据压缩问题。与网页数据采取的通用压缩技术不 同,索引压缩是通过对具体索引格式的研究实现压缩。 网页相似性支持 索引的结构还必须为网页相似性分析提供支持,比如g o o g l e 和b a i d u 的 类似网页功能。为了很快找到类似网页,这些数据也必须放到索引中。 多语言、多格式支持 网页数据有多种编码格式,通过使用u n i c o d e 2 3 ,索引支持多种编码查 询。同时索引还必须能对w o r d 、e x c e l 、p d f 、p p t 等多种文件格式进行分 析以提供更多的搜索结果。 2 2 3s e a r c h e r s e a r c h e r 是直接与用户进行交互的模块,在接口上有多种实现方式,常见的 主要是w e b 方式,另外还可以通过无线接入方式( 如手机) 进行查询。 s e a r c h e r 工作原理如图2 5 所示 图2 5 s e a r c h e r 通过某种接口方式,接收用户查询,对查询进行分词( s t e m m i n g ) 浙江人学母! 士学位论文 第2 章搜索引擎技术 处理,获取查询关键字。通过i n d e x e r 获取与查询关键字匹配的网页数据,经过 排序后返回给用户。 s e a r c h e r 中的关键问题: 检索结果的排序 由于搜索引擎返回结果非常多,检索结果是否按用户预期的顺序排列是 评价搜索引擎的重要指标之一。一些新的尝试,比如对用户偏好的分析技术 如个性化搜索等都可以运用在这里,对不同偏好的用户采用不同的排序策 略。 检索结果的排重 检索结果的排重能提高结果数据的质量。检索结果的数量给排重带来资 源上的开销及速度上的影响。搜索引擎需要在其中作出权衡。 检索结果的相似性分析 主要用在类似网页功能中,需要在索引结构中提供支持。 检索的速度 主要依赖索引结构的设计。同时在体系结构上还有很多技术可以用柬提 升速度。如c a c h e 、负载均衡等。 2 3 相关技术 2 3 1 分布式技术 当搜索引擎处理数据量达到一定规模( 如网页数达到亿级) 时,为了提高系 统性能,必须采用分布式技术 2 4 1 。c r a w l e r 进行网页采集时,通过多台服务器 相互合作,以提高数据采集和更新速度;i n d e x e r 在生成索引数据时通过某种并 行算法,将任务分配到不同机器上同时进行,以加快索引速度。同时,可以将索 引存储在不同的机器上,减少单台机器负载,加快查询速度。s e a r c h e r 也可以在 不同的机器上同时进行检索,以提高检索的速度和性能。 2 3 2 中文分词 分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。分词技 术是处理汉语等无明显词间间隔语言的特有技术。英文中,单词之间是以空格作 为自然分界符,根本不存在分词问题。中文在语句和段落间有明显的分界符,但 在词间没有一个形式上的分界符。如何从中文句子中切分出合适的词汇,一直是 中文处理的难题。现有的分词算法可分为三大类:基于字符串匹配的分词方法、 基于理解的分词
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临聘导游合同范本
- 磷脂销售合同范本
- 婚庆公司承揽合同范本
- 模具研发协议合同范本
- 闲置家居售卖合同范本
- 新车购买合同范本赠品
- 社区工作基础知识培训课件
- 翻砂成品采购合同范本
- 微信销售合同范本
- 外贸口罩销售合同范本
- 教师校园安全培训课件
- 2025年国家公务员考录《申论》真题及参考答案(行政执法卷)
- 【MOOC】研究生学术规范与学术诚信-南京大学 中国大学慕课MOOC答案
- 明代科举中的座主、门生关系及其政治影响
- 三相异步电动机正反转说课课件
- (3.1.1)-野外地质工作安全(一)
- JJF 1117-2010计量比对
- 压力管道安装许可规则-TSG D3001-2021
- 厨房设备备品备件及专用工具库
- 公共政策导论完整版课件全套ppt教学教程(最新)
- 公司爬架升降令
评论
0/150
提交评论