基于wdb特征和用户查询请求的web数据库选择方法

文档序号:6597977阅读:229来源:国知局

专利名称::基于wdb特征和用户查询请求的web数据库选择方法
技术领域
:本发明涉及一种计算机应用技术或Web数据管理及DeepWeb等研究领域,具体地说是一种基于WDB特征和用户查询请求的WEB数据库选择方法。
背景技术
:随着Web数据库的广泛应用,Web正在加速地“深化”。DeepWeb中蕴藏了更加丰富、“专业”(专注于某一领域)的信息,其数据量也在成倍增长。因此,实现对De印Web中信息的检索和利用已成为当前数据库领域研究的热点之一。为了使用户能够有效地利用DeepWeb中的海量信息,研究者们展开了对De印Web数据集成的研究,即建立一个De印Web数据集成系统。该系统可以为用户提供一个集成查询接口,并把各个Web数据库返回的结果合并到一个统一的模式下。至今,在该研究领域已经取得了若干成果,比如查询接口集成、Web数据库的分类、Web数据的抽取等。由于De印Web的规模巨大,使得DeepWeb数据集成系统中会集成上百甚至上千个Web数据库,极大地超过了传统数据集成系统中数据源的数量。同时,由于对Web数据库的访问只能通过其提供的查询接口,如果对数据集成系统中的所有Web数据库进行逐个检索,不仅会产生很多无效的检索,降低系统的效率,同时也可能会返回大量重复数据,为后期的数据处理增加了复杂度。例如针对用户的某个查询请求(1)有些Web数据库并不满足该查询,无须对其查询;(2)有些Web数据库之间存在着较大的冗余,只需选择其中1个或几个查询。因此,为了提高系统的工作效率,需要针对用户的查询请求选择合适的数据库进行查询,即选择满足如下条件的Web数据库进行查询(1)与用户查询请求相关。为满足该条件,可以借鉴传统搜索引擎的做法,生成Web数据库的特征。由于用户查询是基于Web数据库提供的查询接口进行的,因此该特征库的建立需要结合查询接口的相关特征。获取Web数据库特征后,通过构造基于用户查询请求与Web数据库特征的相关度算法计算当前查询请求与Web数据库的相关度;(2)返回的有效数据尽可能多。为满足该条件,最好的方案是针对每一个Web数据库和用户的每个查询请求,都能得到一个反映数据库可能返回的数据量大小的数据,以便获取各Web数据库针对本次查询返回的数据量对比;与此相对应,理想情况下,需要在Web数据库的特征中添加能够反映针对每个查询请求可能返回的数据量(或数据百分比)的特征;(3)选择的各数据库之间的冗余尽可能小。为满足该条件,需要能够基于Web数据库的特征建立同类数据库之间冗余度矩阵。综合以上分析,需要建立一个基于Web数据库查询接口的Web数据库特征表示机制;并且基于该特征,可以方便地计算当前用户查询请求与该数据库之间的相关度、可能返回的数据量以及针对当前请求的不同数据库之间的冗余度。然而,要获取Web数据库的特征,必然要基于该数据库的真实数据或提取一定的数据样本,Web存在大量的数据源,信息冗余问题非常严重,如何解决信息冗余、做好记录去重成为信息集成成败的关键。若可以通过较少的数据源,找到领域全集,则可以有效减轻信息冗余问题的困扰。选择一个好的数据源选择算法显得尤为重要,过去十年间,已经出现了很多数据源选择算法,包括GLOSS、gGlOSS/vGLOSS.CORI等。其中CORI算法中,数据源的特征表示包括term及其对应的词频。同时Ipeirotis等提出了基于主题分类的数据源选择算法,该方法将所有的待选数据源依照已有的主题层次进行分类,相同分类主题的数据源所对应的近似内容摘要描述通常很相似,但是同一个术语很可能在一个数据源中是低频术语,而在另一个数据源中是高频的。因此,可以使用具有相同分类主题的数据源的近似内容摘要来互相补充,获得术语的覆盖度更好的近似内容摘要描述。以上工作为web数据库的选择奠定了基础,通过应用合适的数据源选择算法找到冗余度低的数据源。但是近年来,用户个性化研究是信息检索领域的热点问题,同样数据库提供的信息应尽可能满足用户的需求,且不同的数据类型有不同的特征表示与抽取方法。Web数据库查询接口一般是用HTML表示的网页表单,其中包含Web数据库查询接口的重要属性信息。一般来说,常用的查询接口输入形式一般有如下两类(1)用户直接在表单输入框中输入关键字或日期、数字等值,如Text,TextArea;(2)用户在下拉列表中选择一个值,如Select、Checkbox、Radiobutton。同时,用户通过网页表单提交的数据类型一般可归纳为文本、数字和日期三种类型。综合以上两种情况,将WDB查询接口提交的数据类型分为文本型数据、数值型数据、日期型数据和分类型数据。由于日期型数据和数值型数据都具有连续性特点,因此统一归并为数值数据;其它离散型数据按分类属性处理。
发明内容本发明给出了一种针对Web数据库查询接口中各种数据类型的、较全面的WDB特征表示与抽取方法,并基于该特征,给出了结合用户查询请求的相似度、返回数据量及冗余度计算方法,并最终提出一种基于WDB特征和用户查询的数据源选择方法。本发明的目的是按以下方式实现的,包括1)WDB查询接口特征抽取方法;2)基于WDB特征的WDB和用户查询的相关度计算;3)满足用户查询的数据量估计;4)基于WDB特征的冗余度估计;5)基于WDB特征和用户查询的数据源的选择方法,具体步骤如下步骤如下1)基于词频的文本型属性的特征表示方法在各种Web数据库查询接口中,包含文本属性的输入字段占有绝对多数,比如图书搜索中的书名、出版社名称、作者,职位搜索中的职位名称、公司名称、职位说明等。这些属性不仅是文本属性,而且由于Web数据库多数都是关系数据库,其中描述的内容多为各种实体,因此这种数据库中的文本属性与普通文档相比,具有自己的特点(I)Web数据库中的文本具有极强的领域相关性,且多为各种实体的名称、属性等,与普通语料库中的文档具有的一般性、普适性相比,更具有自身的领域的特点;(2)Web数据库中的文本多以自然语言中的实体(Entity)为主,大多不属于中文普通词汇的范畴。比如,图书数据库中的“软件工程”一词,虽然“软件”和“工程”是两个普通中文词汇,但他们在语料库中统计出来的词频远远低于计算机类型图书数据库中的词频。因此,借鉴中文文本分类中的文档特征表示方法,给出Web数据库文本特征的表示方法,如(17)式所示。<formula>formulaseeoriginaldocumentpage8</formula>其中,Attrtrart表示一个文本属性,tfjl^i^n)表示第i个词的词频,η为针对文本属性的所有文本分词并去掉停用词后的关键词个数。2)基于正态分布的数值型属性的特征表示方法在Web数据库的查询接口中,数值型属性虽然不多,但也有一定的数量,比如图书搜索的价格、人才网站中的招聘人数等。鉴于数值属性具有的连续性特点,且正态分布具有强大的普适性,采用正态分布的期望和偏差表示数值属性的特征,若查询接口中的某属性对应WDB中的一个字段是数值属性,则可通过其样本数据获取其均值μ和方差O,进而得到数值属性的特征表示如下Attrdata=Ν(μ,σ2)(18)3)基于统计的分类型属性的特征表示方法对于分类属性,采用根据查询接口属性的分类统计样本中同类属性的记录数与总记录数的比值来表示,如(19)式所示。,样本中属于同类别的记录个数dass=样本记朵总数4)Web数据库特征的形式化表示方法基于以上三类属性的表示方法,Web数据库特征的形式化表示方法如(20)式所示,即一个Web数据库的特征Character·是一个特征向量,该向量的每个分量为这个数据库的查询接口的η个属性所对应的WDB字段的特征。Characterwoi3=<Attr1Attr2,...,Attrn>(20)5)基于WDB特征的WDB与用户查询的相关度计算首先确定WDB与用户查询的相关度,其中,Web数据库与用户查询的相关度是指当前用户查询请求与当前Web数据库的相互关联的程度,其取值是0到1之间的值。其值越大,说明当前查询请求与当前数据库越相关。对于用户通过Web查询接口发出的查询请求,给出如(21)式的形式化表示request=(Attr1=key”Attr2=key2,...,Attrn=keyj(21)其中,Attri代表查询接口上的某个属性,key,代表针对当前属性的查询关键字,keyi可能是文本、数字或用户选择的某个类别。针对以上给出的三类属性,分别给出相关度计算的方法。1.文本属性的相关度计算若当前用户对Attri属性所输入的关键字keyi属于文本属性,则首先按照样本数据库的分词方法对keyi进行分词,然后按照(22)式计算该文本属性的相关度。rela<^'^sJz^ords)(22)J其中,relatext表示当前文本属性关键字与Web数据库对应字段的相关度;'f—表示对keyi分词后所得到的某个词的词频;sumfellwords)表示对样本数据中当前字段所有记录分词后的所有词的词频。2.数值属性的相关度计算若当前用户对Attri属性所输入的关键字keyi属于数值属性,由于(18)式中已经得到当前属性的正态分布,则只需将当前数值keyi作为参数代入正态分布函数中,即可获取当前数值keyi相对该正态分布的概率,将该概率定义为数值属性与Web数据库的相关度,如(23)式所示。<formula>formulaseeoriginaldocumentpage9</formula>3.分类属性的相关度计算由于分类属性在执行查询时是按照严格相等的方式执行的,因此定义分类属性的相关度等价于该属性的特征,如(24)式所示。relaclass=Attrclass(24)综上,给出当前查询请求与Web数据库的相关度定义,如(25)式所示。<formula>formulaseeoriginaldocumentpage9</formula>relaKequest=^i^relaam.(其中=1)(25)其中,αi表示第i个查询接口属性的权值,表示第i个属性与Web数据库的相关度。6)满足用户查询的数据量估计理想情况下,如果当前查询请求只有一个查询条件,且能够得到Web数据库的大小size·以及当前查询请求所能够返回数据的百分比Percentatte,则可以很容易得到该查询可能返回的数据量(如26式中的第一个等式所示)。Web数据库大小的估计已有相关的研究工作,对于返回数据的百分比,以当前查询请求与Web数据库特征的相关度作为其近似值,其原因是对数据量估计的目的仅用于对各数据源进行排序。<formula>formulaseeoriginaldocumentpage9</formula>一般情况下,当用户输入多个查询条件时,多个查询条件之间一般是and的关系。但如果以and连接查询返回的数据量较少时,多数数据库将减弱查询条件以返回更多数据。因此,不失一般性,定义满足用户查询的数据量为所有查询条件中,返回数据最多的单个查询条件所返回的数据量,如(27)式所示。Sizerequest=^^WDBx^^{perCentattr.)(27)=sizeWDBx^x(simattr,)7)基于WDB特征的冗余度估计针对用户查询的Web数据库之间的冗余度是指当前用户请求提交后,两个数据库返回的重复数据的数量或百分比。例如,某个查询针对WDB1返回的查询结果中包含Ii1条数据,针对WDB2返回的结果中包含H2条数据,如果其中包含的重复数据个数为H12,则nl2为两个数据库之间的冗余度,或表示为<formula>formulaseeoriginaldocumentpage9</formula>从(28)式看,redundantTOB的值越大,说明当前数据库的冗余度越大,其利用价值越低。而要获得两个数据库之间的冗余度,就要获取当前Web数据库满足当前查询的数据量以及两个数据库返回的重复数据的个数。满足当前查询的数据量已在前文说明,而重复数据的数量虽然可以针对真实数据库或样本数据进行预查询,分别统计返回的数据个数与重复数据个数,但这么做显然工作量太大。比如要判断3个数据库之间的冗余度,每个数据库返回的数据个数平均500个,则要完全判断两两数据库之间的重复数据个数至少要比对3次,每次比对500*500条数据,最坏情况下需比对500*500*3次;而在查询更多数据库、返回更多数据时,将消耗更多的计算机时间。因此,采用基于WDB特征的整体重复度近似表示其数据的冗余度。1.文本属性的冗余度计算对于文本属性,采用Web数据库相同属性中相同关键词的词频总和与该属性所有关键词的词频总和的比值来表示,如(29)式所示。redundanttext(WDBl,WDB2)=∑sameKeys/∑WDB1,text(29)(29)式中,redundanttext(WDBijWDB2)表示WDB1相对WDB2在相同文本属性上的冗余度;sameKeys是指WDB1和WDB2两个数据库中同一文本属性中的相同关键字;WDBJext是WDB1数据库中,当前文本属性的所有关键字;tfi是指关键字i的词频。2.数值属性的冗余度计算在Web数据库的特征表示中,数值型数据被表示成一个正态分布。假设两个WDB的数值属性所对应的正态分布分别是Ν(μαJ和Ν(μ2,σ2),且样本空间中的最小值和最大值分别是mini、maXl、min2和Hiax2,两个正态分布的交叉部分的值为X,则定义两个数值属性的冗余度为两个正态分布的重叠部分所占整体的比例,即min2和maxl之间部分所占各自属性的比例。由于正态分布通过变量替换可以变成标准正态分布,因此直接给出(30)式所示的数值属性的冗余度计算公式。两个数值属性的正态分布如图1所示。redundantdma(WDBhWDB2)刑,广)-尸I(^i)(30)+F2(x-u2/o2)-F2(min2-u2/o2)3.分类属性的冗余度计算基于WDB的特征表示分类属性的冗余度,以两个数据库中当前分类属性中相同类别的个数与当前数据库中的分类总数的比值表示,即redundantclass(WDBl,WDB2)=countofrecordsinsameclass/countofallrecordsinallClassValues(31)综上,给出基于Web数据库特征的冗余度计算公式redundant{WDBx,WDB2)=∑redundantattri(其中^约=丄)(β2)其中,redundant(WDB1,WDB2)表示WDB1相对WDB2的冗余度;βj表示第i个查询接口属性的权值,—r康示第i个属性的冗余度度。8)基于WDB特征和用户查询的数据源选择方法在获取查询相关度、返回的数据量以及冗余度三项数据的基础上,给出基于Web数据库特征和用户查询的数据源选择方法(1)根据获取的Web数据库的样本数据,获取Web数据库的特征,并表示成(20)式的形式;(2)根据用户输入的查询请求,结合Web数据库的特征,计算该请求与所有Web数据库的相关度sInirequesl-;(3)根据相关Simraiuest对所有数据库进行排序,并选择TOPK个数据库作为备选查询数据库,这里记为ChoicedDB1;(4)估计针对当前选择的备选数据库执行查询后的返回结果sizere_st,并去除返回数据量小于N的数据库,并将剩余的数据库记为ChoicedDB2;(5)对ChoicedDB2中的数据库,基于其特征计算两两之间的冗余度,并删除其中冗余度值大于R的数据库。至此,剩下的数据库为针对当前用户查询请求的数据源。本发明的优异效果是从理论分析和实践证明,基于以上过程,最终选择的数据库是与当前查询请求相关、相互之间的冗余尽可能低且每个查询返回的数据量都比较多的数据库。在Web数据集成领域中,能够很好地减少检索的目标数据库的数量,同时并不减少返回的数据量,因此,能够在保证Web数据集成系统返回的数据质量的同时,大大提高系统运行的效率,实现以更小的代价返回更多的数据。图1是两个数值属性的正态分布图。具体实施例方式针对以上描述过程,针对现有网络进行了实际测试和验证,具体步骤如下1.数据准备利用Watir工具按行业属性(分类属性)从互联网上抓取了全国性人才招聘网站智联招聘(www.zhilian.com)、前程无忧(www.51job.com)以及地方性招聘网站大众人才网(www.dazhonghr.com)、齐鲁人才网(www.qlrc.com)等4个网站的包含职位信息(职位名称、招聘人数、工作地区)的样本数据各5000余条(2009年12月份采集),作为方法验证的测试数据。为陈述方便,下文以ZL、QC,DZ和QL四组符号分别代表四个网站。2.抽取Web数据库特征首先针对各网站的文本数据(职位名称)、数值数据(公司规模)和分类数据(工作地区)提取其特征,其结果如表1所示,由于关键词和工作地区较多,只列出数量较多的前5个。从中基本可以看出各网站的主要职位分布、公司规模和工作地区分布。各网站的数据量估计方法采用基于分类属性的估计方法,因为在人才数据库中,一个职位很少会属于两个以上行业。另外,基于以上特征,获得各网站两两之间的冗余度矩阵如表2所示。该表中,第i行、第j列的数据表示第i个数据库相对第j个数据库的冗余度向量,每个分量分别表示文本、数值和分类属性的冗余度。从表2可以看出,各数据库的职位重复较大,结合表1可知职位在分布上的差别;在公司规模上,结合表1容易发现智联的大公司较多、前程无忧与齐鲁人才的中等公司较多、而大众的公司分布较广,各库之间的重复度中等;而在地区分布上,智联和前程的重复度较大、大众和齐鲁的重复度较大。3.基于用户查询的数据库选择获取各数据库特征后,设计了表3所示的4个查询,分别针对本地的样本数据和实际数据库进行查询,并从4个数据库中选择2个最优数据库,以对比本发明方法对数据源的选择结果与人工查询实际数据库的选择结果是否一致。这四个查询条件中,基本覆盖了三类数据属性,且查询3和查询4分别侧重全国性招聘和地方性(山东)招聘。同时,“参数设置”栏对不同α取值情况进行了验证,尤其针对查询3和查询4,各取2组α值进行测试;由于数据库冗余度计算中,并未考虑查询请求,因此对参数β的取值仅取一组值进行验证。根据以上查询条件,分别计算该查询条件与各网站之间的相似度、返回的数据量与冗余度,其计算和执行结果如表4和表5所示。通过实验结果可以看出,本发明提出的数据源选择方法基本符合实际需求。虽然表5中个别数据(第四行)存在不一致,但通过计算得到的结果可以发现,综合指标比较中,QC比DZ具有微弱的优势排名靠前,这也是精确定量比较与人工定性比较的差别,但总体来看,结果基本满足要求。从表5中也可以看出,参数α的不同取值对数据源选择结果的影响,例如针对查询3和查询4的选择结果。其原因从(9)式可以明显看出,不同、取值查询相似度计算结果的影响;同样可以进一步验证参数β对数据源选择的作用。表1各网站的特征抽取结果职位名称公司规模丄作地区~~(有限公司’5883),(销售,2067),(经~(深圳,247),(济南,269),(广州,理,1974),(北京,1922),(科技,1212)’333),(上海,树1),(北京’21恥)(软件,7240),(工程师,6554),(有限公η力(上海,1863),(北京,1300),(深圳,司,6306),(科技,2697),(上海,1709),799),(广州,493),(杭州,355)(有限公司,5162),(济南,1929),(山(、(济南,4032),(滨州,308),(青岛,东,1632),(经理,1121),(科技,1016)U’270),(泰安,211),(东营’147)(有限公司,4923),(济南,1469),(科(32)(济南,2124),(青岛,647),(山东,技,1233),(山东,968),(经理,803)_‘551),(烟台,450),(潍坊,375)表2各网站之间的冗余度分量矩阵<table>tableseeoriginaldocumentpage12</column></row><table>表3实验所用查询条件<table>tableseeoriginaldocumentpage13</column></row><table>表4WDB与用户查询的相似度<table>tableseeoriginaldocumentpage13</column></row><table>表5实验结果<table>tableseeoriginaldocumentpage13</column></row><table>权利要求基于WDB特征和用户查询请求的WEB数据库选择方法,其特征在于,包括1)WDB查询接口特征抽取方法;2)基于WDB特征的WDB和用户查询的相关度计算;3)满足用户查询的数据量估计;4)基于WDB特征的冗余度估计;5)基于WDB特征和用户查询的数据源的选择方法,具体步骤如下1)WDB查询接口特征表示和抽取方法将WDB查询接口提交的数据类型分为文本型数据、数值型数据、日期型数据和分类型数据,其中由于日期型数据和数值型数据都具有连续性特点,因此统一归并为数值数据;其它离散型数据按分类属性处理。(1)基于词频的文本型属性的特征表示在各种Web数据库查询接口中,包含文本属性的输入字段占有绝对多数,包括图书搜索中的书名、出版社名称、作者,职位搜索中的职位名称、公司名称、职位说明,这些属性不仅是文本属性,而且由于Web数据库多数都是关系数据库,其中描述的内容多为各种实体,因此这种数据库中的文本属性具有以下特点①Web数据库中的文本具有极强的领域相关性,且多为各种实体的名称、属性,具有自身的领域的特点;②Web数据库中的文本多以自然语言中的实体Entity为主,大多不属于中文普通词汇的范畴,但他们在语料库中统计出来的词频远远低于计算机类型图书数据库中的词频;因此,借鉴中文文本分类中的文档特征表示方法,给出Web数据库文本特征的表示方法,如以下公式所示Attrtext=<tf1,tf2,...tfn>(1)其中,Attrtext表示一个文本属性,tfi(1≤i≤n)表示第i个词的词频,n为针对文本属性的所有文本分词并去掉停用词后的关键词个数;(2)基于正态分布的数值型属性的特征表示在Web数据库的查询接口中,数值型属性虽然不多,但也有一定的数量,包括图书搜索的价格、人才网站中的招聘人数,鉴于数值属性具有的连续性特点,且正态分布具有强大的普适性,采用正态分布的期望和偏差表示数值属性的特征,即查询接口中的某属性对应WDB中的一个字段是数值属性,则通过其样本数据获取其均值μ和方差σ,进而得到数值属性的特征表示,(2)式如下Attrdata=N(μ,σ2)(2)(3)基于统计的分类型属性的特征表示对于分类属性,采用根据查询接口属性的分类统计样本中同类属性的记录数与总记录数的比值来表示,如以下公式所示(4)Web数据库特征的形式化表示基于以上三类属性的表示方法,即一个Web数据库的特征CharacterWDB是一个特征向量,该向量的每个分量为这个数据库的查询接口的n个属性所对应的WDB字段的特征,Web数据库特征的形式化表示方法,如以下公式所示CharacterWDB=<Attr1,Attr2,...,Attrn>(4)2)基于WDB特征的WDB和用户查询的相关度计算首先确定WDB与用户查询的相关度,Web数据库与用户查询的相关度是指当前用户查询请求与当前Web数据库的相互关联的程度,其取值是0到1之间的值,其值越大,说明当前查询请求与当前数据库越相关;对于用户通过Web查询接口发出的查询请求,如以下公式所示request={Attr1=key1,Attr2=key2,...,Attrn=keyn}(5)其中,Attri代表查询接口上的某个属性,keyi代表针对当前属性的查询关键字,1≤i≤n。keyi是文本、数字或用户选择的某个类别,针对以上给出的三类属性,分别给出相关度计算的方法;其中(1)文本属性的相关度计算若当前用户对Attri属性所输入的关键字keyi属于文本属性,则首先按照样本数据库的分词方法对keyi进行分词,然后按照公式(6)计算该文本属性的相关度;<mrow><msub><mi>rela</mi><mi>text</mi></msub><mo>=</mo><munder><mi>&Sigma;</mi><mi>j</mi></munder><mfrac><msub><mi>tf</mi><msub><mi>word</mi><mi>j</mi></msub></msub><mrow><mi>sum</mi><mrow><mo>(</mo><mi>allwords</mi><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>其中,relatext表示当前文本属性关键字与Web数据库对应字段的相关度;表示对keyi分词后所得到的某个词的词频;sum(allwords)表示对样本数据中当前字段所有记录分词后的所有词的词频;(2)数值属性的相关度计算当前用户对Attri属性所输入的关键字keyi属于数值属性,由于公式(2)中已经得到当前属性的正态分布,则只需将当前数值keyi作为参数代入正态分布函数中,即获取当前数值keyi相对该正态分布的概率,将该概率定义为数值属性与Web数据库的相关度,如以下公式所示;<mrow><msub><mi>sim</mi><mi>data</mi></msub><mo>=</mo><mi>f</mi><mrow><mo>(</mo><msub><mi>key</mi><mi>i</mi></msub><mo>;</mo><mi>&mu;</mi><mo>,</mo><mi>&sigma;</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mi>&sigma;</mi><msqrt><mn>2</mn><mi>&pi;</mi></msqrt></mrow></mfrac><msup><mi>exp</mi><mrow><mo>-</mo><mfrac><msup><mrow><mo>(</mo><msub><mi>key</mi><mi>i</mi></msub><mo>-</mo><mi>&mu;</mi><mo>)</mo></mrow><mn>2</mn></msup><mrow><mn>2</mn><msup><mi>&sigma;</mi><mn>2</mn></msup></mrow></mfrac></mrow></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>(3)分类属性的相关度计算由于分类属性在执行查询时是按照严格相等的方式执行的,因此定义分类属性的相关度等价于该属性的特征,如以下公式所示;relaclass=Attrclass(8)综上,给出当前查询请求与Web数据库的相关度定义,如以下公式所示;<mrow><msub><mi>rela</mi><mi>request</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>&alpha;</mi><mi>i</mi></msub><mo>&times;</mo><msub><mi>rela</mi><msub><mi>attr</mi><mi>i</mi></msub></msub></mrow>(其中)(9)其中,αi表示第i个查询接口属性的权值,表示第i个属性与Web数据库的相关度;3)满足用户查询的数据量估计理想情况下,当前查询请求只有一个查询条件,且能够得到Web数据库的大小sizeWDB以及当前查询请求所能够返回数据的百分比percentattr,则得到该查询可能返回的数据量,如10式中的第一个等式所示,web数据库大小的估计已有相关的研究工作,对于返回数据的百分比,以当前查询请求与Web数据库特征的相关度作为其近似值,其原因是对数据量估计的目的仅用于对各数据源进行排序;如(10)式所示;sizeattr=sizeWDB×percentattr(10)=sizeWDB×simattr一般情况下,当用户输入多个查询条件时,多个查询条件之间一般是and的关系,但以and连接查询返回的数据量较少时,多数数据库将减弱查询条件以返回更多数据,因此,不失一般性,定义满足用户查询的数据量为所有查询条件中,返回数据最多的单个查询条件所返回的数据量,如以下公式所示;<mrow><msub><mi>size</mi><mi>request</mi></msub><mo>=</mo><msub><mi>size</mi><mi>WDB</mi></msub><mo>&times;</mo><munder><mi>max</mi><mi>i</mi></munder><mrow><mo>(</mo><msub><mi>percent</mi><msub><mi>attr</mi><mi>i</mi></msub></msub><mo>)</mo></mrow></mrow>(11)<mrow><mo>=</mo><msub><mi>size</mi><mi>WDB</mi></msub><mo>&times;</mo><munder><mi>max</mi><mi>i</mi></munder><mrow><mo>(</mo><msub><mi>sim</mi><msub><mi>attr</mi><mi>i</mi></msub></msub><mo>)</mo></mrow></mrow>4)基于WDB特征的冗余度估计针对用户查询的Web数据库之间的冗余度是指当前用户请求提交后,两个数据库返回的重复数据的数量或百分比,某个查询针对WDB1返回的查询结果中包含n1条数据,针对WDB2返回的结果中包含n2条数据,其中包含的重复数据个数为n12,则n12为两个数据库之间的冗余度,由以下公式表示为<mrow><msub><mi>redundant</mi><msub><mi>WDB</mi><mn>1</mn></msub></msub><mo>=</mo><msub><mi>n</mi><mn>12</mn></msub><mo>/</mo><msub><mi>n</mi><mn>1</mn></msub><mo>&times;</mo><mn>100</mn><mo>%</mo></mrow>(12)<mrow><msub><mi>redundant</mi><msub><mi>WDB</mi><mn>2</mn></msub></msub><mo>=</mo><msub><mi>n</mi><mn>12</mn></msub><mo>/</mo><msub><mi>n</mi><mn>2</mn></msub><mo>&times;</mo><mn>100</mn><mo>%</mo></mrow>通过以上公式看出,redundantWDB的值越大,说明当前数据库的冗余度越大,其利用价值越低,而要获得两个数据库之间的冗余度,就要获取当前Web数据库满足当前查询的数据量以及两个数据库返回的重复数据的个数,满足当前查询的数据量已在前文说明,而重复数据的数量虽然针对真实数据库或样本数据进行预查询,分别统计返回的数据个数与重复数据个数,但这么做显然工作量太大,而在查询更多数据库、返回更多数据时,将消耗更多的计算机时间,因此,采用基于WDB特征的整体重复度近似表示其数据的冗余度;计算公式如下(1)文本属性的冗余度计算对于文本属性,采用Web数据库相同属性中相同关键词的词频总和与该属性所有关键词的词频总和的比值来表示,如以下公式所示;<mrow><msub><mi>redundant</mi><mi>text</mi></msub><mrow><mo>(</mo><msub><mi>WDB</mi><mn>1</mn></msub><mo>,</mo><msub><mi>WDB</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><munder><mi>&Sigma;</mi><mrow><mi>i</mi><mo>&Element;</mo><mo>{</mo><mi>sameKdys</mi><mo>}</mo></mrow></munder><msub><mi>tf</mi><mi>i</mi></msub></mrow><mrow><munder><mi>&Sigma;</mi><mrow><mi>j</mi><mo>&Element;</mo><mo>{</mo><msub><mi>WDB</mi><mn>1</mn></msub><mo>,</mo><mi>text</mi><mo>}</mo></mrow></munder><msub><mi>tf</mi><mi>j</mi></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>公(29)式中,redundantext(WDB1,WDB2)表示WDB1相对WDB2在相同文本属性上的冗余度;sameKeys是指WDB1和WDB2两个数据库中同一文本属性中的相同关键字;WDB1.text是WDB1数据库中,当前文本属性的所有关键字;tfi是指关键字i的词频。(2)数值属性的冗余度计算在Web数据库的特征表示中,数值型数据被表示成一个正态分布,两个WDB的数值属性所对应的正态分布分别是N(μ1,σ1)和N(μ2,σ2),且样本空间中的最小值和最大值分别是min1、max1、min2和max2,两个正态分布的交叉部分的值为x,则定义两个数值属性的冗余度为两个正态分布的重叠部分所占整体的比例,即min2和max1之间部分所占各自属性的比例,由于正态分布通过变量替换变成标准正态分布,因此直接给出数值属性的冗余度计算公式;如以下公式所示;<mrow><msub><mi>redundant</mi><mi>data</mi></msub><mrow><mo>(</mo><msub><mi>WDB</mi><mn>1</mn></msub><mo>,</mo><msub><mi>WDB</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>F</mi><mn>1</mn></msub><mrow><mo>(</mo><mfrac><mrow><msub><mi>max</mi><mn>1</mn></msub><mo>-</mo><msub><mi>&mu;</mi><mn>1</mn></msub></mrow><msub><mi>&sigma;</mi><mn>1</mn></msub></mfrac><mo>)</mo></mrow><mo>-</mo><msub><mi>F</mi><mn>1</mn></msub><mrow><mo>(</mo><mfrac><mrow><mi>x</mi><mo>-</mo><msub><mi>&mu;</mi><mn>1</mn></msub></mrow><msub><mi>&sigma;</mi><mn>1</mn></msub></mfrac><mo>)</mo></mrow></mrow>(14)<mrow><mo>+</mo><msub><mi>F</mi><mn>2</mn></msub><mrow><mo>(</mo><mfrac><mrow><mi>x</mi><mo>-</mo><msub><mi>&mu;</mi><mn>2</mn></msub></mrow><msub><mi>&sigma;</mi><mn>2</mn></msub></mfrac><mo>)</mo></mrow><mo>-</mo><msub><mi>F</mi><mn>2</mn></msub><mrow><mo>(</mo><mfrac><mrow><msub><mi>min</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&mu;</mi><mn>2</mn></msub></mrow><msub><mi>&sigma;</mi><mn>2</mn></msub></mfrac><mo>)</mo></mrow></mrow>(3)分类属性的冗余度计算基于WDB的特征表示分类属性的冗余度,以两个数据库中当前分类属性中相同类别的个数与当前数据库中的分类总数的比值表示,如以下公式所示;<mrow><msub><mi>redundant</mi><mi>class</mi></msub><mrow><mo>(</mo><msub><mi>WDB</mi><mn>1</mn></msub><mo>,</mo><msub><mi>WDB</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mi>countofrecordsinsameClass</mi><mi>countofallrecordsinallClassValues</mi></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow></mrow>综上,给出基于Web数据库特征的冗余度计算公式如(16)式所示;<mrow><mi>redundant</mi><mrow><mo>(</mo><msub><mi>WDB</mi><mn>1</mn></msub><mo>,</mo><msub><mi>WDB</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><munder><mi>&Sigma;</mi><mi>i</mi></munder><msub><mi>&beta;</mi><mi>i</mi></msub><mo>&times;</mo><msub><mi>redundant</mi><msub><mi>attr</mi><mi>i</mi></msub></msub></mrow>(其中)(16)其中,redundant(WDB1,WDB2)表示WDB1相对WDB2的冗余度;βi表示第i个查询接口属性的权值,表示第i个属性的冗余度度;5)基于WDB特征和用户查询的数据源选择方法在获取查询相关度、返回的数据量以及冗余度三项数据的基础上,给出基于Web数据库特征和用户查询的数据源选择方法如下(1)根据获取的Web数据库的样本数据,获取Web数据库的特征,并表示成公式(4)的形式;(2)根据用户输入的查询请求,结合Web数据库的特征,计算该请求与所有Web数据库的相关度simrequest;(3)根据相关simrequest对所有数据库进行排序,并选择TOPK个数据库作为备选查询数据库,这里记为ChoicedDB1;(4)估计针对当前选择的备选数据库执行查询后的返回结果妇sizerequest,并去除返回数据量小于N的数据库,并将剩余的数据库记为ChoicedDB2;(5)对ChoicedDB2中的数据库,基于其特征计算两两之间的冗余度,并删除其中冗余度值大于R的数据库。至此,剩下的数据库为针对当前用户查询请求的数据源。FSA00000038299800011.tif,FSA00000038299800022.tif,FSA00000038299800025.tif,FSA00000038299800026.tif,FSA00000038299800045.tif,FSA00000038299800046.tif全文摘要本发明提供一种基于WDB特征和用户查询请求的WEB数据库选择方法,包括1)WDB查询接口特征抽取方法;2)基于WDB特征的WDB和用户查询的相关度计算;3)满足用户查询的数据量估计;4)基于WDB特征的冗余度估计;5)基于WDB特征和用户查询的数据源的选择方法,通过上述方法实现了DeepWeb领域中的数据集成和提供一个高效的数据检索策略所要解决的首要问题。面对众多的Web数据库,选择最恰当的数据库进行查询,实现以更小的代价返回更多的数据是本发明的目的,针对此目的提出基于Web数据库独立样本的Web数据库特征表示和抽取方法,结合综合考虑查询相关度、返回数据量和数据冗余度三个要素的数据源选择方法,实现基于WDB特征和用户查询请求的WEB数据库选择,较好地满足集成系统的需求。文档编号G06F17/30GK101814085SQ20101010598公开日2010年8月25日申请日期2010年2月4日优先权日2010年2月4日发明者林培光申请人:林培光
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1