[发明专利]一种提高数据仓库查询性能的方法无效
申请号: | 201110081485.8 | 申请日: | 2011-04-01 |
公开(公告)号: | CN102156725A | 公开(公告)日: | 2011-08-17 |
发明(设计)人: | 沈晶;赵荣;刘纪平 | 申请(专利权)人: | 中国测绘科学研究院 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06N3/00 |
代理公司: | 北京市盈科律师事务所 11344 | 代理人: | 刘立国 |
地址: | 100830 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 数据仓库 查询 性能 方法 | ||
1.一种提高数据仓库查询性能的方法,首先将数据仓库中的数据按照所存储的逻辑关系分为事实表和维度表,然后根据维度表数据对事实表中的数据进行分组汇总,将每个分组生成为一个视图,将生成的所有视图添加到候选视图集合中;然后使用基于信息素扩散的双种蚁群算法,模拟自然界中不同种群的蚂蚁群觅食的过程,在候选视图集合中根据查询频率来寻找数据之间的内在联系,选择生成物化视图,在有限的存储空间内将需要进行表间连接或聚集的查询操作的结果进行预先计算和保存,从而提高数据仓库的查询性能;其具体步骤为:
(A)将候选视图集合中的视图与蚂蚁行进路径上的结点进行对应;
(B)在给定存储空间Kmax限制下,蚂蚁不断的从候选视图集合中选择一个未被选中的合适的视图放到已选视图集中,直到再放入任何一个未被选中的视图将导致整个已选视图集大小超出存储空间限制;
(C)蚂蚁按照状态转移规则进行视图结点选择,同时通过信息素更新策略、信息素扩散规则、信息通信规则对视图结点选择进行更新;
(D)迭代计算步骤(C),对两个种群的蚂蚁找到的最优解进行比较,选出其中较优的解作为迭代最优解,将已选视图集中与该迭代最优解对应的视图组作为物化视图进行存储;
步骤(C)中的状态转移规则为:假设蚁群中蚂蚁的数量为n,初始信息素τij=C(C为常数);在某一时刻,蚂蚁k从视图i选择下一个视图j的时候,根据下述规则选择。
式(1)中,q是[0,1]区间均匀分布的随机数;q0∈[0,1]是一个参数;τij表示i到j边上的信息素浓度,ηij表示i到j边的能见度,令ηij=fj/Sj,其中fj为视图j的查询概率,Sj为视图j所占的存储空间,即启发蚂蚁选择那些单位空间查询频率高的视图来进行物化;α、β分别表示τ与η的相对影响力;通过对双种群进行功能上的划分,即使两个种群的蚂蚁分别具有较快的收敛速度和更好的寻优能力;
式(1)中,allowedK为可选视图的集合,D根据下面式(2)所定义的状态转移概率进行选择;
式(2)中,表示蚂蚁k由视图i转移到视图j的状态转移概率,s为除i、j以外的视图变量;
步骤(C)中的信息素更新策略为:在蚂蚁选择完一个视图结点后进行信息素局部更新,更新规则如下式(3)所示:
在所有蚂蚁都建立了解决方案后进行信息素全局更新,更新规则如下式(4)所示;
式(3)、(4)中,ρ为信息素挥发系数,取值为0<ρ<1;τ0为信息素初值,取为1/N×Kmax,N为候选视图个数,Kmax为给定的存储空间限制;分别为信息素更新前后从i到j边上的信息素浓度;
式(4)中,Δτij取值为:
式(5)中,Qsmallest,Qbiggest分别为最优路径对应的总查询代价和最差路径对应的总查询代价;w是常数,可控制信息素浓度的大小,一般取为1;
步骤(C)中的信息素扩散规则为:
式(6)中,i、j节点为最优路径上的节点,u为与当前节点i直接相连的非最优路径节点;ciD、cuD分别为i点、u点到NULL点的查询代价,λ表示信息量的大小;
步骤(C)中的信息通信规则为:
式(7)中分别是(i,j)段A种群和B种群的信息素。
2.如权利要求1所述的一种提高数据仓库查询性能的方法,其数值计算的流程为:
(I)加载数据,对双种群分别进行参数初始化,根据系统参数初始化信息素强度,设置循环次数NC=0,设置最大初循环次数NCmax,设置ρmax,ρmin,初始化信息素表为:τij=ρmax,且初始时刻Δτij=0,初始化启发因子表为:ηij=1/sij,sij为(i,j)视图的存储代价;
(II)将A种群的所有蚂蚁初始化到视图节点NULL处,将B种群的所有蚂蚁初始化到数据集上界的基表,更新蚂蚁的禁忌表;
(III)计算与当前节点i直接相连的每个节点到NULL处,即基表处,的查询代价,根据式(2)计算的概率选择视图j,将j加入禁忌表;
(IV)若当前节点i的物化视图存储代价达到最大值,执行步骤(V),否则跳转到步骤(II);
(V)计算两个种群中每只蚂蚁所走的路径对应的视图查询代价,分别记录最优视图和最优视图代价为:bestview_A,bestcost_A和bestview_B,bestcost_B;
(VI)若NC%10=0,则按式(7)进行种群间通信,否则执行步骤(VII);
(VII)按照式(3)、(4)分别更新种群A和B的信息素表;按照式(6)对种群B的最优路径进行信息素扩散;
(VIII)若循环次数NC≥NCmax,则循环结束并输出程序计算结果,否则清空禁忌表并跳转到步骤(II)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国测绘科学研究院,未经中国测绘科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110081485.8/1.html,转载请声明来源钻瓜专利网。