中科院站内搜索引擎课程设计报告二.ppt
《中科院站内搜索引擎课程设计报告二.ppt》由会员分享,可在线阅读,更多相关《中科院站内搜索引擎课程设计报告二.ppt(41页珍藏版)》请在三一办公上搜索。
1、中科院网站站内搜索引擎课程设计报告需求分析与项目设计报告1.封面及个人贡献的分解,a)i.ii.iii.iv.,第一页课程名称高级软件工程项目名称中科院网站站内搜索引擎提交日期2010 年 1 月 22 日项目组成员列表,小组成员均来自软件研究所,学号200928015029038200928015029047200928015029041200928015029012200928015029046200928015029017,姓名许利杰赵占平张灿高蕾赵鑫李奇原,手机号15210909647150012702541521063136215210902177152109021701521090
2、9712,邮箱,i.,b),第二页个人贡献分解表,成员,小组成员姓名,职责项目管理(10)4:用户需求说明(7),许利杰60%20%,高蕾10%20%,赵占平20%20%,赵鑫10%,张灿20%,李奇原20%,5:术语表(3),100%,6:功能需求详述(10)7:非功能需求(2)8:领域分析(5),25%,15%50%,30%50%50%,30%,50%,9:交互图(协作图)(10),20%,10%,50%,20%,10:类图和接口规范(20)11:系统体系结构和系统设计(10)12:算法和数据结构(10)13:用户界面设计(10),20%30%20%20%,20%30%10%50%,20%
3、10%20%,25%10%20%,15%30%,20%30%,14:工作历史(2)16:参考文献(1),100%,100%,1.,2.,3.,4.,5.,6.,7.,8.,9.,10.,11.,12.,13.,14.,15.,16.,2.目录,中科院网站站内搜索引擎课程设计报告.1需求分析与项目设计报告.1,封面及个人贡献的分解.1目录.3更改说明.4用户需求说明.4,4.1.项目背景.44.2.项目目的.44.3.已有的解决方法.54.4.具体用户需求.5术语表.6功能需求详述.6非功能需求.12领域分析.13交互图(协作图).15类图和接口规范.19系统体系结构和系统设计.25算法和数据结
4、构.27用户界面设计.31工作历史.37结论和未来工作.39参考文献.41,3.更改说明需求方面变更:1、将分类检索从可选功能改为比做功能。2、增加了搜索建议功能。3、支持中文语句搜索,不仅能够进行中文解析,还要能处理用户输入的中文语句。4、增加了站点查询功能。,用例图变更:除了用户分类检索图以外,其他的用例图重新进行了分析与绘制。序列图变更:,绘制了系统序列图,除了用户分类检索图以外,其他的用例图重新进行了分析与绘制。4.用户需求说明,4.1.,项目背景,目前高校网站或者一般网站中使用的站内搜索引擎基本有三大类:一种是使用 Google的站内搜索引擎服务(由 Google Search Ap
5、pliance 驱动)。例如:清华大学、上海交大、浙江大学等等,Google 提供这种搜索服务是要收费的。一种是使用原始的文件索引技术,类似于在 word 中查找关键字的方法对文档进行搜索,因此只能搜索一些办公通知(如:中科院研究生院)。最后一种是只能搜索校内各个下属网站主页(如:武汉大学,相当于查询一个主页名字和网站地址的映射表)。后两种不能称之为真正意义上的站内搜索引擎。比较特殊的是北京大学的站内搜索使用了自己开发的天网搜索引擎,属于真正意义上的站内搜索引擎。,4.2.,项目目的,针对中科院旗下网站,部署一个类似 Google 站内搜索和北大天网搜索引擎的站内式搜索引擎。用户通过输入关键字
6、能够检索到内容相关的站内网页、文档等多种文件,并能够对搜索结果进行排序、分类和整理,最终通过浏览器将结果返回给用户。另外,根据中科院的特点,站内搜索引擎提供分类检索功能,用户可以选择对人员、科研、招生等信息进行专题搜索。,。,4.3.,已有的解决方法,从目前调查结果来看,北大天网搜索引擎返回结果中不能直接提供 MS word、pdf 等文件的直接链接,也就是不能对这些文件进行有效解析和搜索。Google 站内搜索可以(通过点击返回的结果标题,可以直接下载 doc、pdf 等文件)。但 Google 站内搜索没有提供网页快照功能,天网提供了。其他高校如华中科技大学的站内搜索也能够对站内的网页进行
7、搜索,但是也只能处理网页,不能处理其他类型的文件。中科院目前的站内搜索也是同样的情况。除了 Google 的站内搜索服务,目前另一位比较优秀的站内搜索引擎是基于开源检索工具改造和搭建的。如:美国俄勒冈州立大学的站内搜索引擎(http:/search.oregonstate.edu/),不仅能够对校内网页进行索引,而且能够对内容进行分类检索,支持多种格式文件的检索。其检索界面如下图:,4.4.,具体用户需求,1)站内搜索引擎是一个大型网站提供的一种网络服务,是为了方便用户快速检索到自己想要访问的网页或文件。因此在网站首页应包含简洁、醒目的搜索框,用户直接在搜索框中键入查询关键字,点击确认或回车后
8、,网站应能够快速响应请求,并将符合用户搜索的结果通过网页形式反馈给用户。2)用户希望返回结果中,除了相应结果的链接,还要有对网页的简单摘要,如商业搜索引擎中一般有 3 到 4 行对搜索结果的描述,便于用户鉴别是否是自己想要访问的链接。另外,返回的结果应该按照查询关键词的相关度排序,越符合查询要求的应该放的越靠前。第一页显示 10 条左右的查询结果,如果过多的查询结果放在同一页,会令用户感觉复杂繁多。如果查询结果多于 10 条,可以让用户通过点击下一页等方式来访问。3)搜索引擎要能够定期自动更新,因为不断地有新的网页或者文件加入到网站中,定期更新搜索结果,能够保证用户能够及时地通过站内搜索引擎访
9、问到新加入的资源。最好还能够提供网页快照功能,便于用户快速访问已经关闭或者暂时不能访问的网页。4)能够提供基于内容分类的检索服务。例如:商业搜索引擎可以为用户提供不同内容的检索服务(如:图片、mp3、视频、博客等等)。由于本项目针对中科院内部网站,用户,可能需要检索中科院内人员、科研、招生等相关信息,所以本项目应能够提供这些分类检索服务。,5)搜索框内相关搜索结果提示。为了方面搜索引擎与用户之间的交互,当用户在搜索,框中键入关键字时,搜索引擎最好能够提供搜索提示。如当用户在搜索框中键入“科”时,搜索框能够动提示以“科”为前缀的短语及包含该短语的搜索结果个数。,6)良好的语言识别能力。由于用户可
10、能在搜索框中键入中文或英文,而中文在自然语言处理领域是比较难以处理的语言。搜索引擎应该能够正确地理解用户输入,在理解的基础上进行检索,并能够根据词语的相关性对搜索结果进行有效地排序输出。,5.术语表,爬虫:将web网页自动下载到本地的网络程序。,URL:统一资源定位符(英语Uniform Resource Locator的缩写)也被称为网页地址,是因特,网上标准的资源的地址。,分词:将一段文字分割成一组符合日常用语的词语。类别词:对网页分类起作用的关键词。,布尔查询:说明各个关键词是否要在查询结果中出现,“+”表示出现,“-”表示不出现。站点查询:只搜索含有 URL 中含有特定字符的网页。,增
11、量抓取:提取原有索引中的 URL,利用这些 URL 抓取更多的新网页或者是修改过的网页,并将这些网页加入到索引中。,B/S 模型:浏览器/服务器模型,用户只需要通过浏览器与服务器进行交互,不用下载安装客户端软件。,API:(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是,提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节1。,Hash:把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。搜索建议:在用户输入关键字时,系统预联想以关键字为前缀的词语,方面用
12、户补全关键词。,6.功能需求详述,a)利益相关者(stakeholders),提供站内搜索引擎服务的网站所有者,b)角色(Actors)和目标(Goals),在本系统中角色主要是一般用户(通过 web 来使用站内搜索服务),类型是参与者,主,。,要参与系统功能需求描述和系统测试。另外一个角色是网站管理员,管理员负责将开发好的系统部署到网站上,配置搜索引擎所需配置文件,并监控和维护系统运行。c)用例(Use Cases),i.ii.,简要描述用户输入关键词查询:用户选择一个分类搜索(如网页搜索)后,在搜索框中输入关键字,关键字可以有多种格式,如使用引号括起关键字。系统对不同格式的关键字有不同的处
13、理方式。管理员建立索引文件:管理员通过配置网络爬虫各项参数,中文分词插件,各类文件解析器以及索引合并参数来建立索引文件,提供后续搜索服务的底层支持。管理员配置搜索服务:管理员配置搜索服务运行时所需的主要参数,摘要长度是对搜索结果的简要说明。每页的结果数代表在每页中出现的搜索结果条目数。分类搜索对应的索引文件用来建立分类标签与分类索引文件的映射。用户分类检索:针对不同的用户需求,提供不同的标签,用户可以选择搜索网页、搜索院内人员信息、搜索招生或者科研信息,这样可以使结果更具有领域相关性和准确性。用户搜索建议:用户在输入关键字的同时,可以获知出现该关键字的搜索结果数目,及以该关键字开头的且在索引中
14、出现的关键词。完整描述,用户输入关键词查询:1、普通多关键词查询:只输入关键词,关键词之间不用空格隔开,表示采用系统默认分词方式分隔关键词;用空格隔开表示按照用户指定的分词方式分词。2、精确查询:输入带有引号的关键词,如“Chinese Academy of Sciences”,表示精确匹配引号内的关键词,引号内的关键词不被分词。3、大小写不敏感查询:输入的英文单词不区分大小写,如“Beijing”等同于“beijing”4、布尔查询:在关键词前面加上“+”表示出现搜索结果要出现关键词,加上“-”表示不出现关键词5、站点查询:在域名前加上“url:”表示只搜索在该域名下出现的网页。例如 url
15、:表示只搜索 url 中出现 的网页。管理员建立索引文件:,1、设置爬虫各项参数:设置 url 过滤策略:通过定义网络爬虫抓取网页的 url 过滤策略来限制爬取网页的类型,其语法与正则表达式大致相同,以”+”表示接受后面定义的地址类型,”-”表示拒绝。如果只想让爬虫抓取 url 中含有 的网页,可如下定义:+http:/.*url 设置:起始 url 地址是让爬虫从该地址开始抓取网页并处理信息。如可从以下地址开始抓取:http:/建立中文分词插件:利用 ICTCLAS 的中文分词器,制作成插件。在对文本内容进行解析时,调用中文分词插件。3、配置不同类型文件解析器:不同类型的文件解析方法不同,使
16、用的解析器也不同。如 doc、pdf 由于采用文本格式与 txt 不同,而索引文件能处理的文本格式与 txt 相同。因此,需要配置不同类型文件的解析器来提取或转化文本。4、合并优化索引文件:设定每个文档的最大字段数和设定合并因子等配置信息,在索引文件增大到一定程度时,进行合并优化,功能类似于对普通文件的压缩。合并后的索引文件仍能保证索引的完整和正确性。管理员配置搜索服务:1、设置搜索结果摘要长度:搜索结果摘要是指对返回结果中一个条目的简要说明。摘要来自关键字在网页中的上下文。通过设置搜索结果摘要长度,可以控制对返回结果描述的完整性。2、设置每页返回结果数:由于大部分用户只对搜索结果第一页返回的
17、内容感兴趣,因此可以根据用户需求设置每页返回的结果数,其他结果通过下一页的方式来访问。3、设置分类搜索对应的索引文件:不同的标签对应不同的索引文件。如:人员标签对应只包含人员信息的索引文件。用户选择人员搜索时,只能在人员索引文件下进行查询。,用户分类检索,搜索引擎提供分类检索功能,其中有首页有 4 个标签,分别为:网页、人员、招生、科研。不同的标签提供更为详细和准确的搜索结果。1、网页检索:与“用户输入关键词查询”的用例一致。2、人员检索:检索中科院内相关人员介绍和与该人员相关的网页信息。3、招生检索:检索最新和历史招生信息,招生信息来自中科院研究生院的各个院系和中科院所属的各个研究所。,ii
18、i.,4、科研检索:主要检索最新的科研进展和状态新闻,以及目前承担的项目和发表的论文等信息。,用户搜索建议,用户在输入关键字时,系统自动匹配到以关键字开头的且在索引中出现的关键字信息。该信息包含索引中关键字本身以及关键字在索引中对应的索引结果数。这样可以方便用户选择搜索结果数比较多的关键字进行查询。用例图(Use Case Diagram)普通多关键词查询,精确关键词查询,一般用户,关键词查询,大小写不敏感查询,布尔查询,站点查询图 1 用户查询用例图,设置爬虫各项参数,建立搜索引擎索引文件,建立中文分词插件,管理员,配置不同类型文件解析器,合并优化索引文件图 2 管理员建立索引文件用例图设置
19、搜索结果摘要长度,配置搜索服务,设置每页返回的搜索结果条目数,管理员设置分类搜索对应的索引文件图 3 管理员配置搜索服务,检索人员信息建立类别词典,一般用户,检索招生信息,网页分类,获取网页特征信息检索科研信息图 4 用户分类检索图读取索引文件,获取搜索建议,统计词频,一般用户关键词前缀匹配图 5 用户搜索建议图,d)系统序列图(System Sequence Diagrams)系统序列图,一般用户,管理员,:Configure,:Crawler,:Index,:Search,setConf()crawlWebPage()genIndex()indexReadysearchInputWords
20、()searchInIndexsortResult()sortedResults图 6 系统序列图7.非功能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:系统的易用性和易维护性搜索引擎直接面对终端客户,这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。另外,系统要提供方便的手段供系统维护人员进行日常的管理。系统的开放性和可扩充性本项目在开发过程中,应充分考虑以后的可扩充性。例如对于 doc、pdf 文件的解析
21、处理等工作是要不断完善和更新的。这些要求系统提供足够的手段进行功能调整和扩充。而要实现这一点,应通过系统的开放性来完成,即系统应是一个开放系统,可以通过简单的加入和减少系统的模块来更新系统,而不必在原有系统上大费周折。,系统的响应速度响应速度指用户检索时提交关键字后等待系统回复的时间。用户提交检索内容后,系统应尽快匹配查找,返回相关内容,响应速度是搜索引擎系统的一个重要性能指标。系统的检索质量检索质量指用户期望检索内容与系统实际返回内容的匹配程度。搜索引擎系统作为帮助用户查找特定信息的工具,检索质量直接反应了搜索引擎的实用性程度,是考量一个搜索引擎系统的重要标准。,系统的健壮性,对于用户不规范
22、的操作,系统应提供足够的容错能力,在最大程度上不影响用户正常使用。对于系统运行过程中自身产生的错误,应保留相关错误信息以供后续的修改维护工作。系统的查全率和查准率查全率和查准率是考虑评价网页自动分类算法需要两个重要指标:查全率指通过分类算法被正确分类的文本数目与未分类文本前属于该类的文本数总数的比率,查准率为通过分类算法被正确分类的文本数目与通过分类算法被分为该类的文本数目的比率。8.领域分析,爬虫爬取策略,爬虫的工作策略一般则可以分为累积式抓取(cumulative crawling)和增量式抓取(incremental crawling)两种。累积式抓取是指从某一个时间点开始,通过遍历的方
23、式抓取系统所能允许存储和处理的所有网页。在理想的软硬件环境下,经过足够的运行时间,累积式抓取的策略可以保证抓取到相当规模的网页集合。但由于 Web 数据的动态特性,集合中网页的被抓取时间点是不同的,页面被更新的情况也不同,因此累积式抓取到的网页集合事实上并无法与真实环境中的网络数据保持一致。增量式抓取是指在具有一定量规模的网络页面集合的基础上,采用更新数据的方式选取已有集合中的过时网页进行抓取,以保证所抓取到的数据与真实网络数据足够接近。进行增量式抓取的前提是,系统已经抓取了足够数量的网络页面,并具有这些页面被抓取的时间信息。一般地,累积式抓取一般用于数据集合的整体建立或大规模更新阶段;而增量
24、式抓取则主要针对数据集合的日常维护与即时更新。在确定了抓取策略之后,如何从充分利用网络带宽,合理确定网页数据更新的时间点就成了网络蜘蛛运行策略中的核心问题。总体而言,在合理利用软硬件资源进行针对网络数据的即时抓取方面,已经形成了相对比较成熟的技术和实用性解决方案,这方面目前所需解决的主要问题,是如何更好的处理动态网络数据问题(如数量越来越庞大的 Web2.0 数据等),以及更好的根据网页质量修正抓取策略的问题。,建立初始 URL 集合分析初始 URL 集的建立有两种方式:超链接和站长提交。超链接是指机器人程序根据网页链到其他网页中的超链接,从少数几个网页开始,连到数据库上所有到其他网页的链接。
25、理论上,若网页上有适当的超链接,机器人便可以遍历绝大部分网页。站长提交是指在实际运行中,爬虫不可能抓取到所有站点,为此,网站站长可以向搜索引擎进行提交,要求收录,搜索引擎经过核查之后,便将该网站加入到 URL 集合中,进行抓取。,爬取过程,在爬取过程中,要维护一个爬取链接数据库,该库中存有等待爬取的链接信息。Inject 操作:爬虫将 URL 集合进行格式化和过滤,消除其中的非法 URL,并设定 URL状态,按照一定方法把 URL 集合进行初始化分值。期间,要将某些 URL 进行合并,以消除重复的 URL 入口。当有新的 URL 信息时,将其状态等信息存入爬取链接数据库,与原数据库中重复的则删
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中科院 站内搜索 引擎 课程设计 报告

链接地址:https://www.31ppt.com/p-2667245.html