[发明专利]一种分布式SQL处理方法及系统有效
申请号: | 201711260747.0 | 申请日: | 2017-12-04 |
公开(公告)号: | CN107967335B | 公开(公告)日: | 2020-10-16 |
发明(设计)人: | 石宣化;金海;王斐 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/25 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 廖盈春;李智 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 sql 处理 方法 系统 | ||
1.一种分布式SQL处理方法,其特征在于,包括:
接收用户提交的应用程序,并将提交的应用程序存入应用队列;
分析应用队列里面每个应用程序的代码,每个应用程序包括多个中间结果,将每个应用程序中需要在该应用程序中重复使用的中间结果做第一标记,将每个应用程序中需要在其之后的应用程序中重复使用的中间结果做第二标记;
在保证数据一致性的同时,完成各个工作节点上并行运行应用队列中的应用程序,并根据所述第一标记和第二标记直接利用各标记对应的中间结果,提高运行速度;
预测当前运行阶段stage中最大需要执行内存:通过训练历史实验中取得的样本数据,预测当前stage中最大需要执行内存;通过多组实验统计需要的特征值和预测值,将样本数据划分为训练集和测试集,通过特征筛选和训练,找到最相关的一些特征,来预测当前stage需要的最大执行内存,从而得到当前阶段可以供第一标记的中间结果使用的最大内存空间;
根据当前stage需要的最大执行内存将第一标记的中间结果存入内存:预测当前stage所需最大执行内存,从而得出有多少内存可以用于缓存第一标记的中间结果,如果内存不充足,则需要对当前存储的中间结果进行驱逐,驱逐的方式是通过比较每个中间结果重新计算所需要时间和其占内存大小的比,来得出内存收益,从而驱逐出内存收益小的中间结果,在内存充足后,根据序列化缓存与非序列化缓存所在存储时间与需要使用第一标记的中间结果时的响应时间与当前内存情况进行分析得出合适的缓存方式,以缓存第一标记的中间结果。
2.根据权利要求1所述的分布式SQL处理方法,其特征在于,还包括:
通过比较存储和重复计算的成本来选择是否将第二标记的中间结果存入磁盘来供后续应用程序使用。
3.根据权利要求1或2所述的分布式SQL处理方法,其特征在于,所述应用程序为SparkSQL应用程序,所述应用程序的中间结果为弹性分布式数据集RDD。
4.一种分布式SQL处理系统,其特征在于,包括:用户程序提交模块、程序分析模块以及执行模块;
所述用户程序提交模块,用于接收用户提交的应用程序,并将提交的应用程序存入应用队列;
所述程序分析模块,用于分析应用队列里面每个应用程序的代码,每个应用程序包括多个中间结果,将每个应用程序中需要在该应用程序中重复使用的中间结果做第一标记,将每个应用程序中需要在其之后的应用程序中重复使用的中间结果做第二标记;
所述执行模块,用于在保证数据一致性的同时,完成各个工作节点上并行运行应用队列中的应用程序,并根据所述第一标记和第二标记利用各标记对应的中间结果,提高运行速度;
还包括:机器学习模块,用于预测当前运行阶段stage中最大需要执行内存:通过训练历史实验中取得的样本数据,预测当前stage中最大需要执行内存;通过多组实验统计需要的特征值和预测值,将样本数据划分为训练集和测试集,通过特征筛选和训练,找到最相关的一些特征,来预测当前stage需要的最大执行内存,从而得到当前阶段可以供第一标记的中间结果使用的最大内存空间;
所述应用程序为SparkSQL应用程序,所述应用程序的中间结果为弹性分布式数据集RDD;
还包括:RDD管理模块,用于根据当前stage需要的最大执行内存将第一标记的中间结果存入内存,根据当前stage所需最大执行内存,从而得出有多少内存可以用于缓存第一标记的中间结果,如果内存不充足,则需要对当前存储的中间结果进行驱逐,驱逐的方式是通过比较每个中间结果重新计算所需要时间和其占内存大小的比,来得出内存收益,从而驱逐出内存收益小的中间结果,在内存充足后,根据序列化缓存与非序列化缓存所在存储时间与需要使用第一标记的中间结果时的响应时间与当前内存情况进行分析得出合适的缓存方式,以缓存第一标记的中间结果。
5.根据权利要求4所述的分布式SQL处理系统,其特征在于,所述RDD管理模块,用于通过比较存储和重复计算的成本来选择是否将第二标记的中间结果存入磁盘来供后续应用程序使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711260747.0/1.html,转载请声明来源钻瓜专利网。