中文搜索引擎技术揭密:系统架构解决方案


中文搜索引擎技术揭密:系统架构解决方案 关键词:中文搜索引擎,互联网,个人主页,系统架构,百度,全文检索技术,索引 互联网发展的今天,一方面离 不开其开放、共享的特性带给人们的全新体验,另一方面也离不 开数以亿计的为其提供各类丰富内容的网络节点。互联网被普及前,人们查阅资料第一想到的便 是拥 有大量书籍资料的图书馆,到了今天你怎么想?或许今天的很多人都会选择一种更方便、 快捷、全面、准确的方式——互联网。你可以坐在家里轻点几下鼠标就查到 想要的各类信息, 这在互联网没有被普及之前,还都仅是一个梦而已,但如今这一切已成为了可能。 而帮助你通过整个互联网快速查找到目标信息的就是越来越被重视的搜索引擎。有关搜索引擎的 技术资料网络上已经很多,关于搜索引擎经济的多方面报道各大媒体 也都已经铺天盖地,因此 在这里小编并不想过多的谈论这些方面的感受,只想在本次“中文搜索引擎技术揭密”系列文章 全部完成之际来聊一下搜索引擎对小编的深 远影响。 记得 2000 年左右网络上开始大量出现免费个人主页空间,当时的小编还只是一个刚刚进入 IT 圈的小朋友,看着这些空间那叫一个口水横流,于是乎立刻申请了 一个。又经过了一个多月的 刻苦修炼和先后三次的改版,自己有生以来的第一个个人主页诞生了。可看着每天寥寥无几的访 问量,心里那叫一个难受,可一时间也想 不到好办法解决问题。突然有天发现一篇介绍如何在 搜索引擎注册自己个人网站的文章,于是小编就照着文章所讲的分别在 SOHU、网易等搜索引擎 的相关分类目 录下注册了自己的个人主页。直至今日,小编才确切的知道了当时盛行的搜索引 擎都属“目录搜索引擎”。这实际上是小编第一次使用、认识搜索引擎,再后来通过 每天个人 主页不断上升的数字小编感觉到了搜索引擎的神奇。 其实正是由于搜索引擎,才使小编的个人主页被更多的人所熟识,以至于后来有多份工作都是因 为这个个人主页所带来的机会。其实这些经历或许很多人都有切身的 体会,同样也有很多人因 此去全身投入到互联网工作中。这正像那句话讲的“世界真奇妙,不看不知道”,小编在此多加 一句“到底怎么看,搜索引擎帮你忙!” 前言 互 联网在近 10 年的得到飞速发展,互联网正在逐渐深入人们的生活,改变人们的生活。互联网 经济也经历了风风雨雨,从缓慢起步到急速膨胀,从泡沫破灭到逐步回 暖;从“网络广告”到 “拇指经济”,从“网络游戏”到“搜索力经济”。目前,搜索引擎成为最受人们关注的焦点之 一,也成为亿万富翁的制造摇篮。越来越多的 公司都希望在搜索引擎这座金矿中挖到筐金子, 其中许多人会选择拥有自己的搜索引擎。国内著名搜索引擎公司百度(http://www.baidu.com) 总裁李彦宏说:搜索引擎不是人人都能做的领域,进入的门槛比较高。 搜索引擎的门槛到底有多高?搜索引擎的门槛主要是技术门槛,包括网页数据的快速采集、海量 数据的索引和存储、搜索结果的相关性排序、搜索效率的毫秒级要 求、分布式处理和负载均衡、 自然语言的理解技术等等,这些都是搜索引擎的门槛。对于一个复杂的系统来说,各方面的技术 固然重要,但整个系统的架构设计也同 样不可忽视,搜索引擎也不例外。 搜索引擎技术和分类 搜索引擎的技术基础是全文检索技术,从 20 世纪 60 年代,国外对全文检索技术就开始有研究。 全文检索通常指文本全文检索,包括信息的存储、组织、表现、查 询、存取等各个方面,其核 心为文本信息的索引和检索,一般用于企事业单位。随着互联网信息的发展,搜索引擎在全文检 索技术上逐渐发展起来,并得到广泛的应 用,但搜索引擎还是不同于全文检索。搜索引擎和常 规意义上的全文检索主要区别有以下几点: 1. 数据量 传统全文检索系统面向的是企业本身的数据或者和企业相关的数据,一般索引 库规模多在GB级,数据量大的也只有几百万条;但互联网网页搜索需要处理几十亿的网 页,搜索引擎的策略都是采用服务器群集和分布式计算技术。 2. 内容相关性 , 信息太多,查准和排序就特别重要,Google等搜索引擎采用网页链接分 析技术,根据互联网上网页被链接次数作为重要性评判的依据;但全文检索的数据源中 相互链接的程度并不高,不能作为判别重要性的依据,只能基于内容的相关性排序。 3. 安全性. 互联网搜索引擎的数据来源都是互联网上公开的信息,而且除了文本正文以 外,其它信息都不太重要;但企业全文检索的数据源都是企业内部的信息,有等级、权 限 等限制,对查询方式也有更严格的要求,因此其数据一般会安全和集中地存放在数 据仓库中以保证数据安全和管理的要求。 4. 个性化和智能化. 搜索引擎面向的是互联网访问者,由于其数据量和客户数量的限制, 自然语言处理技术、知识检索、知识挖掘等计算密集的智能计算技术很难应用,这也是 目前搜索引擎技术努力的方向;而全文检索数据量小,检索需求明确,客户量少,在智 能化和个性可走得更远。 搜索引擎与全文检索除了以上的区别外,还结合互联网信息的特点形成了三个不同的类型: • 全文检索搜索引擎 :全文搜索引擎是名副其实的搜索引擎,国外具代表性的有Google (http://www.google.com) 、yahoo(http://search.yahoo.com) 、AllTheWeb (http://www.alltheweb.com ) 等,国内著名的有百度(http://www.Baidu.com)、中 搜(http://www.zhongsou.com)。它们都是通过从互联网上提取的各个网站的信息(以 网页文字为主)而建立的数据库,检索与用户查询条件匹配的相关记录,然后按一定的 排列顺序将结果返回给用户,也是目前常规意义上的搜索引擎。 • 目录搜索引擎 :目录索引虽然有搜索功能,但在严格意义上算不上是真正的搜索引擎, 仅仅是按目录分类的网站链接列表而已。用户完全可以不用进行关键词查询,仅靠分类 目录也可找到需要的信息。国外比较著名的目录索引搜索引擎有yahoo (http://www.yahoo.com)Open Directory Project(DMOZ)(http://www.dmoz.com/)、 LookSmart(http://www.looksmart.com)等。国内的搜狐(http://www.sohu.com)、 新浪(http://www.sina.com)、网易(http://www.163.com)搜索也都具有这一类功能。 • 元搜索引擎 :元搜索引擎在接受用户查询请求时,同时在其它多个引擎上进行搜索, 并将结果返回给用户。著名的元搜索引擎有Dogpile(http://www.dogpile.com)、 Vivisimo(http://www.vivisimo.com)等,国内元搜索引擎中具代表性的有搜星搜索 引擎(http://www.soseen.com/),优客搜索(http://www.yok.com)。在搜索结果排列 方面,有的直接按来源引擎排列搜索结果,如Dogpile,有的则按自定的规则将结果重 新排列组合,如Vivisimo。 • 其他的像新浪(http://search.sina.com.cn) 、网易(http://search.163.com)、 A9 (http://www.A9.com) 等搜索引擎都是调用其它全文检索搜索引擎,或者在其搜索结 果的基础上做了二次开发。 搜索引擎的系统架构 这里主要针对全文检索搜索引擎的系统架构进行说明,下文中提到的搜索引擎如果没有特殊说明 也是指全文检索搜索引擎。搜索引擎的实现原理,可以看作四步:从互联网上抓取网页→建立索 引数据库→在索引数据库中搜索→对搜索结果进行处理和排序。 1. 从互联网上抓取网页. 利用能够从互联网上自动收集网页的网络蜘蛛程序,自动访问互 联网,并沿着任何网页中的所有URL爬到其它网页,重复这过程,并把爬过的所有网页 收集到服务器中。 2. 建立索引数据库 . 由索引系统程序对收集回来的网页进行分析,提取相关网页信息(包 括网页所在URL、编码类型、页面内容包含的关键词、关键词位置、生成时间、大小、 与其它 网页的链接关系等),根据一定的相关度算法进行大量复杂计算,得到每一个网 页针对页面内容中及超链中每一个关键词的相关度(或重要性),然后用这些相关信 息 建立网页索引数据库。 3. 在索引数据库中搜索 . 当用户输入关键词搜索后,分解搜索请求,由搜索系统程序从 网页索引数据库中找到符合该关键词的所有相关网页。 4. 对搜索结果进行处理排序 . 所有相关网页针对该关键词的相关信息在索引库中都有记 录,只需综合相关信息和网页级别形成相关度数值,然后进行排序,相关度越高,排名 越靠前。最后由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返 回给用户。 下图是一个典型的搜索引擎系统架构图,搜索引擎的各部分都会相互交错 相互依赖。其处理流程按照如下描述: “网络蜘蛛”从互联网上抓取网页,把网页送入“网页数据库”,从网页中“提取 URL”,把URL 送入“URL 数据库”,“蜘蛛控制”得到网页的 URL,控制“网络蜘蛛”抓取其它网页,反复循 环直到把所有的网页抓取完成。 系统从“网页数据库”中得到文本信息,送入“文本索引”模 块建立索引,形成“索引数据库”。同时进行“链接信息提取”,把链接信息(包括锚文本、链 接本身等信息)送入“链接数据库”,为“网页评级”提供依据。 “用户”通过提交查询请求 给“查询服务器”,服务器在“索引数据库”中进行相关网页的查找,同时“网页评级”把查询 请求和链接信息结合起来对搜索结果进行相关度的评价,通过“查询服务器”按照相关度进行排 序,并提取关键词的内容摘要,组织最后的页面返回给“用户”。 搜索引擎的索引和搜索 对于网络蜘蛛技术和排序技术请参考作者其它文章[1][2],这里以 Google 搜索引擎为例主要介 绍搜索引擎的数据索引和搜索过程。 数据的索引分为三个步骤:网页内容的提取、词的识别、标引库的建立。 互联网上大部分信息都是以 HTML 格式存在,对于索引来说,只处理文本信息。因此需要把网页 中文本内容提取出来,过滤掉一些脚本标示符和一些无用的广告信 息,同时记录文本的版面格 式信息[1]。词的识别是搜索引擎中非常关键的一部分,通过字典文件对网页内的词进行识别。 对于西文信息来说,需要识别词的不同 形式,例如:单复数、过去式、组合词、词根等,对于 一些亚洲语言(中文、日文、韩文等)需要进行分词处理[3]。识别出网页中的每个词,并分配 唯一的 wordID 号,用于为数据索引中的标引模块服务。 标引库的建立是数据索引中结构最复杂的一部分。一般需要建立两种标引:文档标引和关键词标 引。 文档标引分配每个网页一个唯一的 docID 号,根据 docID 标引出在这个网页中出现过多少 过 wordID,每个 wordID 出现的次数、位置、大小写格 式等,形成 docID 对应 wordID 的数据列 表;关键词标引其实是对文档标引的逆标引,根据 wordID 标引出这个词出现在那些网页(用 wordID 表 示),出现在每个网页的次数、位置、大小写格式等,形成 wordID 对应 docID 的列 表。 关于索引数据的详细数据结构,有兴趣的朋友可以参看文献[4]。 搜索的处理过程是对用户的搜索请求进行满足的过程,通过用户输入搜索关键字,搜索服务器对 应关键词字典,把搜索关键词转化为 wordID,然后在标引库中 得到 docID 列表,对 docID 列表 进行扫描和 wordID 的匹配,提取满足条件的网页,然后计算网页和关键词的相关度,根据相关 度的数值返回前 K 篇结 果(不同的搜索引擎每页的搜索结果数不同)返回给用户。如果用户查 看的第二页或者第多少页,重新进行搜索,把排序结果中在第 K+1 到 2*K 的网页组织返回 给用 户。其处理流程如下图所示: 搜索引擎细化趋势 随着搜索引擎市场空间越来越大,搜索引擎也分得越来越细。互联网没有国界,百度总裁李彦宏 所讲:搜索引擎市场是赢家通吃的市场。如果一个搜索引擎要想在搜 索市场上有自己的一席之 地,必须拥有自己的特色。而且,数以亿计的网民,搜索需求不可能都一样,不同类型的用户需 要不同类型的搜索引擎,网页搜索只是搜索 需求中的一种,这就决定了搜索引擎会不断细化, 各具特色的搜索引擎也陆续出现。 从技术上讲,各种搜索引擎都具有类似的系统架构,其不同在于搜索的数据源的不同。除了上面 提到的网页搜索引擎以外,下面列举几个典型的搜索引擎: • 新闻搜索引擎 . 看新闻是许多网民上网的主要目的,新闻搜索也就成了查看新闻的重 要工具。新闻搜索引擎实现的过程比较简单,一般是扫描国内外有名的新闻网站,抓取 新闻网 页,建立自己的新闻数据库,然后提供搜索,只是对新闻网页抓取的频率要求 很高,有的需要做到几分钟扫描一次。现在许多大型的网页搜索引擎都提供相应的新闻 搜索功能,如:Google新闻搜索(http://news.google.com),中搜新闻搜索 (http://news.zhongsou.com),百度新闻搜索(http://news.baidu.com)等。 • 音乐搜索引擎 . 有了互联网以后,音乐得到了广泛的传播,对于喜欢音乐的网民来说, 音乐搜索引擎成了最钟爱的工具。音乐搜索引擎需要监控互联网上大型的音乐网站,抓 取其音乐数据的描述信息,形成自己的数据库,音乐的下载和试听都会在其原来的音乐 网站上进行。目前有:搜刮网(http://www.sougua.com),百度mp3 搜索 (http://mp3.baidu.com),1234567 搜索(http://www.1234567.com)等。 • 图像搜索引擎 . 通过图像搜索引擎可以找到自己感兴趣的图片链接,各大搜索引擎也 提供了图像搜索功能。图像文件本身不能够被搜索引擎索引,但搜索引擎可以通过链接 文本分析和图片注解等得到图片的信息。目前有:Google图像搜索 (http://images.google.com/),VisionNext搜索(http://www.eefind.com),百度图 像搜索(http://images.baidu.com)等。 • 商机搜索引擎 . 电子商务一直是互联网的热点,商机搜索对电子商务的发展也起到了 巨大的推动作用,商机搜索让互联网经济和传统经营紧密结合在一起,给传统的企业提 供了一个 新的销售模式。商机搜索引擎,通过抓取电子商务网站的商品信息和其他商 业信息,给访问者提供统一的搜索平台。目前有:soaso价格搜索引擎 (http://www.soaso.com),8848 购物搜索(http://www.8848.com),阿里巴巴商机搜 索(http://www.alibaba.com)等。 其他特色的搜索引擎还有专利搜索、软件搜索、ftp 搜索、游戏搜索、法律搜索等等,有兴趣的 朋友可以参看文献[5]。
还剩5页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 20 金币 [ 分享pdf获得金币 ] 1 人已下载

下载pdf

pdf贡献者

bob_18

贡献于2011-08-28

下载需要 20 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf