基于图划分策略的数据库模式抽象方法

文档序号:10594113阅读:424来源:国知局
基于图划分策略的数据库模式抽象方法
【专利摘要】基于图划分策略的数据库模式抽象方法,本发明涉及数据库模式抽象方法。本发明是要解决忽略了表与表之间的结构紧密性、用户查询偏好信息以及现有方法对模式抽象结果中主题类簇的个数无法做出准确预测的问题,而提出的基于图划分策略的数据库模式抽象方法。该方法是通过一、构建关系数据库的拓扑紧密性矩阵T;二、计算得到表间相似性矩阵ADB;三、得到最终的数据表ti和数据表tj间的相似性计算结果;四、得到最终的表重要性度量结果;五、利用类簇代表检测算法得到结果集合R;六、将数据表ti和数据表tj划分到主题类簇等步骤实现的。本发明应用于数据库模式抽象领域。
【专利说明】
基于图划分策略的数据库模式抽象方法
技术领域
[0001] 本发明设及数据库模式抽象方法,特别设及基于图划分策略的数据库模式抽象方 法。
【背景技术】
[0002] 随着数据库技术的飞速发展和大数据时代的来临,信息正呈现指数级快速增长趋 势。政府机关、大型企业、教育机构中的数据库通常包含成百上千张相互连接的数据表,规 模逐渐壮大,数据库内部的底层模式也日趋复杂。新用户想要在短时间内了解运些大型数 据库所包含的基本内容进而从海量数据中检索自己感兴趣的信息面临着巨大挑战。关系数 据库的模式抽象技术能够对数据库进行高层次的模式抽象和内容概括:将具有相同主题和 较高相似性的数据表归纳到同一主题类簇中,通过运些主题类簇用户能够对数据库所包含 的信息和数据分布有大致的了解。因此,数据库模式抽象技术的相关研究工作成为当今数 据库领域的热口研究方向之一。
[0003] 近几年已出现一些基本的数据库模式抽象方法,但运些方法并没有综合考虑数据 表在整个表空间分布中的拓扑特性W及用户查询偏好对模式抽象过程的指导作用,在进行 数据库模式抽象的过程中仅根据数据表中所包含的内容W及表与表之间的内容相似性进 行数据库模式抽象,而并未考虑表与表之间结构上的相关性,例如表与表间的主外键关系, 表与表之间的逻辑距离等;另外,用户查询偏好也会影响数据库模型抽象结果,不同表中的 数据在历史查询日志中的共现率可W侧面反映数据库中表与表之间的相关性,,运样就使 得模式抽象结果的效率和准确率不能得到较好的保障;此外,已有的研究未能提出有效的 算法对抽象结果中的主题类簇个数作准确预测,因此需要用户进行相关参数的设置(例如 初始聚类中屯、及其个数k),抽象结果的质量也随之受到过多人为因素的影响。
[0004] 随着企业数据库底层模式的日趋复杂、数据规模的逐渐壮大。用户要想快速了解 其底层结构和主要内容进而实现访问与查询操作,亟需一种高效的模式抽象方法对数据库 进行结构抽象和内容概括。然而现有的数据库模式抽象方法在执行过程中并没有考虑表与 表之间的拓扑特性、同时忽视了用户反馈信息的指导作用(用户查询日志中信息对表间相 关性的影响)、对于结果中主题类簇的个数也无法做出准确预测,运样就使得抽象方法的效 率和准确性无法得到有效保障。

【发明内容】

[0005] 本发明的目的是为了解决现有数据库模式抽象方法仅利用数据表的内容相似性 对其进行模型抽象,忽略了表与表之间的结构紧密性W及用户查询偏好信息即历史查询日 志中用户的反馈信息对模式抽象结果的影响W及现有方法对模式抽象结果中主题类簇的 个数无法做出准确预测,需要人工手动设置初始聚类中屯、的个数的问题,而提出的基于图 划分策略的数据库模式抽象方法。
[0006] 上述的发明目的是通过W下技术方案实现的:
[0007] 步骤一、根据节点Vi和节点Vj之间的拓扑紧密性,构建关系数据库的拓扑紧密性矩 阵T;
[0008] 步骤二、根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到表间相似 性矩阵Adb;
[0009] 步骤S、将表间相似性矩阵Adb进行修正,得到最终的数据表ti和数据表t调的相 似性计算结果AFinal(ti,tj);
[0010] 步骤四、将数据表ti的重要性If(ti)进行归一化处理得到最终的表重要性度量结 果Nl(ti);其中,
[0011] NI(ti) = 2X(f(If(ti))-0.5) (14)
[0012] 其中,
If(ti)为数据表ti的重要性;
[0013] 步骤五、根据表重要性度量结果NKti)利用类簇代表检测算法得到结果集合R;
[0014] 步骤六、根据AFinalUi, tj)和结果集合R利用数据库模式抽象的图划分方法将数据 表ti和数据表t冰Ij分到主题类簇;
[0015] 所述数据库模式抽象的图划分方法具体为:
[0016] 步骤六一、输入G=(V',E)和影响因子0,其中,V' ={vi,. . . ,Vn},|E| =m;m节点间 边的个数;Vn为y/中的第n个数据表;
[001 7]步骤六二、将AFinal (ti,t j )作为初始输入矩阵;
[0018]步骤六=、捜索结果集合R中的数据表作为初始聚类中屯、;
[0019]步骤六四、计算初始输入矩阵Af皿i(ti山)的特征值和特征向量;使用Af皿 的前k个最小特征值对应的特征向量m,...,uk,将r中的所有点映射到Rk空间;其中,k为结 果集合R中的数据表个数;
[0020] 步骤六五、基于初始聚类中屯、使用k-means算法将Rk中的节点聚集到主题类簇Cl, 〇2 ,. . . ,Ck中;
[0021] 步骤六六、输出主题类簇C=ICi,C2, ...,Ck}。
[0022] 发明效果
[0023] 本发明提出了一种基于图划分策略一谱聚类算法的数据库模式抽象方法GP- RDSS。谱聚类算法作为一种经典的图划分策略,在社会网络等相关研究领域中取得了广泛 应用。由于结构化数据库可W使用模式图形象地表示其底层模式特征,因此本发明将图划 分方法中的谱聚类算法与结构化数据库自身的内容特征巧妙结合,使模式抽象过程同时受 到数据库拓扑结构和数据表内容的影响;此外,本发明首次将用户偏好对模式抽象过程的 影响考虑在内,挖掘历史查询日志的内容,进一步提高了抽象结果的效率和准确性。其主要 思想如下:该方法首先通过节点间拓扑紧密性和内容相似性的计算构建初始输入矩阵;同 时进行查询日志信息的挖掘,对初始矩阵加 W修正;最后通过对极重要节点的检测确定初 始聚类中屯、,进而执行改进后的谱聚类算法得到最终的模式抽象结果。
[0024] 简而言之本发明主要贡献如下:
[0025] (1)基于图划分策略一谱聚类算法,结合结构化数据库自身特点,构建了一种新颖 的数据库模式抽象方法GP-RDSS;
[0026] (2)从拓扑紧密性、内容相似性和用户反馈=个方面出发设计了一种表间相似性 矩阵构建策略,该策略综合全面并体现用户的查询偏好特征;
[0027] (3)对数据库中的表结构、内容W及查询日志中的反馈信息进行深入剖析,重新定 义了表重要性度量公式,并在此基础上提出了类簇代表选取方案,解决了传统方法中类簇 个数无法预先确定的难题;
[00巧](4)通过在TPC-E benchmark真实数据集上进行实验,验证了本发明方法GP-畑SS 的正确性和有效性如表1和图6。
[0029] 表 1
[0030]
[0031] 本发明提出了一种基于图划分策略-谱聚类的数据库模式抽象方法(GP-RDSS)。首 先提出了一种新颖的表间相似性矩阵构建策略:从拓扑紧密性、内容相似性和查询日志= 个方面构建初始矩阵,使其综合全面并体现用户的查询偏好特征;然后设计了综合完整的 表重要性度量公式和局部极重要节点检测方案,用于初始聚类中屯、的确定,从而使抽象结 果更具主题性和有效性。通过在公开数据集TPC-E benchmark上进行实验,结果表明本文方 法在数据库模式抽象的准确率方面有显著提高如表2、表3、图7和图8。
[0032] 夫 9
[0033]
[0034] ;
[0035]
[0036] 本发明提出的模式抽象方法GP-RDSS采用一种改进的谱聚类策略,从拓扑紧密性 和内容相似性两个方面构建谱聚类初始输入矩阵,并通过对查询日志内容的挖掘分析,侧 面对其进行修正优化。另外,本发明从多个角度对数据表的重要性进行度量分析,定义了表 重要性综合度量公式,并在此基础上提出了类簇代表检测方案,实现聚类算法中主题类簇 个数的准确预测,而省去用户对相关参数的手动输入,同时使模式抽象结果的精度有了显 著提高图9(a)~图9(c)和表4~6;
[0037] 表 4 [00;3 引
[
[0040] 如果真要翻译的话:均衡抽象方法、加权k-中屯、抽象方法、基于图划分的抽象方法
[0041] 表 5 [00421
[i
[i O
【附图说明】
[0045] 图1为【具体实施方式】屯提出的数据库TPC-E benchmark部分模式图;
[0046] 图2为【具体实施方式】一提出的数据库TPC-E benchmark部分模式抽象结果示意图;
[0047] 图3为【具体实施方式】一提出的模式抽象方法架构示意图;
[0048] 图4为【具体实施方式】五提出的数据表间拓扑关系示意图;
[0049] 图5(a)为【具体实施方式】六提出的数据表ti的属性列A示意图;
[0050] 图5(b)为【具体实施方式】六提出的数据表t北勺属性列B示意图;
[0051 ]图6为实施例提出的模式抽象方法精度示意图;
[0052] 图7为实施例提出的使用类簇代表检测算法前后精度对比图;
[0053] 图8为实施例提出的考虑用户反馈前后精度对比图;
[0054] 图9(a)为实施例提出的模式抽象方法准确率对比图,其中,Balance-sum为均衡抽 象方法;Weighted k-center;
[0055] 为加权k-中屯、抽象方法;GP-RDSS为基于图划分的抽象方法
[0056] 图9(b)为实施例提出的模式抽象方法召回率对比图;
[0057] 图9(c)为实施例提出的模式抽象方法F-值对比图;
[005引图10为【具体实施方式】屯提出的主题类簇检测算法程序图。
【具体实施方式】
【具体实施方式】 [0059] 一:本实施方式的基于图划分策略的数据库模式抽象方法,具体是 按照W下步骤制备的:
[0060] 步骤一、根据节点Vi和节点Vj之间的拓扑紧密性,构建关系数据库的拓扑紧密性矩 阵T;
[0061] 步骤二、根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到表间相似 性矩阵Adb;
[0062] 步骤S、将表间相似性矩阵Adb进行修正,得到最终的数据表ti和数据表t调的相 似性计算结果AFinal(ti,tj);
[0063] 步骤四、数据表重要性综合量度;
[0064] 在确定主题类簇代表的过程中,面临的最大挑战即运用一种全面且合理的重要性 评定标准对数据库中每张表的重要性进行准确的评估。显然,重要性较大的数据表具有较 强的代表性。用户可W通过运些表对相应的主题类簇有一个初步且较为全面的了解。另外, 局部范围内重要性较大的数据表可作为谱聚类的初始聚类中屯、,通过实验证明由此得到的 聚类结果更为精确如图7,更能清晰的反映整个数据库的结构组成和内容特征,帮助用户在 短时间内掌握数据库的基本信息,从而对数据库做进一步的操作。
[0065] 由于数据表位于数据库运样一个大的拓扑结构中,所W在计算一张表的重要性 时,不仅要考虑数据表本身的结构、内容信息,还需要考虑来自其他节点的影响。显然,如果 一个数据表的邻居节点拥有很高的重要性,运张表同为重要表的可能性就相对较高;
[0066] 将数据表ti的重要性If (ti)进行归一化处理得到最终的表重要性度量结果NI (ti);其中,
[0067] NI(ti) = 2X(f(If(ti))-0.5) (14)
[00側其中
为数据表ti的重要性;
[0069] 步骤五、根据表重要性度量结果Nl(ti)利用类簇代表检测算法得到结果集合R;
[0070] 步骤六、根据AFinalUi, tj)和结果集合R利用数据库模式抽象的图划分方法将数据 表ti和数据表t冰Ij分到主题类簇;
[0071] 所述数据库模式抽象的图划分方法(模式抽象算法GP-RDSS)具体为:(如图3所示)
[0072] 步骤六一、输入G=(y/,E)和影响因子0,其中,y/ ={vi, . . . ,Vn},|E| =m;m节点间 边的个数;Vn为y/中的第n个数据表;
[007;3 ]步骤六二、将AFinal (ti,t j )作为初始输入矩阵;
[0074]步骤六=、捜索结果集合R中的数据表作为初始聚类中屯、;
[007引步骤六四、计算初始输入矩阵Af皿的特征值和特征向量;使用Af皿 的前k个最小特征值对应的特征向量m,...,uk,将r中的所有点映射到Rk空间;其中,k为结 果集合R中的数据表个数;
[0076] 步骤六五、基于初始聚类中屯、使用k-means算法将Rk中的节点聚集到主题类簇Cl, 〇2 ,. . . ,Ck中;
[0077] 步骤六六、输出主题类簇C=ICi,C2, ...,Ck};(如图2)
[0078] 主题类簇C= {Ci,C2, ...,Ck}中包括k个主题类簇,每个主题类簇中的数据表均具 有相似的主题和内容;用户想要在短时间内对该主题类簇有一个宏观的了解,就需要系统 使用一种科学合理的方法为每个主题类簇选择一个类簇代表,通过类簇代表能够反映该主 题簇的核屯、内容,使用户不需要具体地查看主题类簇中每一张数据表就对该主题类簇有一 个初步的了解。
[0079] 本实施方式效果:
[0080] 本发明提出了一种基于图划分策略一谱聚类算法的数据库模式抽象方法GP- RDSS。谱聚类算法作为一种经典的图划分策略,在社会网络等相关研究领域中取得了广泛 应用。由于结构化数据库可W使用模式图形象地表示其底层模式特征,因此本发明将图划 分方法中的谱聚类算法与结构化数据库自身的内容特征巧妙结合,使模式抽象过程同时受 到数据库拓扑结构和数据表内容的影响;此外,本发明首次将用户偏好对模式抽象过程的 影响考虑在内,挖掘历史查询日志的内容,进一步提高了抽象结果的效率和准确性。其主要 思想如下:该方法首先通过节点间拓扑紧密性和内容相似性的计算构建初始输入矩阵;同 时进行查询日志信息的挖掘,对初始矩阵加 W修正;最后通过对极重要节点的检测确定初 始聚类中屯、,进而执行改进后的谱聚类算法得到最终的模式抽象结果。
[0081 ] 简而言之本发明主要贡献如下:
[0082] (1)基于图划分策略一谱聚类算法,结合结构化数据库自身特点,构建了一种新颖 的数据库模式抽象方法GP-RDSS;
[0083] (2)从拓扑紧密性、内容相似性和用户反馈=个方面出发设计了一种表间相似性 矩阵构建策略,该策略综合全面并体现用户的查询偏好特征;
[0084] (3)对数据库中的表结构、内容W及查询日志中的反馈信息进行深入剖析,重新定 义了表重要性度量公式,并在此基础上提出了类簇代表选取方案,解决了传统方法中类簇 个数无法预先确定的难题;
[00化](4)通过在TPC-E benchmark真实数据集上进行实验,验证了本发明方法GP-畑SS 的正确性和有效性如表1和图6。
[00化]表1
[0087]
[0088] 本发明提出了一种基于图划分策略-谱聚类的数据库模式抽象方法(GP-RDSS)。首 先提出了一种新颖的表间相似性矩阵构建策略:从拓扑紧密性、内容相似性和查询日志= 个方面构建初始矩阵,使其综合全面并体现用户的查询偏好特征;然后设计了综合完整的 表重要性度量公式和局部极重要节点检测方案,用于初始聚类中屯、的确定,从而使抽象结 果更具主题性和有效性。通过在公开数据集TPC-E benchmark上进行实验,结果表明本文方 法在数据库模式抽象的准确率方面有显著提高如表2、表3、图7和图8。
[0089] 亲2
[009(
[009'
[009;
[0093]本发明提出的模式抽象方法GP-RDSS采用一种改进的谱聚类策略,从拓扑紧密性 和内容相似性两个方面构建谱聚类初始输入矩阵,并通过对查询日志内容的挖掘分析,侧 面对其进行修正优化。另外,本发明从多个角度对数据表的重要性进行度量分析,定义了表 重要性综合度量公式,并在此基础上提出了类簇代表检测方案,实现聚类算法中主题类簇 个数的准确预测,而省去用户对相关参数的手动输入,同时使模式抽象结果的精度有了显 著提高图9(a)~图9(c)和表4~6;
[0094] 表 4
[0095]
[0096] 如果真要翻译的话:均衡抽象方法、加权k-中屯、抽象方法、基于图划分的抽象方法
[0097] 表 5
[i
[i
[i
[0102]【具体实施方式】二:本实施方式与【具体实施方式】一不同的是:步骤一中根据节点Vi 和节点Vj之间的拓扑紧密性,构建关系数据库的拓扑紧密性矩阵即表间相似性矩阵具体 为:
[0103] 步骤一一、衡量表间拓扑紧密性;
[0104] 在衡量表间拓扑紧密性时,本发明引入了数据场中拓扑势的概念(文献Witten, E.,Topological quantum field theory.Communications in Mathematical Physics, 1988.117(3) :p.353-386记载);假定在数据库模式图中,节点顺着模式图中边的方向能够 散发出一个作用场,则模式图中的任何节点都将受到其邻近节点的联合作用,该联合作用 的强弱与节点本身的重要程度W及节点之间的距离相关。节点在模式图中的拓扑位置,相 当于节点所处的位势,反映了它影响相邻节点(也反映了被相邻节点影响)的能力,定义为 数据表的拓扑势。显然,数据表的拓扑势包含了丰富的结构信息,可W用来衡量数据表间的 拓扑紧密性:
[0105] 给定数据库的模式图G=(V,E),节点Vi和节点Vj之间的拓扑紧密性定义如下:
[0106] 化
[0107]其中,I Vi I为节点Vi包含的元组个数;I Vj I为节点Vj包含的元组个数;0为影响因 子,O决定了节点在模式图中的影响范围。〇越大影响力越强,即节点间的相互作用力越强; 反之,相互作用力越弱。W,为节点Vi和节点Vj之间的逻辑距离即在数据库模式图中,节点Vi 和节点Vj之间的路径长度。
[0108] 根据高斯函数的数学性质,对于给定的O值,每个节点的影响范围近似等于 贵?的局部区域,当节点Vi和节点V调的逻辑距离而,大于據」时,节点Vi和节点Vj 间的拓扑紧密性迅速衰减为0;
[0109] 注意:在计算节点Vi和节点Vj间的逻辑距离时,如果Vi到Vj的路径上包含物理连接 表(表中仅包含主外键关系所设及的主外键属性,没有其他附加属性),则在计算路径长度 时应除去此类物理连接表的影响。
[0110] 步骤一二、假设节点Vi到Vj的路径上存在I P I个物理连接表,风,表示节点Vi和节 点V么间实际物理长度,则节点Vi和V搁的逻辑长度邸,/=凤,,卡I;
[0111] 步骤一 S、通过公式(1)计算出节点Vi和节点Vj之间的拓扑紧密性,进而构建关系 数据库的拓扑紧密性矩阵T如下:
[0112]
[011引,、1为节点Vn和节点Vl的结构相似性;为节点Vi和节点Vn的结构相似性。 其它步骤及参数与【具体实施方式】一相同。
[0114]【具体实施方式】本实施方式与【具体实施方式】一或二不同的是:步骤二中根据拓 扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到表间相似性矩阵Adb具体为:
[0115] 步骤二一、步骤一主要讨论了数据表之间结构上的相互关系,而从另外一个角度 出发,数据表自身的元组、属性等内容信息也会对表间相似性产生很大程度的影响,进而对 数据库的模式抽象过程起着指导作用。显然,内容上越相近的两个表,属于同一主题的概率 就越大,在模式图划分时,就拥有更高的概率被分到同一个类簇中。因此,步骤一针对表间 内容的相似性展开深入讨论,为之后的图划分提供理论依据和划分基础。
[0116] 数据表由表名、属性和元组构成,因此在对表间内容相似性进行分析时从命名相 似性和赋值相似性两个方面进行深入探究;
[0117] 命名相似性作为影响表间内容相似性的重要因素之一:具体来讲包括表名相似性 和属性名相似性两大部分。本发明采用向量空间中计算两实体间相似性的方法(Baeza- Yates,R.and B.Ribeiro-Neto,Modern information retrieval.Vol.463.1999:ACM press New York.),分别提取每张数据表ti的表名W及数据表ti的属性名中的关键字构建 数据表ti的向量Vi,每张数据表t北勺表名W及数据表的属性名中的关键字构建数据表tj的 向量Vj,根据Vi和Vj利用Cosine函数计算命名相似性Simi(ti,tj):
[011 引 Sim(ti'tj) = Sim(Vi,Vj)=ViXVj/^(|Vi|x|Vj|) (2)
[0119] Sim(Vi,Vj)为向量Vi和Vj相似性;
[0120] 步骤二二、使用化ccard距离计算数据表ti和tj的属性间的内容相似性J(u,V):
[0121] ^u'v)= |unv|/|uUv| (3)
[0122] 其中,U为数据表ti的属性;V为数据表的属性;
[0123] 步骤二=、利用贪婪匹配算法检测数据表ti和间相互匹配的属性列对集合Z;
[0124] 步骤二四、分别计算数据表ti的属性列U的变异系数U. V(变异系数英文全称 variance coefficient)和数据表tj的属性列V的变异系数V.V,根据变异系数U.V和V.V计 算得到赋予属性列对(u,v)的权值max(u.V,v.V);其中,
[0125]
[0134]
[0135] 51111(心,心)为相同数据表心的内容相似性,51111(11,11)~51111(心,心)的内容相似性 均为I;
[0136] 步骤二八、根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到数据表 tj和数据表ti间相似性矩阵Adb:
[0137] Adb = T+S。其它步骤及参数与【具体实施方式】一或二相同。
【具体实施方式】 [0138] 四:本实施方式与一至=之一不同的是:所述步骤二 =中利用贪婪匹配算法检测数据表ti和间相互匹配的属性列对集合Z具体过程为:
[0139] a.初始化属性列对集合Z= (1),U为数据表ti的全体属性集;V为数据表的全体属 性集;4为空集;Z为用于存放相互匹配的属性列对;
[0140] b.寻找J(u,v)值最大的属性列对(u,v),其中,uGU、vGV;
[0141] C.将J(u,v)值最大的属性列对(u,v)存入到Z中,将U和V分别从属性集U和V中移 除;
[0142] d.在U和V中重新寻找属性列对重复步骤b和C,直到所有的属性列对化ccard距离 为0为止;从而得到数据表ti和间相互匹配的属性列对集合Z。其它步骤及参数与具体实施 方式一至S之一相同。
[0143]
【具体实施方式】五:本实施方式与【具体实施方式】一至四之一不同的是:步骤=中将 表间相似性矩阵Adb进行修正,得到最终的数据表ti和数据表tj间的相似性计算结果AFinal 具体过程:
[0144] 步骤=一、传统的关系数据库模式抽象方法仅仅关注数据库本身包含的数据信 息,将内容相近的若干张数据表划分到同一个主题类簇,而未将用户的历史查询记录考虑 在内。用户查询日志记录了众多用户检索数据库的"反馈"结果,对它进行分析相当于使用 了大量用户的相关反馈,相对于传统的模式抽象方法而言,运种带有用户反馈的模式抽象 方法更具意义和使用价值(文献Gao,L.,X.化,and Y丄iu,Keyword query cleaning with query logs, in Web-Age Information Management.2011 ,Springer.p.31-42.记载);
[0145] 利用用户反馈的模式抽象方法对查询日志L中的查询记录进行统计分析,并使用 臥下13〇〇31:;[]1£^巧敬对Adr讲行修巿:
[0146]
[0147] 其中,count
记录了数据表ti和数据表tj在查询日志中共现的次数,max (count)为查询日志L中任意两表共现次数的最大值;boosti〇g( ?)为加强函数;查询日志L 中包含3个字段:用户ID、提出的查询Q、查询结果及结果所在的数据表t,而运些信息能够从 侧面反映用户的兴趣;数据表t为数据表ti或数据表t J;
[0148] 由公式(6)可知,在查询日志L中共现次数越多的表,紧密性得分被加强的程度越 大;例如数据表tl、t2、t3为数据库D中的立张表,且具有W下结构关系如图4;
[0149] 运样就存在两种可能的划分Si =扣(,巧PS: 。假定t2,t3出现在查询日志 的同一行记录中,而ti,t2没有同时出现在查询日志中,攻:二!化如就更有可能是用户希望 得到的理想划分。如果不考虑查询日志对划分结果的影响,仅仅使用数据表本身包含的数 据信息作为划分依据,则可能得到相反的结果。
[0150] 步骤S二、利用用户查询日志L中的信息对Adb进行加强,提出W下得分加强函数:
[0151] AFinal(ti,tj)=ADB(ti,tj)*b〇OStl〇g(ti,tj) (7)
[0152] 其中,AFinalUi山)为最终的数据表ti和数据表t调的相似性计算结果;ADB(ti,tj) 为数据表ti和t北勺相似性得分;
[0153] 正如公式(7)所示,如果数据表ti和同时出现在用户查询日志L中,则数据表ti和 tj的紧密性得分AdbUi,tj)应该被加强;如果没有同时出现在查询日志L中,则相似性得分 A〇B(ti , tj)保持不变;
[0154] 若数据表ti和t撕紧密性得分AdbUi山)被加强(得分变大),通过加强函数(公式 (7))的作用,出现在查询日志频率越高的数据表ti和t苗皮划分到一个主题类簇的概率越大。 其它步骤及参数与【具体实施方式】一至四之一相同。
【具体实施方式】 [0155] 六:本实施方式与一至五之一不同的是:步骤四中将 数据表ti的重要性If(ti)进行归一化处理得到最终的表重要性度量结果Nl(ti)具体为:
[0156] 步骤四一、将数据表ti的重要性If(ti)包括数据表ti的固有重要性Ib(ti)和数据表 ti的依赖重要性Id(ti),如公式(8)所示:
[0157] If(ti) = Ib(ti)+Id(ti) (8)
[015引步骤四二数据表ti的固有重要性Ib(ti)与数据表的固有属性相关,数据表的固有 属性包括数据表的规模、自身所包含的信息、数据表在整个数据库中的位置分布W及用户 反馈信息的侧面影响;具体公式如下所示:
[01巧]

[0160] 其中,log I ti I代表数据表ti的规模对数据表ti重要性的影响,数据表ti的规模越 大,数据表ti的重要性也随之增大;tf(ti)为表ti在查询日志中出现的次数;
[0161] 的O为数据表ti的拓扑势,由公式(10)计算得到:
[画
(10)
[0163] 其中,n为数据表的总个数;0影响因子; .拓
[0164] X .4 . k'为表ti中所有属性列的变异系数Al. V之和; f=i
[01 化]
(II)
[0166] Ai为数据表ti的属性列,Ai为U或V; A为M或云;Ai.V为数据表ti中属性列Ai的变异系 数;k为数据表ti的属性列个数;
[0167] Al. V是衡量资料中各观测值变异程度的一个统计量;变异系数越小,属性列内容 的丰富度也就越小;反之,变异系数越大,属性列内容的丰富度也就越大;
[016引例:
[0169] 图5(a)为数据表ti的属性列u,图5(b)为数据表t2的属性列V,在对数据表ti和t2的 内容丰富度进行比较时,需分别计算属性列U和V的变异系数;
[0170] 将属性值在实数空间上从小到大进行映射,其中,相同的属性值被映射到同一个 实数上。由公式(12)得U属性列和V属性列的变异系数分别为:
[0171] (12)
[0172] U ? V〉v ? V,u属性的变异程度大于V属性,即U属性的丰富程度大于V属性。
[0173] W体现了用户查询反馈对表重要程度的影响为数据表ti在查询日志中 出现的次数,直观上看,出现在查询日志L中次数越多的数据表,用户对该数据表的兴趣指 数越高,表的重要性也随之升高。
[0174] 步骤四S、公式If(ti) = Ib(ti)+Id(ti)的后半部分体现了一个表重要性受其他数 据表的影响;数据表ti的依赖重要性Id(ti)的具体公式为:
[0175]
(13)
[0176] 其中,Ib(tj)为数据表tj的固有重要性;ADB(ti,tj)为数据表ti与数据表tj间的相似 性矩阵;
[0177] 步骤四四、将If(ti)进行归一化处理得到最终的表重要性度量结果NKti):
[017 引 NI(ti) = 2X(f(If(ti))-0.5) (14)
[0179] 其中
[0180] 理论上,Nl(ti)越大的数据表,作为类簇代表的潜力就越大,用户通过运些NKti) 越大的数据表也更容易了解类簇的概要信息;但是,简单地选取NKti)排在top-k的数据表 作为类簇代表是不合理的:当同时具有较高重要性的两个表又同时位于同一主题类簇时, W上选取方案就不再适用。为了解决运个问题,本发明提出了一种局部极重要点检测方案 即类簇代表检测算法,通过此方案,将检测到的局部极重要节点作为类簇代表更具合理性。 其它步骤及参数与【具体实施方式】一至五之一相同。
【具体实施方式】 [0181] 屯:本实施方式与一至六之一不同的是:步骤五中根 据表重要性度量结果Nl(ti)利用类簇代表检测算法得到结果集合R具体为:
[0182] 步骤五一、输入数据库的模式图G=(V/,E);y/为数据库的模式图的节点;E为节点 间的边;(如图1)
[0183] 步骤五二、按照公式(14)计算数据库模式图中每个数据表的NKti),并将NKti)进 行降序排序,进入队列Q;
[0184] 步骤五=、将队列Q中的队头元素 qi出队,放入结果集合R中;并将qi及qi的邻居节 点标记为已访问状态;其中,qi为NKti)值最大的数据表;
[0185] 步骤五四、将队列Q中的队头Q2出队,并将Q2的邻居节点标记为已访问状态,再判断 Q2是否已被标记,如果未被标记,则将Q2放入集合R中,并标记;
[0186] 步骤五五、循环执行步骤五四,直到队列Q为空;
[0187] 步骤五六、输出结果集合R;主要程序如图10。其它步骤及参数与【具体实施方式】一 至六之一相同。
[0188] 采用W下实施例验证本发明的有益效果:
[0189] 实施例一;
[0190] 本实施例基于图划分策略的数据库模式抽象方法,具体是按照W下步骤制备的:
[0191] 将本发明提出的GP-RDSS关系数据库模式抽象方法在真实的数据集TPC-E benchmark上进行测试。首先,对数据集TPC-E benchmark和实验环境作简要介绍。然后,从 不同角度构建S组实验验证本发明的有效性:分别使用文献(Y U,C . a n d H.Jagadish.Schema summarization. in Proceedings of the 32nd international conference on VeiT large da1:a bases. 2006. VLDB !Endowment.)中的表重要性计算方法 和本发明提出的表重要性综合度量公式对表的重要性进行计算,通过排序结果的对比分析 证实本文表重要性计算公式的合理性和准确性;使用本发明提出的方法GP-RDSS对数据集 进行模式抽象,与数据库自身定义的数据表分类结果进行比较,验证本发明所提方法的有 效性,另外设计对比实验验证主题类簇代表检测方案和用户反馈信息对模式抽象结果精度 的促进作用;实验的最后部分将本发明模式抽象方法与文献(Y U,C . a n d H.Jagadish.Schema summarization. in Proceedings of the 32nd international conference on Very large data bases. 2006 .VLDB Endowment.)中的Balance-sum抽象 方'法臥及文南犬(Yan邑,X. ,C.M.Procopiuc,and D. Srivastava,Summarizin邑 relational databases.Proceedings of the VLDB !Endowment,2009.2(1) :p.6:34-645.)中的weighted k-center模式抽象方法进行比较,结果证实本发明在结果的精度方面有显著提高。
[0192] -、实验设置
[0193] 数据集TPC-E benchmark由IYansaction Processing 化;rformance Council提 供,用于测评化TP系统的性能。TPC-E数据库使用美国人口普查中和纽约证券交易中屯、的的 数据分别生成人名和公司信息。TPC-E共有33张数据表,被分为客户、经纪人、市场、维度四 类。客户类包含了客户相关信息;经纪人包含了与经纪商相关的数据;市场类中的数据与交 易、公司和证券相关;维度包含了通用信息。
[0194] 算法在JAVA环境下运行,采用Inte頓Core (TM) 3.40GHz的CPU,8GB内存,500G硬盘, 操作系统为Microsoft Windows 7。
[01巧]二、实验评估
[0196] (一)、数据表的重要性
[0197] 数据表重要性综合度量方法和文献(Yu, C.and H. Jagadish. Schema summarization. in Proceedings of the 32nd international conference on Very large da化bases. 2006. VLDB Endowment.)中的数据表重要性计算方法进行比较,分别使 用If.表和Is.表记录通过两种方法得到的数据表重要性排序结果。表7仅展现排序结果的前 六位。
[019引表7表重要性对比

LUZUU」 出W Jl刈化巧宋Kl夫N ,yu con邑寺八巧巧的巧里巧'I生TT异/H友ic上巧个区化巧的別 模对各个表的重要性进行衡量。如表7所示表交易历史、控股历史因为包含了大量的历史信 息,具有较大的规模,在表重要性排序中分别被排在第二位和第五位。但是在用户访问TPCE 数据库,进行各项股票交易的过程中,运些历史信息并不重要且很少得到用户的关注。因此 运种重要性排序方法缺乏合理性。相反,本实施例提出的数据表重要性计算方法If,综合考 虑数据表的拓扑中屯、性、内容丰富性W及用户反馈信息得到了较为合理的排序结果。例如 表交易和客户由于同时具有丰富的内容信息和较高的拓扑中屯、性,并且在查询日志中高频 出现等特征而被排在表重要性排序的前两位,也是大多数用户想要得到的结果。
[0201] (二)、算法有效性
[0202] 运一部分通过将本实施例的GP-RDSS得到的主题类簇结果与数据库自身定义的主 题类簇进行比较。可W看出,本实施例的抽象方法具有较高的精度。在图6中,X轴为数据库 的各个主题类簇,y轴为本实施例的GP-RDSS方法的精度。
[0203] 表2模式抽象算法的有效性
[0204]
[0205]
[0206] 另外,采用本发明提出了一种主题类簇代表检测方案。为了验证其对模式抽象结 果精度的促进作用,进行了 W下对比实验。图7记录了主题类簇代表检测前后,模式抽象结 果的精度。由于主题类簇代表检测方案对谱聚类中的初始聚类中屯、作了合理准确的预测, 从而使得最终的聚类结果具有更高的精度。
[0207] 表3未使用类簇代表检测的模式抽象方法精度 「02081
[0209]本发明另外一个重要的特色是使用用户查询日志信息对模式抽象过程进行指导。 从而使抽象结果反映用户的查询偏好特征。图8中的结果显示,在考虑用户反馈信息的影响 后,模式抽象结果的精度有了一定提高。
[0210]表4不带用户反馈的模式抽象算法精度
[0212] (S)、方法对比
[0213] 运一部分,对比分析了 S种关系数据库模式抽象方法的结果,Balance-sum抽象方 法、wei曲ted k-center方法和本发明摇出的GP-畑SS。巧了评估模式抽象结果的质量,实验 使用W下几个量度进行对比:召回率
I为模式抽象结果中主题类簇所包含 的数据表总数与数据库中数据表总数间的比值、准确率
3所有主题类簇准确 率的平均值,其中每一个主题类簇的准确率91=|(:11〇1-<16!1。6|/|(:1-<16!1。6|定义为:在模式 抽象返回结果Cl和数据库预先定义的主题类簇Ci-define中同时出现的数据表所占的比例;F- measure:F = 2PR/(R+P)(女日文南犬Chowdhury,G. ,Introduction to modern information retrieval. SOlO = ^cet publishing.) ek为模式抽象结果中的主题类簇个数;Ci为第i个主 题类簇;t为数据库中数据表个数;Pi为第i个主题类簇的模式抽象结果准确率;Ci-define为领 域专家定义的数据库模式抽象结果;PR为准确率和召回率的乘积;
[0214] S种模式抽象方法的对比结果如图9(a)~图9(c)所示。由图9(a)~图9(c)可知, 本发明提出的方法GP-RDSS由于综合考虑了数据库的结构、内容特征,同时充分使用用户的 查询日志信息,在召回率、准确率上都远远优于其他两种方法。
[0215] 本实施例提出了一种基于图划分策略的数据库模式抽象方法。首次结合图划分策 略和用户查询日志信息对关系数据库进行模式抽象。通过计算模式图中节点间的拓扑紧密 性和内容相似性构建谱聚类算法的输入矩阵,同时使用查询日志信息的统计分析结果对W 上矩阵进行修正,从而反映用户偏好特征;此外,定义了综合的表重要性度量公式,并检测 出局部极重要节点,作为初始聚类中屯、和主题类簇代表。最终得到的抽象结果能够帮助用 户快速了解和使用数据库。
[0216] 使用TPC-E benchmark数据集对提出的模式抽象方法GP-畑SS进行评估,经过和现 有最优方法的对比实验,证明本文方法在抽象结果的精度上得到显著提高。
[0217] 在未来的工作中,我们将继续研究数据库模式抽象方法,并将其运用到关键词查 询的预处理中用于查询效率的提高。
[0218] 本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域 技术人员当可根据本发明作出各种相应的改变和变形,但运些相应的改变和变形都应属于 本发明所附的权利要求的保护范围。
【主权项】
1. 基于图划分策略的数据库模式抽象方法,其特征在于,该方法具体是按照以下步骤 进tx的: 步骤一、根据节点Vl和节点W之间的拓扑紧密性,构建关系数据库的拓扑紧密性矩阵T; 步骤二、根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到表间相似性矩 阵 Adb; 步骤三、将表间相似性矩阵Adb进行修正,得到最终的数据表tdP数据表k间的相似性计 算结果AFinal(ti,tj); 步骤四、将数据表^的重要性iKti)进行归一化处理得到最终的表重要性度量结果NI (ti);其中, NI(ti)=2X(f(If(ti))-0.5) (14) 其中为数据表^的重要性; 步骤五、根据表重要性度量结果NI(t〇利用类簇代表检测算法得到结果集合R; 步骤六、根据和结果集合R利用数据库模式抽象的图划分方法将数据表^ 和数据表k划分到主题类簇; 所述数据库模式抽象的图划分方法具体为: 步骤六一、输入,E)和影响因子〇,其中,ν' ={νι, . . ·,vn},|E| =m;m节点间边的 个数;vn为f中的第n个数据表; 步骤六二、将AFirml ( ti,t j )作为初始输入矩阵; 步骤六三、搜索结果集合R中的数据表作为初始聚类中心; 步骤六四、计算初始输入矩阵AFinal(ti,tj)的特征值和特征向量;使用AFinal(ti,tj)的前 k个最小特征值对应的特征向量m,...,Uk,将V'中的所有点映射到垆空间;其中,k为结果集 合R中的数据表个数; 步骤六五、基于初始聚类中心使用k-means算法将Rk中的节点聚集到主题类簇Cl, C2,· · ·,Ck中; 步骤六六、输出主题类簇C ={&,&,...,Ck}。2. 根据权利要求1所述基于图划分策略的数据库模式抽象方法,其特征在于:步骤一中 根据节点^和节点W之间的拓扑紧密性,构建关系数据库的拓扑紧密性矩阵即表间相似性 矩阵具体为: 步骤一一、衡量表间拓扑紧密性;给定数据库的模式图G =( V,E ),节点Vi和节点Vj之间 的拓扑紧密性定义如下:其中,I Vi I为节点Vi包含的元组个数;I Vj I为节点Vj包含的元组个数;σ为影响因子, 为节点Vi和节点Vj之间的逻辑距离;当节点Vi和节点Vj间的逻辑距离大于|_3σ/Λ/Ι]时, 节点Vi和节点Vj间的拓扑紧密性迅速衰减为〇; 步骤一二、假设节点Vi到Vj的路径上存在I P I个物理连接表,./表示节点Vi和节点Vj 之间实际物理长度,则节点^和^间的逻辑长度步骤一三、通过公式(1)计算出节点Vl和节点W之间的拓扑紧密性,进而构建关系数据 库的拓扑紧密性矩阵T如下:为节点Vn和节点¥1的结构相似性;为节点V1和节点Vn的结构相似 性。3.根据权利要求2所述基于图划分策略的数据库模式抽象方法,其特征在于:步骤二中 根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到表间相似性矩阵Adb具体为: 步骤二一、分别提取每张数据表^的表名以及数据表^的属性名中的关键字构建数据 表ti的向量Vi,每张数据表tj的表名以及数据表tj的属性名中的关键字构建数据表tj的向量 Vj,根据Vi和Vj利用Cosine函数计算命名相似性Simi(ti,tj): Simi(ti ;tj)=Sim(Vi;Vj)=ViXVj/( |Vi| X |Vj|) (2) Sim( Vi,Vj)为向量Vi和Vj相似性; 步骤二二、使用Jaccard距离计算数据表ti和tj的属性间的内容相似性J(u,v): J(u,v)= |unv|/|uU V (3) 其中,u为数据表ti的属性;v为数据表tj的属性; 步骤二三、利用贪婪匹配算法检测数据表tdPk间相互匹配的属性列对集合Z; 步骤二四、分别计算数据表^的属性列u的变异系数u.V和数据表tj的属性列V的变异系 数V. V,根据变异系数u. V和V. V计算得到赋予属性列对(u,V)的权值max (u.V,v.V);其中,其中,S为数据表属性值的标准差,?为数据表^属性的平均值;?为数据表h属性的平 均值;m为数据表ti中第i个属性列vi数据表tj中第i个属性列; 步骤二五、根据属性列对集合Z和maX(u.V,v.V)加权求平均得到两数据表tdPk间的赋 值相似性Sim2(ti,tj):其中,I I为数据表t中的属性个数;I I为数据表k中的属性个数; 步骤二六、根据Simi(ti,tj)和Sim2(ti,tj)计算得到内容相似性Sim(ti,tj): Sim(ti,tj) = (Simi(ti,tj)+Sim2(ti,tj) )/2 (5) 步骤二七、根据SimUbtJ计算得到数据表间的内容相似性矩阵S: L ......N ' ?23;[111(1:11,1:11)为相同数据表1:11的内容相似性,5;[111(1:1,1:1)~5;[111(1: 11,1:11)的内容相似性均为 1; 步骤二八、根据拓扑紧密性矩阵T和数据表间的内容相似性矩阵S计算得到数据表和 数据表ti间相似性矩阵Adb : Adb = T+S〇4. 根据权利要求3所述基于图划分策略的数据库模式抽象方法,其特征在于:所述步骤 二三中利用贪婪匹配算法检测数据表tdPk间相互匹配的属性列对集合Z具体过程为: a. 初始化属性列对集合Ζ= Φ,U为数据表ti的全体属性集;V为数据表tj的全体属性集; Φ为空集; b. 寻找J(u,v)值最大的属性列对(u,v),其中,ueu、vev; c. 将J(u,v)值最大的属性列对(u,v)存入到Z中,将u和v分别从属性集U和V中移除; d. 在U和V中重新寻找属性列对重复步骤b和c,直到所有的属性列对Jaccard距离为0为 止;从而得到数据表tdPk间相互匹配的属性列对集合Z。5. 根据权利要求4所述基于图划分策略的数据库模式抽象方法,其特征在于:步骤三中 将表间相似性矩阵Adb进行修正,得到最终的数据表tdP数据表k间的相似性计算结果A Final (t山)具体过程: 步骤三一、利用用户反馈的模式抽象方法对查询日志L中的查询记录进行统计分析,并 使用以下boosting函数对Adb进行修正:其中,count (ti,tj)记录了数据表ti和数据表tj在查询日志中共现的次数,max(count) 为查询日志L中任意两表共现次数的最大值;b〇〇stlcig( ·)为加强函数;查询日志L中包含3 个字段:用户ID、提出的查询Q、查询结果及结果所在的数据表t;数据表t为数据表^或数据 表tj; 步骤三二、利用用户查询日志L中的信息对Adb进行加强,提出以下得分加强函数: AFinal( ti , tJ ) = Adb( ti , t j )*b〇OStl〇g( ti , t j ) (7) 其中,为最终的数据表数据表t刺的相似性计算结果;ADBUbtj)为数 据表tdPk的相似性得分。6. 根据权利要求5所述基于图划分策略的数据库模式抽象方法,其特征在于:步骤四中 将数据表^的重要性If(t〇进行归一化处理得到最终的表重要性度量结果NI(t〇具体为: 步骤四一、将数据表^的重要性ικω包括数据表^的固有重要性和数据表^的 依赖重要性IdUO,如公式(8)所示: If (ti) = Ib(ti)+Id(ti) (8) 步骤四二、数据表^的固有重要性IbUO具体公式如下所示:其中,log I |代表数据表"的规模对数据表"重要性的影响,tf( to为表t在查询日志 中出现的次数; 轉,)为数据表^的拓扑势,由公式(10)计算得到:其中,η为数据表的总个数;σ影响因子; £為.F为表tl中所有属性列的变异系数&. V之和; i=lAi为数据表ti的属性列,Ai为u或v;A为?或hAi.V为数据表ti中属性列Ai的变异系数;k 为数据表ti的属性列个数; 步骤四三、数据表^的依赖重要性IdUO的具体公式为: J x其中,Ib(tj)为数据表k的固有重要性;ADBUhtj)为数据表^与数据表k间的相似性矩 阵; 步骤四四、将iKti)进行归一化处理得到最终的表重要性度量结果NKti): NI(ti)=2X(f(If(ti))-0.5) (14) 其中7. 根据权利要求6所述基于图划分策略的数据库模式抽象方法,其特征在于:步骤五中 根据表重要性度量结果NI(t〇利用类簇代表检测算法得到结果集合R具体为: 步骤五一、输入数据库的模式图G=(V',Ε);ν'为数据库的模式图的节点;E为节点间的 边; 步骤五二、按照公式(14)计算数据库模式图中每个数据表的NKtO,并将NI(t〇进行降 序排序,进入队列Q; 步骤五三、将队列Q中的队头元素出队,放入结果集合R中;并将的邻居节点标 记为已访问状态;其中,qiSNKtO值最大的数据表; 步骤五四、将队列Q中的队头q2出队,并将q2的邻居节点标记为已访问状态,再判断q2是 否已被标记,如果未被标记,则将屯放入集合R中,并标记; 步骤五五、循环执行步骤五四,直到队列Q为空; 步骤五六、输出结果集合R。
【文档编号】G06F17/30GK105956012SQ201610251897
【公开日】2016年9月21日
【申请日】2016年4月21日
【发明人】王念滨, 王红滨, 周连科, 王瑛琦, 宋奎勇, 何鸣
【申请人】哈尔滨工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1