计算机科学
!
% #
吻
#
大规模中文搜索引擎的架构和设计技术 & (
) +
,+
./ 0 /
+ 1, 1
)
+
2
,
3, 4 5 , 6 7一+ ( 5 , 4 7 8
+
+ )
王
剑
邵志清 上海 :;=: < , 4 2 一
9华东理工大学计算机科学与工程系 >? (14,
1 (
+ . 1 7 )( 0
,
0
4
,
)Δ (
)( Α (Α
( (
17
( ) + + ( ,
,+ (
)/ 0 /
+
1, 1)+ 4,+
2
,
( ,,
6 7 )+ ( #
(
( , 4 4,
7
+一+
)+
,
,
+
? 4 ) 2 Β 一
( 4
)?
/ ,
Χ
Β 1 1 4,
7+
Α (
7
, (
67 ,
/
+
1, 1)+
,
Χ 4
)+ ,
Ε 4 ,
? 0
)Χ +
07
,
Φ
2
, 4
( ,
Ε?
1 Φ 1 4
Ε?
(
Β (1
/
#
Γ)+, Β ,
+ 4,
24,/ Κ ,+
2
.+
2
/
1)+
1 4) !,
Α ,
+
4
Ε? (
+1 Φ 1 (
ΗΙ
+ ( 1 4Α 1
!
(
.+ 2
4
/
,
1)+
4
1 4 ) !,
5 , 4 7
+
)+
,
Χ )+
2
Ε
? 0, (
.+
Φ
6 7 )+
(
/
+ 1, 1)+
信息检索技术已经发展了多年然而随着ΕΕΕ的发 。,
ΗΗ #
ΡΚ 3Κ
( 4
! 4 ,
:展网络信息空前膨胀据 。。年 月份统计 , 。
,
可索引的网页 , ,
已达到Η:亿而且每天以几百万速度递增 :::年Λ月份索引 ,。
Ν 的网页达到 亿ΜΕ 文件不仅在内部结构上大相径庭:? 。,
接受需要获取的ΡΚ 3地址链表将其解地址域名解析是一个耗费时间的过程在我们的最析成 .Ζ初设计中它是整个系统的运行时间瓶颈逐个解析地址不 。 。
ΡΚ 3Κ (
!
,
。
,
所承载的信息也变化多端而传统的信息搜索技术是基于较 规范的信息库的相对于Ε 上信息总量在数量上规模较? ,,
。,能满足基于异步Η:实现的 4了如图 所示的一个系统 #
4
的要求因此我们设计 ,
。
小同时由于网络信息固有的特点同在网络上的不同页面 , ,
。
,
不能平等对待 ,
。
Ο
7,
的主页不可能和个人主页相提并论因 ,、。
。
本地机 &Π 5
此在网络信息获取中有必要引入不能从文件本身得到的外
部元信息如信息源的名望质量和引用数现在网络信息的 ,
获取主要靠搜索引擎实现针对现有搜索引擎数据更
新慢网 页排序质量不高和无法分布式运行的问题我们设计了一大 ,
。
、
Η」 3Κ 3# 51
规模的搜索引擎并初步实现了部分模块整个系统在 3 . ,
。
Π
Θ
ΡΣ
Ρ ,
下实现力求体现搜索引擎的高效率及良好的可扩展性 ,, 、
3Θ缓Κ存
Ζ .地址
并结合近几年来国外在网络信息检索技术方面的一些最新研 究结果如网页的自动排序文本的自动分类 ?文档上下 、
缓存
文结构研究等本文将具体介绍实现的相关模块以及涉及到
。
图
域名解析器结构图 5
的技术 Η #
。
我们在本地机设置了一个&Π ,
服务器它将解析地址的 ,
搜索引擎的整体架构 搜索引擎主要可分为基于目录的搜索引擎如 )4 1 4Β以及基于机器人的搜索引擎如 , ,
请求转送给局域网的域名服务器其本身仅被用作 .地址的Ζ一级缓存 , 。
3 4
! ( 是一个多线程的域名解析的客户端守护 ,
,Β7 ,
,
0 +
Τ+
Θ
进程它同时接收多个请求并为每一个请求生成一个线程响 ( ! 4从ΡΚ 3 3 )( 1中读取多个ΡΚ 3存入ΡΚ 3缓存应Κ 。
。
,
,
Χ 1Ω 1Γ> 5Ψ我们设计的为后一种类型搜索引擎Ξ 4 原理很简单从一组种子页面开始域名解析器 9ΡΚ 3 2 (Υ ,, 。。
并利用异步 地址 。
Η:
,
与 4 ( ,
!
建立多个连接同时解析多个 .Ζ ,, 、
Τ
,
Θ
Κ (
(
! Τ=将域名转
化为
.Ζ
地址再由搜索机器人 9 ,, ,
4,
4=
根
4 ( ! 4Η #
配置文件中的一些参数如 .缓存的大小Ζ的最大连接数等对系统的性能都有显著的影响 #
!
4
据 ΨΨΖ协议从信息服务器获得 Ψ[ 3文本在页面存储 ( 4 ( 4 4+ Φ 4=按关键器9 1 ΘΒ=中存储原始页面由索引器 9) 1字索引并提取出链接ΡΚ 3ΡΚ 3 3 )(=进行下一轮搜索如 9果将整个网络看成一个连接图这就是一个图的遍历过程见 ,,
一搜索Υ, 4 可以有多个 ,
Υ 4,
4
4
并行于多台机器每一个
,
64,
4 。
可
。
以生成多个子线程而每一个线程能同时读取数百个页面每 Υ,一个 4
,
,
图Η
。
4Υ
,
Τ
.线程同域名解析器建立一个Ψ 6Ζ∴Ζ连接多个Ψ 6Ζ∴Ζ的口流量进行控制的负载平衡可以由 .
窗 4 。
,
。
64 4,
具有强大的爬行页面的功能因此它需要域名解析器快速地解析域名否则不能充分利用机器的性能在整个爬 , 。
#
4行页面的过程中我们应可以随时加入或撤销一个Υ ,
,
4
而不影响系统的运行每一个
。
Υ
, 4 4
线程具有
图;
所示的结
构
。
图Η
搜索引擎模块图 ,
9 : (的具体实现Μ 〕。
爵
一
伟 9蛋国 9Τ夏〕还廖蚤垂堰 图;
我们的整体结构设计参考了 面将分别介绍各模块的实现细节 # 。
下
搜索机器人结构图
Λ
#

本文以天网搜索为实例,分析了大规模通用型中文搜索引擎检索系统的设计与实现技术。围绕检索效率和检索效果两个方面,本文介绍天网检索系统的集成框架结构和分布式架构,...
各方面的技术固然重要,但整个系统的架构设计也同样不 可忽视,搜索引擎也不例外....一般索引库规模多在 GB 级,数据量大 的也只有几百万条;但互联网网页搜索需要...
各方面的技术固然重要,但整个系统的架构设计也同样不可忽视,搜索引擎也不例外。... 一般索引库规模多 在 GB 级,数据量大的也只有几百万条;但互联网网页搜索需要...
大规模计算平台的互联网文本信息搜索引擎系统基于REST架构的OAM系统的设计与实现_互联网_IT/计算机_专业资料。全 国通信 新理 论 与新 技术 学术 大会 优秀 ...
信息搜索引擎综述及系统架构设计_信息与通信_工程科技_专业资料。商业科技 信息...中获取信息,为学习、生活提供越来越多的便利,搜索 引擎技术必将会有更大的发展...
大规模Web超文本搜索引擎架构_IT/计算机_专业资料。004 The Anatomy of a ...在设计 Google 的过程中,我们既考虑了 Web 的增 长速度,又考虑了技术的更新...
搜索引擎的架构_IT/计算机_专业资料。搜索引擎架构,搜索引擎技术,搜索引擎框架搜索引擎的架构设计对李彦宏不陌生吧, 他说: 搜索引擎不是人人都能做的领域, 进入...
基于概念检索的中文搜索引擎的设计与实现_IT/计算机... 另一种是基于大规模通用语料库的统 计信息来构建...下面主要从系 统体系结构和关键技术实现方面来介绍...
垂直搜索引擎的架构与实现_IT/计算机_专业资料。...语和关键技术,具体介绍了网络蜘蛛(spider)的设计规则...工程和技术创建大规模的在线数字图书馆,试图研究 在...
网络蜘蛛随着搜索经济的崛起,人 们开始越加关注全球各大搜索引擎的性能、技术和...对于网站设计者来说,扁平化的网站结构设计有助于搜索引擎抓取其更多的网页。 ...

我要评论