论文部分内容阅读
随着技术的进步,知识的积累,越来越多的丰富资源不断地被加入到网络中,使得通过网络就可访问的数据量呈现巨大的增长。尤其是在近一二十年的时间内,随着各种商业应用的广泛推广,各种各样的大型数据库建立起来。银行、商店、学校、学术机构、政府、媒体、图书等等,通过互联网,人们能查到几乎所有领域的信息。由于信息的复杂多样,使得整个Web看似杂乱无章,但如果按这些信息可被访问的途径,可以将其划分为Surface Web(浅层网络)和Deep Web(深层网络)两个部分。一般来说,Surface Web是指那些有固定的超链接地址,能被传统搜索引擎索引或者通过其他页面访问到的静态网页的集合。而Deep Web是指网络中不能被传统搜索引擎索引到的那部分内容,尤其是指那些实时产生的动态页面,如利用JavaS cript等脚本语言动态产生内容的页面。据研究,Deep Web中蕴藏着海量高质量数据,为了能够充分利用这些宝贵的数据资源,以对其进行深入的分析和挖掘,我们必须获取这些高质量的数据。对Deep Web的数据获取过程也是数据集成过程的第一步,其他两个步骤分别为数据抽取和数据整合。数据获取的主要任务就是限定某一特定领域,发现尽可能多的数据源,在对所获取的数据源进行科学评估后,选择优质的数据源,然后,最大限度地获取这些优质数据源中的数据。本文主要针对基于搜索引擎的Deep Web数据源发现与选择中的三个问题展开研究:1.在发现Deep Web数据库查询接口页面时,如何构建高相关性的关键词集合并向搜索引擎提交有效的查询,使得含有Web数据库的页面尽可能多地出现在查询结果中,并使其排名尽量靠前。2.发现Deep Web查询接口页面后,通过观察可以发现,页面中一般有多个查询接口,传统的搜索引擎接口、元搜索接口和Web数据库的查询接口都在同一个页面上。根据对汽车网站的观察,有的页面上甚至有七八个不同功能的查询接口。如何从众多接口中识别出我们需要的Web数据库查询接口,进而抽取出查询接口,需要更加有效的方法。3.由于Deep Web数据源数量多、内容广泛、数据量巨大,所以,如果在本地建立完整的可用数据库将是一项耗费巨大人力、物力、财力的工程,并且,Deep Web数据源数据更新速度快,建立本地数据库后需要不定期地进行更新操作。由于我们是通过查询接口来获取数据的,所以,更新操作并不能自定义时间段来获取我们想要的特定数据,因而,更新操作也会带来很多问题。鉴于此,我们提出在本地建立一个Deep Web数据源的样本库,定期从Deep Web数据源中获取一定量的样本来描述这个数据源的数据。在取样时,如何选取最具有代表性的关键字作为查询词来获取数量大、分布均匀的数据是一个亟待解决的问题。针对研究中发现的以上问题,本文对基于搜索引擎的Deep Web数据源的发现和选择的问题展开研究,提出了基于源代码的页面分块算法,提出了一种构建高相关性关键词集合的方法,并充分利用这些关键词来对数据进行采样,并对采样效果进行分析,计算出其偏差。主要工作和成果概括如下:1.提出了一种构建高相关性关键词集合的方法,充分利用知识关联网络的概念,从本地数据库中提取出领域内的文献资料,在对信息进行处理后,得到一个基于图的关键词关联网络,其中,各个关键词具有相应的权重。2.提出一种面向领域的Deep Web查询接口自动发现方法。通过对网页源代码、页面视觉信息进行综合利用,来确定一个页面中的Deep Web查询接口。使用页面块分割算法来将页面分成几个不重叠的区域,然后对代码进行分析,来发现其中的接口,再利用面向领域的关键字来向服务器提交查询,通过对返回结果进行分析来确定真正的Deep Web查询接口。3.提出一种基于关键词的查询接口的Deep Web数据源采样方法,使采样过程不再仅限于查询接口中的范围属性,而是引入了更加灵活的关键词属性,解放了查询接口对属性表达形式的限制,有效地从Deep Web数据源中获得近似随机的高质量数据样本。