搜索引擎索引技术

合集下载

搜索引擎的工作原理

搜索引擎的工作原理

搜索引擎的工作原理搜索引擎是一种用于帮助用户在互联网上查找相关信息的工具。

它的工作原理可以分为四个主要步骤:抓取、索引、排序和展示。

下面将详细介绍每个步骤的具体内容。

1. 抓取(Crawling):搜索引擎通过自动化程序(爬虫)从互联网上抓取网页。

爬虫从一个起始点开始,通过链接逐步遍历整个互联网。

它们会跟踪每个链接并下载网页内容。

爬虫通过识别网页上的超链接来发现新的网页,并将这些网页添加到抓取队列中。

2. 索引(Indexing):一旦网页被抓取,搜索引擎会将其添加到一个被称为索引的数据库中。

索引是搜索引擎的核心组成部分,它包含了大量的网页内容信息。

为了加快搜索速度,索引会对网页进行结构化处理,提取出关键信息如标题、摘要、关键词等,并建立索引以便快速检索。

3. 排序(Ranking):当用户输入关键词进行搜索时,搜索引擎会根据索引中的信息进行排序,以确定哪些网页最相关。

排序算法会考虑多个因素,如关键词在网页中的出现频率、网页的质量和权威性等。

搜索引擎会对每个网页进行评分,并按照得分高低进行排序。

4. 展示(Display):最后,搜索引擎会根据排序结果将相关网页展示给用户。

展示结果通常以列表形式呈现,每个结果都包含标题、摘要和URL链接。

搜索引擎还会提供一些额外的功能,如过滤器、相关搜索和搜索历史等,以帮助用户更好地获取所需信息。

搜索引擎的工作原理是一个复杂的过程,它需要大量的计算资源和算法支持。

为了提供准确、相关的搜索结果,搜索引擎公司会不断改进他们的算法和技术。

同时,搜索引擎也需要处理大量的数据,包括网页内容、用户搜索记录等。

通过不断优化和改进,搜索引擎能够更好地满足用户的信息需求。

百度搜索引擎的原理

百度搜索引擎的原理

百度搜索引擎的原理
百度搜索引擎是基于信息检索的技术原理进行工作的。

其核心原理主要分为网页爬取、网页索引和查询处理三个步骤。

首先,百度搜索引擎会使用爬虫程序自动收集互联网上的网页内容。

这些爬虫会从互联网上的一个个链接开始,逐个地访问网页并将其内容保存下来。

爬虫会遵循页面中的链接跳转到其他网页继续爬取。

通过这种方式,百度搜索引擎可以获取到大量的网页信息。

接下来,百度会对这些爬取到的网页进行索引。

索引是一个巨大的数据库,其中包含了所有爬取到的网页的信息。

为了提高检索效率,百度会对网页的文本内容进行处理和分析,提取出其中的关键词和主题。

这些关键词和主题会用作后续搜索的关键参数。

同时,百度还会记录网页的URL链接和其他相关信息,以便用户在搜索时能够快速找到。

最后,当用户在百度搜索框中输入关键词并提交时,百度会调用查询处理程序来处理用户的搜索请求。

查询处理程序会根据用户输入的关键词,在索引中寻找与之相关的网页信息。

百度会对这些网页进行排序,将与关键词相关性较高的网页排在前面。

同时,根据用户的搜索历史、位置和其他个人信息,百度还会提供个性化的搜索结果。

总结起来,百度搜索引擎的原理包括网页爬取、网页索引和查询处理三个步骤。

通过自动爬取网页内容并进行处理和索引,百度能够提供用户相关、准确的搜索结果。

搜索引擎基本原理及实现技术

搜索引擎基本原理及实现技术

搜索引擎基本原理及实现技术引擎是一种用于通过关键词来获取特定信息的软件工具。

它基于一系列的基本原理和实现技术来实现高效的功能。

下面将详细介绍引擎的基本原理及实现技术。

1.引擎的基本原理(2)索引技术:为了实现高效的功能,引擎需要对抓取到的网页进行索引。

索引是建立在数据库中的关键词和网页的对应关系列表。

当用户输入关键词进行时,引擎可以通过索引快速地找到包含该关键词的网页。

(3)排序算法:引擎需要根据网页的相关性对结果进行排序,并将最相关的网页展示给用户。

常用的排序算法包括PageRank算法和TF-IDF算法。

PageRank算法根据网页之间的链接关系来评估网页的重要性,TF-IDF算法则根据关键词在网页中的出现频率和在整个互联网中的出现频率来评估网页的相关性。

2.引擎的实现技术(1)倒排索引:倒排索引是一种常用的索引技术,它将关键词和包含该关键词的网页进行对应。

倒排索引可以快速地找到包含一些关键词的网页,对于引擎来说是一种非常高效的索引方式。

(2)分词技术:由于用户在时输入的关键词通常是一个短语或句子,为了实现精确的匹配,引擎需要进行关键词分词。

分词技术可以将输入的关键词分解成多个独立的词语,再进行索引匹配。

(3)语义理解技术:引擎需要理解用户的意图,以便提供更准确的结果。

语义理解技术可以通过分析用户的历史和行为来推断用户的意图,并根据用户的意图调整结果。

(4)并行计算技术:为了提升引擎的查询速度,引擎可以使用并行计算技术。

通过将数据和计算任务划分成多个部分,并在多个计算节点上并行地执行,可以加速引擎的查询过程。

(5)机器学习技术:引擎可以利用机器学习技术来优化结果的排序。

通过训练机器学习模型,引擎可以根据用户的点击或转化行为来预测用户的偏好,并调整结果的排序。

3.引擎的实现流程引擎的实现流程大致可分为以下几个步骤:(1)爬虫抓取:引擎首先通过爬虫程序抓取互联网上的网页内容,并将这些内容存储在数据库中。

搜索引擎基本原理及实现技术——索引

搜索引擎基本原理及实现技术——索引

预处理系统
主要工作 信息抽取 分词 分类等处理工作 生成正排发送 到索引系统生成倒排索引。
信息抽取
去标签和去噪 去标签 构造 DOM 树。tinyHTML,htmlParser, Jsoup; 去噪 去掉与正文不相关的广告或者其他信息。 如广告,评论,导航条,版权信息,友情 链接等等。
分词工具
IkAnalyzer2012,国外有名的分析系统, 也可以处理中文。使用简单。 NLPIR2014, NLPIR2015 ICTCLAS5.0 中科院开发的专门针对中文的分词系统, 中文分词较准确,稍微麻烦点

教育学院/n_new/3.34/2#学院/n/2.58/19# 教育/vn/1.74/3#信息/n/1.74/3#工程 /n/1.34/5#教学/vn/1.27/3#
建立索引



两遍文档遍历法(2-Pass In-Memory Inversion) 在第一遍扫描文档集合时,该方法并没有立即开始建立 索引,而是收集一些全局的统计信息。比如文档集合包 含的文档个数N,文档集合内所包含的不同单词个数M, 每个单词在多少个文档中出现过的信息DF。每一项记载 某个文档的文档ID和单词在该文档对应的出现次数TF。 第一遍扫描的主要目的是获得一些统计信息,并根据统 计信息分配内存等资源,同时建立好了单词相对应倒排 列表在内存中的位置信息,即主要做些资源准备工作。 在第二遍扫描的时候,开始真正建立每个单词的倒排列 表信息,即对于某个单词来说,获得包含这个单词的每 个文档的文档ID,以及这个单词在文档中的出现次数TF, 这样就可以不断填充第一遍扫描所分配的内存空间。

再合并策略(Re-Merge) 有新增文档进入搜索系统时,搜索系统在 内存维护临时倒排索引来记录其信息,当 新增文档达到一定数量,或者指定大小的 内存被消耗完,则把临时索引和老文档的 倒排索引进行合并,以生成新的索引。

搜索引擎技术原理

搜索引擎技术原理

搜索引擎技术原理搜索引擎已成为我们日常生活中获取信息的重要工具。

但是,你是否曾经想过搜索引擎是如何工作的?究竟是什么原理使得它们能够从海量的信息中准确地找到我们想要的答案呢?本文将介绍搜索引擎技术的原理和运行机制。

一、爬虫机制搜索引擎的第一步是通过爬虫机制来收集互联网上的网页。

爬虫是一种自动化程序,它依靠链接在不同网页之间进行跳转,并将这些网页的内容下载下来。

爬虫程序从一个种子URL(初始的网页链接)开始,通过解析网页上的链接,不断地深入抓取,并将抓取到的网页放入索引队列中。

二、索引机制索引是搜索引擎的核心组成部分。

一旦爬虫程序抓取到网页内容,它会将网页交给索引程序进行处理。

索引程序会解析网页的HTML源代码,提取出关键信息,如标题、正文、链接等。

然后,索引程序将这些信息存储在数据库中,以便后续的搜索操作。

为了提高搜索效率,索引程序会对网页进行分词和倒排索引的处理。

分词是将网页内容按照一定规则进行拆分,形成词语的序列。

倒排索引是将词语与包含该词语的网页进行关联,形成一个词典。

这样,当用户输入关键词进行搜索时,搜索引擎可以快速地找到含有这些关键词的网页。

三、查询匹配机制查询匹配是指将用户输入的查询语句与索引中存储的网页信息进行匹配,找到最相关的结果并进行排序。

当用户输入查询语句后,搜索引擎会对查询语句进行分词处理,并根据词语在倒排索引中的关联情况,找到包含这些词语的网页。

为了提高搜索结果的准确性,搜索引擎会使用一系列的算法和技术进行结果排名。

其中,最常用的是PageRank算法。

PageRank算法将网页的重要性视作一个数值,并根据网页之间的链接关系来计算这个数值。

具有更高PageRank值的网页在搜索结果中排名更靠前。

四、结果展示机制最后,搜索引擎将匹配到的搜索结果呈现给用户。

搜索结果页面常用的展示方式是将相关网页的标题、摘要和链接显示在结果列表中。

为了方便用户快速判断和点击,搜索引擎还会提供相关搜索建议、相关搜索词和翻页功能等。

搜索引擎技术

搜索引擎技术

搜索引擎技术
搜索引擎技术是一种用于从大型数据集合中找出与用户查
询相关的信息的技术。

它涉及到多个方面,包括索引技术、查询处理技术、排名算法等。

以下是一些搜索引擎技术的
关键组成部分:
1. 网页爬取:搜索引擎通过网络爬虫抓取互联网上的网页,并将这些网页存储到自己的数据库中。

2. 数据处理和索引:搜索引擎将爬取到的网页进行处理,
提取出其中的文本内容,并建立索引,以便能够快速地检
索相关的网页。

3. 查询处理:当用户输入查询关键词时,搜索引擎将通过
查询处理技术解析用户的查询,提取出其中的关键信息,
并根据索引进行检索,找出与查询相关的网页。

4. 排名算法:搜索引擎通过一系列的排名算法来确定搜索
结果的排序顺序。

这些算法根据不同的因素评估网页的相
关性和质量,例如关键词匹配度、网页的权威性和用户反
馈等。

5. 用户界面:搜索引擎还需要提供一个用户界面,以便用
户输入查询,并展示搜索结果。

用户界面通常包括搜索框、搜索按钮、分页和过滤等功能。

6. 垂直搜索和个性化搜索:搜索引擎可以根据用户的兴趣
和行为提供个性化的搜索结果,并针对特定的领域(如新闻、图片、视频等)提供专门的搜索服务。

综上所述,搜索引擎技术是一种复杂的技术体系,涉及到
多个方面的知识和技术,旨在为用户提供准确、全面、高
效的搜索结果。

信息检索与搜索引擎技术

信息检索与搜索引擎技术

信息检索与搜索引擎技术信息检索与搜索引擎技术在当今信息时代扮演着重要的角色。

随着互联网的普及和信息量的爆炸式增长,人们对于搜索引擎的需求也越来越高。

本文将介绍信息检索与搜索引擎技术的概念、原理和应用。

一、信息检索的概念和原理信息检索是指根据用户的需求,在庞大的信息库中查找并提供与需求相关的信息的过程。

它的核心是建立一个有效的检索模型,通过对信息进行索引和匹配,以实现信息的快速检索。

信息检索的原理包括以下几个方面:1. 信息的建立和组织:将信息库中的文档进行系统化的整理和分类,并为每个文档建立索引,以便于后续的检索。

2. 检索模型的建立:根据用户的需求和信息库的特点,建立相应的检索模型。

常见的检索模型包括布尔模型、向量空间模型和概率模型等。

3. 检索算法的设计:根据检索模型,设计相应的检索算法。

常见的检索算法包括倒排索引、TF-IDF算法和 PageRank算法等。

4. 相关性评价:对检索结果进行相关性评价,以确定检索效果的好坏。

评价指标包括准确率、召回率和F1值等。

二、搜索引擎的概念和技术架构搜索引擎是一种利用信息检索技术,提供互联网上相关信息检索服务的应用软件。

搜索引擎通过爬虫程序从互联网上收集信息,并构建索引库,以便用户通过关键词搜索到相关的网页、图片、视频等信息。

搜索引擎的技术架构主要包括以下几个模块:1. 爬虫模块:负责从互联网上爬取网页和其他信息资源,并进行去重和存储。

2. 索引模块:负责将爬虫模块获取的网页进行处理,提取网页内容和特征,并建立相应的索引。

3. 检索模块:负责根据用户的查询语句,在索引库中查找相应的文档,并进行排序和过滤,以提供给用户相关的检索结果。

4. 排名模块:负责对检索结果进行排序,并根据用户的反馈和行为记录进行个性化推荐。

5. 用户界面模块:负责接收用户的查询请求,并将检索结果以用户友好的方式展示给用户。

三、信息检索与搜索引擎技术的应用信息检索与搜索引擎技术在各个领域都具有广泛的应用。

搜索引擎的主要技术

搜索引擎的主要技术

搜索引擎主要技术一个搜索引擎由搜索器、索引器、检索器和用户接口等四个部分组成。

1.搜索器 搜索器的功能是在互联网中漫游,发现和搜集信息。

它常常是一个计算机程序,日夜不停地运行。

它要尽可能多、尽可能快地搜集各种类型的新信息,同时因为互联网上的信息更新很快,所以还要定期更新已经搜集过的旧信息,以避免死链接和无效链接。

目前有两种搜集信息的策略。

(1)从一个起始URL集合开始,顺着这些URL中的超级链接(Hyperlink),以宽度优先、深度优先或启发式方式循环地在互联网中发现信息。

这些起始URL可以是任意的URL,但常常是一些非常流行、包含很多链接的站点(如Yahoo!)。

(2)将Web空间按照域名、IP地址或国家域名划分,每个搜索器负责一个子空间的穷尽搜索。

搜索器搜集的信息类型多种多样,包括html、xml、newsgroup文章、ftp文件、字处理文档和多媒体信息。

2.索引器 索引器的功能是理解搜索器所搜索的信息,从中抽取出索引项,用于表示文档以及生成文档库的索引表。

索引项有客观索引项和内容索引项两种:客观项与文档的语意内容无关,如作者名、URL、更新时间、编码、长度、链接流行度(link popularity)等;内容索引项是用来反映文档内容的,如关键词及其权重、短语、单字等。

内容索引项可以分为单索引项和多索引项(或称短语索引项)两种。

单索引项对于英文来讲是英语单词,比较容易提取,因为单词之间有天然的分隔符(空格);对于中文等连续书写的语言,必须进行词语的切分。

3.检索器 检索器的功能是根据用户的查询在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制。

检索器常用的信息检索模型有集合理论模型、代数模型、概率模型和混合模型四种。

4.用户接口 用户接口的作用是输入用户查询、显示查询结果、提供用户相关性反馈机制。

主要的目的是方便用户使用搜索引擎,高效率、多方式地从搜索引擎中得到有效、及时的信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机新技术论文论文题目:搜索引擎索引技术课程名称:计算机新技术专业:班级:学号:姓名:搜索引擎索引技术摘要:近期两类国内搜索引擎技术的研究状况:爬虫系统性能优化技术研究及高级文件搜索引擎核心技术研究。

爬虫系统性能优化侧重于:对爬行方式的优化实现海量信息源的高效索引;对URL 数据库存取算法的优化提高用户检索的响应速度。

高级文件搜索引擎研究是通过对字符串匹配的扩展、属性过滤的扩展、查询结果优化排序、输出结果的优化选择等7 种核心技术的有效结合,丰富了文件搜引擎的功能。

关键词:互联网搜索引擎爬虫技术检索技术搜索引擎作为网络信息搜寻的工具,它以一定的策略在互联网中搜集、发现信息,对信息进行理解、提取、组织和处理,并为用户提供检索服务。

早期的搜索引擎将互联网中的资源服务器做为搜索的目标,并将收集的数据按概念进行分类,用户从分类引导中索取所需的信息资源。

随着网络资源成几何量级增长, 这种方式很快就被淘汰。

1994年,Spider 程序被应用到索引程序中,Yahoo 、Google等相继出现,搜索引擎技术在应用和性能方面得到长足进步。

但至今,功能再强大的搜索引擎都仍然存在信息丢失、招回率不高、精确率不高等问题。

用户需要更快、更准、更方便、更有效的查询服务成为搜索引擎技术发展研究追求的目标。

2003 年3 月“全国首届搜索引擎和网上信息挖掘学术研讨会”在北京大学举行,该会收录论文30篇,基本反映了当前国内研究状况及进展,本文将其中最具代表性的Igloo1. 2 版网络搜索引擎和天网FTP 搜索引擎关键技术的研究状况做一介绍。

现在的数据库通常只是将信息简单地数字化和有序化,无法根据各类读者的需要组合成特定的知识体系。

怎样让读者在众多信息源中迅速、直接选中自己所要检索的相关信息,能不能将信息整理、筛选,划分成许多类别分明、有特色的“知识块”,以利于读者使用呢? 知识仓库的出现,为我们解决相关问题提供了有效的技术手段。

20 世纪90 年代,西方管理学家提出了知识管理的概念,认为采用现代信息技术和手段将信息加工整理成为知识,并对这些知识按照某种知识结构进行有效的管理,形成具有规定使用功能的数据仓库,也就是知识仓库。

数字图书馆应用系统是进行数字化建设及整合各类数字资源的基础平台,它支持对知识和数字资源的采集、加工、处理、存储、归档、组织、发布和利用等全过程。

知识仓库是数字图书馆资源建设的核心内容之一。

随着信息数字化进程的加快,图书馆的工作重心开始向数字信息的描述、管理和服务转移。

利用现代信息技术将更多的特色资源和常用资源数字化,通过DC 元数据的应用,可以对知识资源实现横向和纵向整合,通过建立DC、MARC 等多种元数据的关联,并以XML 结构的RDF 资源描述体系封装整合多种元数据,实现对数字资源的综合整合,最终实现文本、图像、音频、视频等不同媒体,图书、期刊、会议录、学位论文等不同类型,书目、文摘、索引、引文、综述、评论、全文等不同级次资源的链接,建立起文献、机构、人物等科学研究所需的知识元素之间的联系和整合,从而形成知识因子的有序化,使知识的条目、事件、来源线索等相关信息形成有机的联系,成为具有特定知识结构功能的知识仓库。

1.爬虫系统性能优化技术研究上海交通大学叶允明等的国家自然科学基金重大国际合作研究项目“Igloo 分布式爬虫系统的性能优化”研究介绍了一个大型的分布式爬虫系统Igloo1. 2 版所采用的性能优化的措施。

1.1高速通信与优雅爬行的折中问题提出:1)Web 资源的海量性,用15 天爬行全部网页的30 %(约10 亿个网页) 对“网络爬虫(Crawler) ”是巨大的挑战,如何在一个有效的时间内完成一次爬行互联网的任务?2)Web 服务器同时有许多TCP 链接或在很短时间内下载大量的数据给服务器造成很大的负担,服务器将拒绝Crawler 访问,如何不影响Web 服务器和网络正常运行?3) 分布式Crawler 中有大量的线程并行爬行,要同时访问DNS 服务器以对URL 进行域名解释,会给DNS 服务器造成很大的负载并可能导致它无法响应。

解决方案:1) Igloo 分布式爬虫系统采用多机并行工作,它由多个爬虫组成,每个爬虫分布在不同的计算机上各自承担一部分网页的爬行任务,协同完成工作;系统采用多线程机制,让每个爬虫启动多线程并发的网页爬行,提高爬行速度。

2) 系统内设置一台主机担任任务协调器,协调器采用哈希分配算法为每个爬虫分配爬行的URL范围,确保每个爬虫根据分配策略均衡快速爬行。

3) 系统通过DNS 缓存机制来解决:DNS 解析器在解析URL 时,首先在本地的DNS 缓存中查找,如果找不到才转发给DNS 服务器,否则直接将缓存中的DNS 解析项返回。

系统同时设计一个具有超时控制的DNS 解析器,保证DNS 解析的高效性。

1.2 URL 数据库快速存取问题提出:系统瓶颈的另一个因素是URL 数据库的存取操作,它关系到用户检索的响应速度。

URL 数据库是以Trie 数据结构实现的,Trie 是一种快速索引的数据结构,而检索速度与URL 长度有关。

但URL 数据结构无法全部存储在内存之中。

解决方案:URL 数据库存取算法采用基于“滞后合并策略”,即URL 存取操作在内存中完成,使URL 存取客户不会因为磁盘I/ O 而阻塞,当该数据结构占用的内存空间超过一定的大小或每隔一定的周期,才启动一个线程将该内存驻留的Trie 与磁盘文件中存储的Trie 数据结构进行合并,在合并时进行URL 的检索比较和插入。

系统采用磁盘和内存交换的方式存取大数据结构的策略,保证Crawler 搜索到的百万级以上的数量级的URL 存取的高性能,URL 的内存命中率将近100 % ,同时也避免了DNS 服务器负载过重。

Web Crawler 是搜索引擎和Web 信息检索系统的基础,也是Web 挖掘中的模式抽取、链接分析等研究的必要前提。

Crawler 系统Igloo1. 2 版采用分布式的系统结构,设计二级哈希映射算法对URL 进行高效分配;采用有效的性能优化方法保证爬行的同时不影响Web 服务器和网络的正常运行,目前Igloo系统作为Luka 搜索引擎的信息收集代理已正常运行了近两年,系统进一步完善研究仍在进行中。

2.高级文件搜索引擎核心技术研究文件搜索引擎作为专业网络资源门户的搜索工具越来越受重视,其技术发展也日新月异,北京大学计算机科学系陈华等研究的国家985 项目,介绍“天网文件搜索引擎”从简单的FTP 搜索引擎发展成具有强大功能的高级文件搜索引擎的技术和方法。

早期的FTP 搜索引擎功能项比较简单,仅支持一些简单的操作,查询结果一般以换页方式显示。

目前搜索引擎基本上可以实现指定站点的站内文件结果排序,以及在排序分类目录中二次查询。

“天网文件搜索引擎”提供更加强大的搜索功能,介绍如下:2.1 字符串匹配的扩展问题提出:早期搜索引擎可以实现字符串匹配功能,但对于大数据量请求,仍然影响搜索速度。

解决方案:字符串匹配扩展可以增加搜索速度。

以用户的查询串作为标签,把匹配结果建索引表,同时将索引表有时间限制地保存在文件Cache 中。

再次查询时,可以先直接在Cache 中查看是否命中。

该方案使再查询变得十分简便。

以此逻辑,还可以将“子查询字符串+ 父查询字符串”作为标签进行保存。

2.2 属性过滤的扩展问题提出:文件属性和路径信息是一种非结构化数据,不能与时间等结构化的数据混在一起保存。

解决方案:属性过滤的扩展可以实现文件分类与站内查询。

1) 将文件格式按文件扩展名进行分类,如图像(jpg、gif 、bmp. . . ) 、声音(mp3、wav、cda. . . ) 、视频、压缩、文档、程序、源代码、目录、其他等,将其归属的所有扩展名统统集合在对应属性之下,建立文件类型库,以此解决非结构数据的文件类别过滤问题。

只要文件属性中的站点IP 与用户要求的IP 相同,则属性过滤通过。

2) 建立两种搜索模式:简单搜索模式:属性过滤仅对文件类型和站点IP ;复杂搜索模式:属性过滤还包括文件大小、文件最后修改时间、精确匹配等较少用的操作。

该方案区分不同请求的用户而建立的对应搜索模式,无疑加快了搜索速度,缩短显示结果的时间。

2.3 查询结果优化排序解决方案:1) 在现成的查询结果排序算法如快速排序、堆排序中加一个参数,解决同一个算法的各个不同属性间的排序,实现查询结果灵活、多种的优化排序。

2) 排序工作必须放在属性过滤之前,其服务器流程是:获得用户查询参数- 用户查询串与文件名字符串匹配(包括Cache 命中检测) - 结果排序- 属性过滤- 结果输出。

2.4 输出结果的优化选择解决方案:1) 智能式换页方案:将输出结果当前的起始显示项号对应的链接放在系统链接表中,以最大显示项数为间距生成有限个向前和向后的链接,实现用户保持鼠标不动情况下以相同间距的翻页。

智能式换页中的CGI 程序向服务器提供起始显示结果号和每页的最大显示项数,然后经过服务器过滤,将可显示的结果信息返回给CGI ,这样大大的减少网络流量,降低运算代价。

2) 使用模板技术:新的模板技术将算法与界面分离,该方法使得搜索结果界面更为灵活,已实现提供中文简体、繁体,英文3 个版本。

2.5 支持分布搜集和分布搜索问题提出:处理大用户量请求和搜集范围的扩大。

解决方案:1)将收集数据和查询服务分离,不影响用户的查询结果界面。

2)均衡多个查询服务器的查询负载。

2.6 外挂在线分析系统问题提出:FTP 站点的不稳定性,如何让用户在查询时既不影响查询速度,又能了解站点链接情况?解决方案:1) 应用外挂的在线分析系统。

系统每5 分钟扫描所有站点,记录站点链接情况,对不在线的站点列表索引;查询服务器每10 分钟链接到外挂的已经按IP 顺序排列的系统中获得列表并输出站点是否链接的结果。

2) 将输出的结果按IP 属性存放在Cache 中,以便减少判断IP 是否在线工作的时间。

2.7 外挂分类目录列表问题提出:一方面,搜索引擎如果只提供一个输入框和一大堆复杂的表单对于普通用户会不知所措;另一方面,用户搜索的关键词十分有限,搜索请求经常无法返回。

解决方案:1) 搜索引擎建立文件分类目录。

分类目录可以较准确地对应查询结果,系统在每个分类目录中,保存常用的快捷方式,用户应用查询快捷方式获取查询结果。

2) 系统提供自动的快捷方式与文件分类相结合功能。

当快捷方式增多时,系统自动进行两级分类,第一级分类与文件格式分类类似,如电影、音乐、程序等;第二级分类将上述类别再次按内容分类,如电影之下又分:动作片、言情片、侦探片等。

上述方法既提高用户查询的精确度,又确保查询速度。

相关文档
最新文档