[发明专利]基于混合整数线性规划的分布式多表连接选择方法及装置有效
申请号: | 201810252356.2 | 申请日: | 2018-03-26 |
公开(公告)号: | CN108491516B | 公开(公告)日: | 2021-09-14 |
发明(设计)人: | 王宏志;赵志强 | 申请(专利权)人: | 哈工大大数据(哈尔滨)智能科技有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2455 |
代理公司: | 北京格允知识产权代理有限公司 11609 | 代理人: | 周娇娇;谭辉 |
地址: | 150001 黑龙江省哈尔滨市松北区高新技术产业开发区哈工大*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 混合 整数 线性规划 分布式 连接 选择 方法 装置 | ||
本发明涉及一种基于混合整数线性规划的分布式多表连接选择方法及装置,其中方法包括:函数构建步骤、根据定义的连接操作变量构建基于混合整数线性规划的连接操作代价函数;约束条件设置步骤、对所述连接操作变量设置约束条件;代价估计步骤、计算满足所述约束条件并使连接操作代价函数的取值最小的变量值,得到分布式多表连接的最优连接顺序。本发明构建基于混合整数线性规划的连接操作代价函数,寻找使代价函数取值最小的并且满足约束条件的变量值,从而得到分布式多表连接最优连接顺序;进一步地,本发明充分考虑了本地连接次数和优化洗牌次数对分布式多表连接的影响,能够更好地适用于分布式多表连接问题。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于混合整数线性规划的分布式多表连接选择方法及装置。
背景技术
连接操作是数据库中的基本操作。通过连接操作可以得到多个关系表中存储的信息。而在海量数据分析中对于多表连接操作的应用更是非常普遍。多表连接涉及多个连接的连接顺序的选择问题,人们希望在参与连接的关系中找出某种连接顺序,使得连接代价最低。尤其对于并行分布式处理的海量数据而言,需要提供一种分布式多表连接的优化选择方法,找出最优连接顺序,以减小连接操作的代价。
发明内容
本发明要解决的技术问题在于,针对现有技术中的上述缺陷,提供一种基于混合整数线性规划的分布式多表连接选择方法及装置,通过线性规划模型解决连接顺序优化问题。
为了解决上述技术问题,本发明第一方面,提供了一种基于混合整数线性规划的分布式多表连接选择方法,包括以下步骤:
函数构建步骤、根据定义的连接操作变量构建基于混合整数线性规划的连接操作代价函数;
约束条件设置步骤、对所述连接操作变量设置约束条件;
代价估计步骤、计算满足所述约束条件并使连接操作代价函数的取值最小的变量值,得到分布式多表连接的最优连接顺序。
在根据本发明所述的基于混合整数线性规划的分布式多表连接选择方法中,优选地,所述连接操作变量包括当前连接顺序中第j次连接中的本地连接次数和优化洗牌连接次数,其中1≤j≤nk,nk为第k种连接顺序的连接操作总数;且所述约束条件包括:限定所述本地连接次数不小于预设的本地连接最少次数,以及限定所述优化洗牌连接次数不大于预设的优化洗牌连接最大次数。
在根据本发明所述的基于混合整数线性规划的分布式多表连接选择方法中,优选地,所述连接操作变量包括基础变量和中间结果变量。
在根据本发明所述的基于混合整数线性规划的分布式多表连接选择方法中,优选地,所述基础变量包括当前连接顺序的第j次连接中的以下变量:表t的外连接标识值tiotj、表t的内连接标识值tiitj、表t的内连接基数cij、表t的外连接基数coj、本地连接次数selfj和优化洗牌连接次数shufflej;所述中间结果变量包括:表t的基数Card(t)、表t中项目p的选择率Sel(p)、第j次连接中p项同时存在标识值paopj、第j次连接中外连接基数的对数lcoj、基数范围θr、第j次连接中外连接基数的标识值ctorj、本地连接最少次数β和优化洗牌连接最大次数γ,其中r为基数的区间数。
在根据本发明所述的基于混合整数线性规划的分布式多表连接选择方法中,优选地,所述函数构建步骤中构建基于混合整数线性规划的连接操作代价函数为:
Cost=∑jcioj;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈工大大数据(哈尔滨)智能科技有限公司,未经哈工大大数据(哈尔滨)智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810252356.2/2.html,转载请声明来源钻瓜专利网。