【技术实现步骤摘要】
一种优化网络多连接的系统和方法
本专利技术涉及大数据处理
,尤其涉及一种优化网络多连接的系统和方法。
技术介绍
连接操作是批处理中最常见也最昂贵的操作之一,对于多个数据源的连接操作,执行一组连接操作的顺序会对所需的计算、I/O吞吐和网络传输量产生重大影响,这将直接影响着系统的执行性能。但是实际情况中,用户由于对数据集没有确切的概念而主观确定连接的执行顺序,因而用户手动完成的批处理程序的连接顺序往往都不是最优的。目前在大部分大数据处理系统中仅能根据用户逻辑处理固定运算符顺序的计划,为确定的逻辑计划生成不同的物理执行策略并通过成本估算以选择代价最小的物理执行计划,但是其并没有涉及到对多个数据源连接顺序的重排策略。而现有的多连接优化算法中,传统的动态规划算法有着较高的时间复杂度,随着连接节点的增加会导致优化方案计算时间大幅增加,进而致使程序总执行时间得不到有效减少。因而迫切的需要新的方法和技术来为多连接优化提供一种高效的方案。
技术实现思路
本专利技术要解决的技术问题是针对上述现有技术的不足,提供 ...
【技术保护点】
1.一种优化网络多连接的系统,其特征在于包括:基于数据字典的连接预算模块和逻辑图重构模块;/n所述基于数据字典的连接预算模块包括:等深直方图生成单元和统计信息管理单元,并基于数据字典设计连接预算模型来描述数据分布质量s,用于连接逻辑图重构模块;/n所述等深直方图生成单元描述数据源各列的数据分布信息,为后续连接预算模型的计算提供数据来源;/n所述统计信息管理单元管理数据源各列生成的等深直方图和连接中间结果各列生成的等深直方图;/n所述逻辑图重构模块包括:连接顺序重排单元和DAG重构单元;/n所述连接顺序重排单元包括:动态代价估计算法和MMAS算法缩减逻辑计划空间;/n所述动态 ...
【技术特征摘要】
1.一种优化网络多连接的系统,其特征在于包括:基于数据字典的连接预算模块和逻辑图重构模块;
所述基于数据字典的连接预算模块包括:等深直方图生成单元和统计信息管理单元,并基于数据字典设计连接预算模型来描述数据分布质量s,用于连接逻辑图重构模块;
所述等深直方图生成单元描述数据源各列的数据分布信息,为后续连接预算模型的计算提供数据来源;
所述统计信息管理单元管理数据源各列生成的等深直方图和连接中间结果各列生成的等深直方图;
所述逻辑图重构模块包括:连接顺序重排单元和DAG重构单元;
所述连接顺序重排单元包括:动态代价估计算法和MMAS算法缩减逻辑计划空间;
所述动态代价估计算法结合连接预算模型实时计算某时刻所有存在连接关系的数据源两两连接生成的可选代价集合;
所述MMAS算法利用动态代价估计算法在线得到的可选代价集合缩减逻辑计划空间以得到接近最优的多连接逻辑执行序列;
所述DAG重构单元包括:连接查询二叉树生成和DAG整合;
所述连接查询二叉树将得到的多连接逻辑执行序列转换成系统可识别的由结点和信道构成的连接图;
所述DAG整合将用户逻辑图原有非多连接部分与调整后的连接图进行重构以生成新的逻辑图供后续任务继续进行。
2.采用权利要求1所述优化网络多连接的系统进行多连接优化的方法,其特征在于包括如下步骤:
步骤1:基于数据字典设计连接预算模型来描述数据分布质量;
步骤1.1:采用等深直方图H来描述某一属性列数据分布的方式;
步骤1.2:将数据源各列的等深直方图和连接中间结果的各列的等深直方图通过统计信息管理单元进行信息统计;
步骤1.3:设计基于等深直方图H的连接预算模型Estimator,对两个数据源R、S进行连接预算估计;
步骤2:对用户提交多连接任务到系统后生成的逻辑图进行预处理,确定相应的搜索空间并对搜索空间进行符合多连接查询优化特征的编码和关系映射,结合连接预算模型Estimator,生成初始连接代价集IC1;
步骤3:基于连接节点结合连接预算模型Estimator,实现动态代价估计算法,实时计算某i时刻的所有未访达连接节点的连接代价集CLi;
步骤4:采用最大最小蚁群系统MMAS算法结合动态代价估计算法缩减多连接逻辑计划空间,得到连接关系的编码序列Sequence;
步骤5:将得到的连接关系编码序列Sequence转换为多连接的最优逻辑执行计划,遍历多连接编码序列Sequence,重写其对应连接节点的相关属性信息并建立新的连接节点以供后续生成连接查询二叉树,设计一种适用于此场景的连接查询二叉树生成算法;
步骤6:将用户逻辑图的多连接相关子图拆解出来,获取步骤5新生成的连接查询二叉树,然后将其与用户逻辑图多连接子图部分进行整合以生成新的DAG,供优化器后续流程的正常执行。
3.根据权利要求2所述的采用优化网络多连接的系统进行多连接优化的方法,其特征在于所述步骤1.3的过程如下:
步骤1.3.1:获取数据源R和数据源S在同一连接属性上的直方图信息并对应两直方图连接属性的分段区间以相同的连接属性值范围进行分割对齐;
步骤1.3.2:假定区间内数据分布均匀并且满足连接属性域重叠的包含原则,即较小域中的连接属性在较大域中具有匹配,在每个分割后的区间内使用如下公式来估计单个连接条件下的预算;
其中,为数据源R的第i个区间的元组总数,为数据源S的第i个区间的元组总数,dom(a)为数据源R第i个区间中第a列不同域值的数量,dom(b)为数据源S第i个区间中第b列不同域值的数量;
步骤1.3.3:获取分割后区间值分别计算连接预算并进行累加,则可得到单个连接条件下R和S的连接预算估计值,如下所示:
当两个数据源进行连接时存在m个连接条件时,连接预算为:
4.根据权利要求2所述的采用优化网络多连接的系统进行多连接优化的方法,其特征在于所述步骤2的过程如下:
步骤2.1:遍历用户提交的多连接任务生成的逻辑图,为连接节点及其前驱数据源节点分别建立编码并分别生成HashMap映射,使用二维数组A以维护所有连接节点与其两个数据源节点的基于编码的映射关系;<...
【专利技术属性】
技术研发人员:汪诗烨,赵宇海,王国仁,季航旭,李博扬,
申请(专利权)人:东北大学,北京理工大学,
类型:发明
国别省市:辽宁;21
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。