[发明专利]基于SparkSQL的透明分区方法及装置有效
申请号: | 201910122512.8 | 申请日: | 2019-02-18 |
公开(公告)号: | CN109902101B | 公开(公告)日: | 2021-04-02 |
发明(设计)人: | 刘欣然;张鸿;吕雁飞;马秉楠;惠榛;徐庆;兰钢临 | 申请(专利权)人: | 国家计算机网络与信息安全管理中心 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/242 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 李勤媛 |
地址: | 100029*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sparksql 透明 分区 方法 装置 | ||
本发明公开了一种基于SparkSQL的透明分区方法及装置,所述方法包括:在建表语句提交后,获取用户在创建分区表时指定分区字段和采用的分区策略,通过SQL解析器确定透明分区并将透明分区信息进行保存;当用户通过SQL查询数据时,通过SQL解析生成逻辑执行计划;根据逻辑执行计划中的查询条件,并结合保存的透明分区信息计算出本次查询的数据分区,然后通过改写逻辑执行计划并生成优化后的物理执行计划;根据生成的物理执行计划的执行步骤划分出具体的任务,通过所述任务从所述数据分区中读取数据。
技术领域
本发明涉及计算机领域,尤其涉及一种基于SparkSQL的透明分区方法及装置。
背景技术
目前,公知的SparkSQL分区技术是在创建数据表时指定专门的分区字段,数据表映射成HDFS上的一个目录,该表的数据都存放在这个目录下,分区字段数据并不与非分区字段一起存储在HDFS上的数据文件中,而是作为数据表目录的子目录存在于HDFS上。SparkSQL是使用标准的SQL来处理和分析大数据的开源技术,通过创建表来存储结构化数据,使用分区来细化数据存储,将数据划分到不同分区后存储在HDFS上不同的子目录中,子分区名就是子目录名。本专利设计一种基于现有SparkSQL分区的透明分区技术,能将用户SQL中的非分区过滤条件自动转换成分区过滤条件,从而优化SparkSQL的查询速度。
现有的SparkSQL分区技术存在如下的缺陷:
1.无法将非分区过滤条件自动映射成分区过滤条件。使用数据的业务人员在不了解Spark Partition技术,或者知道Spark Partition技术但是不知道自己要查询的数据究竟落在那些分区目录中,这时候业务人员只能通过全表扫描的方式把表中所有的数据都取出来过滤一遍才能准确找到自己需要的数据,每一次用户提交SQL查询分析数据时,不能充分使用数据分区缩小数据的查询范围从而导致查询响应慢,并且当表中数据量过大时容易耗尽系统计算资源。
2.分区格式不一致容易导致数据存储和管理不规范。现有的分区技术只对分区字段类型进行定义,并不会进一步规范分区的具体格式,比如分区字段类型为String,则任何String类型的分区都能作为HDFS上的子目录而存在,混乱的分区格式会严重增加大数据管理成本。
3.不方便过期数据删除。数据的日益增长必将导致历史数据的清除以释放存储空间,传统SparkSQL分区因分区格式不规范会导致后期删除过期数据时经常需要人工干预,而不能很好的定义一套规则来定期删除过期的数据,经常性的人工删除数据会给数据的安全性造成很大影响,甚至可能造成不可挽回的损失。
发明内容
本发明实施例提供一种基于SparkSQL的透明分区方法及装置,用以解决现有技术中的上述问题。
本发明实施例提供一种基于SparkSQL的透明分区方法,包括:
在建表语句提交后,获取用户在创建分区表时指定分区字段和采用的分区策略,通过SQL解析器确定透明分区并将透明分区信息进行保存;
当用户通过SQL查询数据时,通过SQL解析生成逻辑执行计划;
根据逻辑执行计划中的查询条件,并结合保存的透明分区信息计算出本次查询的数据分区,然后通过改写逻辑执行计划并生成优化后的物理执行计划;
根据生成的物理执行计划的执行步骤划分出具体的任务,通过所述任务从所述数据分区中读取数据。
优选地,通过SQL解析器将分区信息保存具体包括:
通过SQL解析器将分区信息保存至Hive Metastore中。
优选地,通过SQL解析生成逻辑执行计划具体包括:
通过SQL解析进行语法检查、语义分析、和逻辑计划优化,生成逻辑执行计划。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家计算机网络与信息安全管理中心,未经国家计算机网络与信息安全管理中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910122512.8/2.html,转载请声明来源钻瓜专利网。