[发明专利]一种基于Spark SQL的计算下推查询优化方法在审
申请号: | 202110885275.8 | 申请日: | 2021-08-03 |
公开(公告)号: | CN113704296A | 公开(公告)日: | 2021-11-26 |
发明(设计)人: | 魏力 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;H04L29/06;G06F9/50 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 冯春连 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 spark sql 计算 下推 查询 优化 方法 | ||
1.一种基于Spark SQL的计算下推查询优化方法,其特征在于,其实现涉及ZNBase数据库的存储层和ZBSpark客户端;
所述ZNBase数据库的存储层用于提供数据的集中存储和管理,可以多节点部署,并支持分布式管理;
所述ZBSpark客户端基于Apace Spark平台,用于通过SSL gRPC协议与ZNBase数据库的存储层进行数据传输;
所述ZBSpark客户端中构建有下推因子扩展器PushDownExpr,在有Spark SQL语句输入所述ZBSpark客户端时,所述ZBSpark客户端首先对输入的Spark SQL语句进行词法解析、语法分析以及语义分析,随后生成并执行逻辑计划和物理计划,在执行逻辑计划和物理计划过程中,通过改写可扩展优化器Catalyst将操作符进行规则匹配,进而添加到下推因子扩展器PushDownExpr中,再随后,所述ZBSpark客户端通过SSL gRPC协议将下推因子扩展器PushDownExpr传输到ZNBase数据库的存储层,最后,所述ZNBase数据库的存储层通过下推因子扩展器PushDownExpr完成数据预处理,并返回至ZBSpark客户端。
2.根据权利要求1所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,在所述ZBSpark客户端搭建spark集群,集群节点上运行有ZBSpark Driver进程和ZBSparkExecutor进程,所述ZBSpark客户端通过ZBSpark Driver进程创建一批tasks,并将这一批tasks分配到不同ZBSpark Executor进程中执行,每个ZBSpark Executor进程持有一个线程池,每个线程执行一个task,去ZNBase数据库的存储层读取数据。
3.根据权利要求2所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,所述ZBSpark客户端搭建spark集群时,要设置master节点和worker节点,一个集群有多个master节点和多个worker节点,ZBSpark Driver进程运行在master节点/worker节点上,ZBSpark Executor进程运行在worker节点上,且一个worker节点上可以部署多个ZBSparkExecutor进程。
4.根据权利要求3所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,所述ZBSpark客户端通过ZBSpark Driver进程首先创建sparkContext对象,随后向集群管理者申请资源,再随后调度和执行应用程序,读取ZNBase数据库存储层的元数据信息,进而将应用程序分成多个stage,为每个stage创建一批tasks,最后将这些tasks分配到各个ZBSpark Executor中执行。
5.根据权利要求4所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,所述ZBSpark客户端通过ZBSpark Driver进程向集群管理者申请spark应用所需的资源后,集群管理者会根据spark应用所设置的参数在各个worker节点上分配一定数量的ZBSparkExecutor进程,每个ZBSpark Executor进程都占用一定数量的cpu和memory;
ZBSpark Driver进程申请到spark应用所需的资源以后,即开始调度和执行应用程序,读取ZNBase数据库存储层的元数据信息。
6.根据权利要求1所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,所述下推因子扩展器PushDownExpr中包括投影下推、条件下推、聚合下推、order by/limit下推四种方式;
所述下推因子扩展器PushDownExpr通过至少一种下推方式完成数据预处理。
7.根据权利要求6所述的一种基于Spark SQL的计算下推查询优化方法,其特征在于,所述投影下推即列裁剪,即下推因子扩展器PushDownExpr在返回ZBSpark客户端的数据中去掉对后续操作没用的列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110885275.8/1.html,转载请声明来源钻瓜专利网。