搜索引擎 信息检索实践

前沿拓展:

搜索引擎 信息检索实践

信息检索不等于搜索引擎。互联网的发展明显地促进了信息检索技术的发展和应用,一大批搜索引擎产品诞生,为网民提供了很好的快速信息获取和网络信息导航工具,但是将信息检索等同于使用搜索引擎就陷入了误区。搜索引擎技术中也普遍采用了全文信息检索技术,但互联网信息搜索和企业信息搜索是不同的。一是数据量。传统信息检索系统一般索引库规模多在GB级,但互联网网页搜索需要处理几千万上亿的网页,搜索引擎的基本策略都是采用检索服务器群集,对大多数企业应用是不合适和不必要的,并不适用于企业应用。二是内容相关性。信息太多,查准和排序就特别重要,Google等搜索引擎发展了网页链接分析技术,根据互联网上网页被连接次数作为重要性评判的依据。但企业网站内部的网页链接由网站内容采编发布系统决定,其链接次数存在偶然因素,不能作为判别重要性的依据。真正的企业应用的检索要求基于内容的相关性排序,就是说,和检索要求最相关的信息排在检索结果的前面,链接分析技术此种排序基本不起作用。三是实时性。搜索引擎的索引生成和检索服务是分开的,周期性更新和同步数据,大的搜索引擎的更新周期需要以周乃至月度量;而企业信息检索需要实时反映内外信息变化,搜索引擎系统机制并不能适应企业中动态性数据增长和修改的要求。四是安全性。互联网搜索引擎都基于文件系统,但企业应用中内容一般均会安全和集中地存放在数据仓库中以保证数据安全和管理的要求。五是个性化和智能化。由于搜索引擎数据和客户规模的限制,相关反馈、知识检索、知识挖掘等计算密集的智能技术很难应用,而专门针对企业的信息检索应用能在智能化和个性走得更远。(InformationRetrieval),通常指文本信息检索,包括信息的存储、组织、表现、查询、存取等各个方面,其核心为文本信息的索引和检索。从历史上看,信息检索经历了手工检索、计算机检索到目前网络化、智能化检索等多个发展阶段。目前,信息检索已经发展到网络化和智能化的阶段。信息检索的对象从相对封闭、稳定一致、由独立数据库集中管理的信息内容扩展到开放、动态、更新快、分布广泛、管理松散的Web内容;信息检索的用户也由原来的情报专业人员扩展到包括商务人员、管理人员、教师学生、各专业人士等在内的普通大众,他们对信息检索从结果到方式提出了更高、样化的要求。适应网络化、智能化以及个性化的需要是目前信息检索技术发展的新趋势。信息检索技术的热点◆智能检索或知识检索传统的全文检索技术基于关键词匹配进行检索,往往存在查不全、查不准、检索质量不高的现象,特别是在网络信息时代,利用关键词匹配很难满足人们检索的要求。智能检索利用分词词典、同义词典,同音词典改善检索效果,比如用户查询“计算机”,与“电脑”相关的信息也能检索出来;进一步还可在知识层面或者说概念层面上辅助查询,通过主题词典、上下位词典、相关同级词典,形成一个知识体系或概念网络,给予用户智能知识提示,最终帮助用户获得最佳的检索效果,比如用户可以进一步缩小查询范围至“微机”、“服务器”或扩大查询至“信息技术”或查询相关的“电子技术”、“软件”、“计算机应用”等范畴。另外,智能检索还包括歧义信息和检索处理,如“苹果”,究竟是指水果还是电脑品牌,“华人”与“中华人民共和国”的区分,将通过歧义知识描述库、全文索引、用户检索上下文分析以及用户相关性反馈等技术结合处理,高效、准确地反馈给用户最需要的信息。◆知识挖掘目前主要指文本挖掘技术的发展,目的是帮助人们更好的发现、组织、表示信息,提取知识,满足信息检索的高层次需要。知识挖掘包括摘要、分类(聚类)和相似性检索等方面。自动摘要就是利用计算机自动地从原始文献中提取文摘。在信息检索中,自动摘要有助于用户快速评价检索结果的相关程度,在信息服务中,自动摘要有助于多种形式的内容分发,如发往PDA、手机等。相似性检索技术基于文档内容特征检索与其相似或相关的文档,是实现用户个性化相关反馈的基础,也可用于去重分析。自动分类可基于统计或规则,经过机器学习形成预定义分类树,再根据文档的内容特征将其归类;自动聚类则是根据文档内容的相关程度进行分组归并。自动分类(聚类)在信息组织、导航方面非常有用。◆异构信息整合检索和全息检索在信息检索分布化和网络化的趋势下,信息检索系统的开放性和集成性要求越来越高,需要能够检索和整合不同来源和结构的信息,这是异构信息检索技术发展的基点,包括支持各种格式化文件,如TEXT、HTML、XML、RTF、MSOffice、PDF、PS2/PS、MARC、ISO2709等处理和检索;支持多语种信息的检索;支持结构化数据、半结构化数据及非结构化数据的统一处理;和关系数据库检索的无缝集成以及其他开放检索接口的集成等。所谓“全息检索”的概念就是支持一切格式和方式的检索,从目前实践来讲,发展到异构信息整合检索的层面,基于自然语言理解的人机交互以及多媒体信息检索整合等方面尚有待取得进一步突破。另外,从工程实践角度,综合采用内存和外部存储的多级缓存、分布式群集和负载均衡技术也是信息检索技术发展的重要方面。随着互联网的普及和电子商务的发展,企业和个人可获取、需处理的信息量呈爆发式增长,而且其中绝大部分都是非结构化和半结构化数据。内容管理的重要性日益凸现,而信息检索作为内容管理的核心支撑技术,随着内容管理的发展和普及,亦将应用到各个领域,成为人们日常工作生活的密切伙伴。信息检索起源于图书馆的参考咨询和文摘索引工作,从19世纪下半叶首先开始发展,至20世纪40年代,索引和检索成已为图书馆独立的工具和用户服务项目。随着1946年世界上第一台电子计算机问世,计算机技术逐步走进信息检索领域,并与信息检索理论紧密结合起来;脱机批量情报检索系统、联机实时情报检索系统相继研制成功并商业化,20世纪60年代到80年代,在信息处理技术、通讯技术、计算机和数据库技术的推动下,信息检索在教育、军事和商业等各领域高速发展,得到了广泛的应用。Dialog国际联机情报检索系统是这一时期的信息检索领域的代表,至今仍是世界上最著名的系统之一。搜索引擎工作流程互联网是一个宝库,搜索引擎是打开宝库的一把钥匙。然而,绝大多数网民在搜索引擎的相关知识及使用技巧上能力不足。国外的一次调查结果显示,约有71%的人对搜索的结果感到不同程度的失望。作为互联网的第二大服务,这种状况应该改变。互联网的迅速发展,导致了网上信息的爆炸性增长。全球目前的网页超过20亿,每天新增加730万网页。要在如此浩瀚的信息海洋里寻找信息,就像“大海捞针”一样困难。搜索引擎正是为了解决这个“迷航”问题而出现的技术。搜索引擎的工作包括如下三个过程:1.在互联中发现、搜集网页信息;2.对信息进行提取和组织建立索引库;3.再由检索器根据用户输入的查询关字,在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并将查询结果返回给用户。发现、搜集网页信息需要有高性能的“网络蜘蛛”程序(Spider)去自动地在互联网中搜索信息。一个典型的网络蜘蛛工作的方式,是查看一个页面,并从中找到相关信息,然后它再从该页面的所有链接中出发,继续寻找相关的信息,以此类推,直至穷尽。网络蜘蛛要求能够快速、全面。网络蜘蛛为实现其快速地浏览整个互联网,通常在技术上采用抢先式多线程技术实现在网上聚集信息。通过抢先式多线程的使用,你能索引一个基于URL链接的Web页面,启动一个新的线程跟随每个新的URL链接,索引一个新的URL起点。当然在服务器上所开的线程也不能无限膨胀,需要在服务器的正常运转和快速收集网页之间找一个平衡点。在算法上各个搜索引擎技术公司可能不尽相同,但目的都是快速浏览Web页和后续过程相配合。目前国内的搜索引擎技术公司中,比如百度公司的网络蜘蛛采用了可定制、高扩展性的调度算法使得搜索器能在极短的时间内收集到最大数量的互联网信息,并把所获得的信息保存下来以备建立索引库和用户检索。索引库的建立关系到用户能否最迅速地找到最准确、最广泛的信息,同时索引库的建立也必须迅速,对网络蜘蛛抓来的网页信息极快地建立索引,保证信息的及时性。对网页采用基于网页内容分析和基于超链分析相结合的方法进行相关度评价,能够客观地对网页进行排序,从而极大限度地保证搜索出的结果与用户的查询串相一致。新浪搜索引擎对网站数据建立索引的过程中采取了按照关键词在网站标题、网站描述、网站URL等不同位置的出现或网站的质量等级等建立索引库,从而保证搜索出的结果与用户的查询串相一致。本文来自CSDN博客,转载请标明出处:4579795.aspx


摘要:随着云计算技术的飞速发展,海量信息分散存储在“云存储”结构中,由于数据源异构,在对其进行信息检索时易出现数据丢失或迷路现象。本文通过对异构数据进行分析,构建了一种云计算环境下的异构数据集成模型,共包括五个功能模块:云结构下的数据采集与分析接口、数据组织任务调度引擎、异构数据集成接口、云存储和资源管理和安全管理模块。本文还介绍了异构数据资源统一检索定位的常用技术,如并行检索技术、服务器集群检索技术、网页的深层挖掘技术和检索数据库共享技术。

快速云:基于云计算的信息检索定位研究

1引言

云计算是近年来提出的一种计算模型,到目前为止,业界对云计算还没有统一的定义,常见的定义主要包括以下几种:

(1)维基百科的定义:云计算以服务的形式提供给用户IT相关的能力,允许用户在不了解服务所需的技术、无需知识背景和设备操作能力的基础上,通过互联网获取所需的服务。

(2)中国云计算网的定义:云计算是分布式计算、并行计算和网格计算的发展,换句话说,云计算是这些科学概念的商业化实现。

(3)文献通过综合分析,提出如下定义:云是一个资源池,包含了大量可用的虚拟资源,如硬件、I/O服务、开发平台等。这些虚拟资源可根据不同的负载进行动态重新配置,以达到更高的资源利用率。

根据以上定义,云计算技术的基本特征可以归纳如下:

(1)云计算系统提供服务:服务机制对用户是透明的,用户不需要了解云计算的具体机制,就可以获得所需的服务。

(2)通过冗余方式实现可靠性:云计算系统通过数据冗余和分布式存储方式确保数据的可靠性,而不需要特定的硬件组件的支持。

(3)高可用性:云计算可以提供高质量的服务,具有集成的海量存储和高性能的计算能力。云计算系统能够在不影响系统运行的情况下,自动检测故障节点并将其删除。

(4)高层次编程模型:云计算系统提供高层次的编程模型,用户仅通过简单的学习即可编写云计算程序,并在“云”系统上运行,以满足他们的需求,目前的云计算系统主要使用Map-Reduce模型。

(5)价格低廉:由大量商用计算机组成集群的成本远低于性能相同的超级计算机的成本。

(6)服务多样性:用户可以根据自己需求选择不同级别的服务,为其支付不同的费用。

2云计算对信息检索的影响

传统的搜索引擎存在着存储容量不足、计算能力有限、硬盘损坏或老化、服务器昂贵、维护成本高、故障检测速度慢等问题,“云计算”的出现改变了互联网的服务模式,也给信息检索技术带来了巨大的变化。云计算平台将单个服务器连接成一个“云”,每个服务器成为云中的一个节点,从而形成了检索成本低、检索速度快、信息资源利用率高的信息检索系统。

云计算技术对信息检索的影响主要表现在检索模式和存储模式两个方面:

2.1检索模式的改变

传统的信息检索主要采用集中式串行检索模式,检索系统覆盖范围有限,检索效率较低,且一旦在某些环节出现差错就会影响整个检索过程和结果。云计算技术应用了分布式并行计算模式,连接了地理分散、完成特定功能的子系统,系统中的每个节点都可以是并行计算机。信息检索由多台服务器并行执行,大大提高了运算速度,可以处理海量数据。

2.2存储模式的改变

云计算应用“云存储”模式,收集网络中的存储设备并通过应用软件协同工作,提供了数据存储和业务访问功能。云存储由存储层、管理层、应用接口层和访问层构成,将以往孤立的存储方式转变为集中管理。以前的数据主要存储在信息提供者的服务器上,而云存储提供商则向集中数据中心的用户提供数据存储服务,用户可以通过终端软件访问存储数据。由于数据源异构,在对其进行信息检索时易出现数据丢失或迷路现象。针对这一问题,本文构建了云计算环境下异构数据集成模型,提出了异构数据资源统一检索常用技术。

3云计算环境下的异构数据集模型

本文提出的异构数据集成模型可以智能地集成各种关系型和非关系型异构数据,满足海量数据并发性高、工作量大、速度快等查询要求。该系統模型共包括五个功能模块,逻辑框架如图1所示。

3.1云结构下的数据采集与分析接口

云结构下的数据采集和分析接口是该模型统一的内部调用接口,实现用户查询请求分析和结果显示。对于分布式数据库、传统的关系数据库和NoSQL数据库系统,该模型支持统一定制查询请求以满足不同类型的数据查询需求。用户可以通过自定义shell接口和标准SQL接口提交用户数据来访问并分析请求。通过统一接口调用请求描述、解释命令、重写查询请求、调用下层异构数据集成接口,最后返回用户所需的数据并得到分析结果。这一模块的关键技术是云计算环境下的自定义数据采集与分析命令解释模块。

3.2数据组织任务调度引擎

该模块实现上层数据获取与用户查询任务相关的逻辑操作,分为查询任务管理和查询用户管理两个模块,该引擎调用下层异构数据集成接口,对子任务集进行数据查询和处理,通过数据采集、分析控制用户管理模块、分析任务管理模块监控用户的运行和状态管理模块。

3.3异构数据集成接口

该模块用于异构数据集成,是整个模型的核心,它将上层分布式数据采集和分析执行引擎的原子操作(包括数据源、操作和访问数据)执行到存储引擎服务接口,并整合各种异构数据语义映射到异构数据,将结果返回上层。该模块的关键技术是异构数据的语义映射集成、异构数据格式的集成和异构数据的结果集成。

3.4云存储和资源管理

该模块是整个模型的基础,为云计算环境下的数据和资源管理技术提供灵活的数据存储、管理和系统资源配置技术,具有高并发性、高工作负载、海量数据存储和查询功能。它为分布式数据库、传统的关系数据库和NoSQL数据库系统提供了统一的服务管理和数据访问功能,实现对其他层的调用。这模块的关键技术是云计算的元数据和服务管理技术。

3.5安全管理模块

这一模块确保系统的安全服务,实现授权管理、用户认证和日志管理等功能。

4基于异构数据资源的统一检索常用技术

异构数据资源通过整合数据库通用过程提供用户检索结果,降低检索时间,提高检索精度。常用的统一检索定位技术包括:

4.1并行检索技术

并行检索应考虑多用户检索和用户同时检索几个数据库的场景,一般应用多线程技术:

(1)对于多用户检索场景,根据请求的任务分配机制,将每个用户的检索任务分配给一个线程,该任务分配机制需考虑服务器的负载平衡,控制线程数量。

(2)对于用户检索多个数据库场景,根据检索数据库分配机制,为用户每次检索请求创建一个数据库检索线程,提高检索速度。

4.2服务器集群检索技术

由于网络带宽所限,某些用户访问Web的检索请求可能失败,会给服务器带来很大压力。因此,应用多服务器共享服务器的压力,可提高检索并发性。在服务器集群检索技术的设计中需要考虑两点:

(1)检索服务器的分布:检索服务器可以分布在任何连接到互联网的服务器上,并公布配置参数和数据库配置文件。考虑到数据统一性和维护方便性,所有检索服务器的临时数据库最终指向同一数据库服务器。

(2)提交Web服务器的用户检索请求:系统中有很多服务器,为了更好地利用系统资源,Web将检索请求提交给占用最少的服务器,以实现工作负载平衡。

基于这些考虑设计的服务器集群检索技术能够极大地提高系统稳定性,特别是随着检索服务器的增加,并发性大大增加,服务器集群检索优势更为显著。

4.3网页的深层挖掘技术

网页的深层挖掘技术是从海量数据中挖掘隐藏的规则内容,解决数据应用中的质量问题。异构数据资源统一检索系统是从不同的Web服务器获取相应的数据,主要通过模拟操作实现日志检索和数据提取。该系统主要通过微软IE内核库文件实现,包括WebBrowser对象、MSHTML对象和配置文件。

4.4检索数据库共享技术

资源共享可以最大限度地减少管理员的重复性和难度。一方面,由于不同的组织可能具有相同的资源,在定义数据库模板之后,其他用户可以使用此模板添加相同的数据库,这样管理员只需導人一个SDA文件,不需要太多的重复工作。另一方面,数据库配置的配置是专业的,系统管理员很难配置数据库。因此简化管理员的工作成为一项紧迫的任务。一般来说,配置手动定义一个数据库,生成为SDA文件URS管理平台,发布在公共网站上下载或直接发送给用户,让用户添加数据操作更加准确、简单。

5结论

本文讨论了云计算环境下的信息检索定位技术,具有许多明显的优点:

(1)成本低:基于云计算的信息检索将数据管理任务分配给特定的数据管理中心,减少了硬件和软件的输入,从而降低了成本。

(2)可用资源多:不同的检索提供者将其数据源放入统一的云数据中心,通过协作和资源共享,使可用资源成倍增加。

(3)检索速度快:云计算应用分布并行技术,解决了CPU速度受限问题,显著提高了信息检索速度。

然而,该技术在云安全、知识产权、用户认证和可靠性等关键问题上还存在一些亟待解决的问题。

拓展知识: