[发明专利]一种查询语句的优化方法和装置有效
申请号: | 201410711901.1 | 申请日: | 2014-11-28 |
公开(公告)号: | CN105701128B | 公开(公告)日: | 2019-03-08 |
发明(设计)人: | 李丰;王蕾;张赟;冯晓兵 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 查询 语句 优化 方法 装置 | ||
本发明实施例公开了一种查询语句的优化方法和装置,涉及数据查询技术领域,用以解决由于需要缓存历史逻辑查询树及其对应的查询结果而导致的占用大量的存储空间的问题。本发明实施例提供的查询语句的优化方法包括:接收n个查询语句;将所述n个查询语句生成n个逻辑查询树;根据预设规则为所述n个逻辑查询树中的操作符对应的操作数添加版本号;对所对应的操作数的版本号相同、且所属不同逻辑查询树的操作符进行优化,以减少所述n个逻辑查询树生成的物理任务的数量。本发明实施例提供的技术方案可用于大数据查询系统对数据仓库进行批量查询的过程中。
技术领域
本发明涉及数据查询技术领域,尤其涉及一种查询语句的优化方法和装置。
背景技术
目前,大数据查询系统(例如:Hive,Shark,Impala等)解析查询语句和优化查询语句的基本单位为单个查询语句。大数据查询系统解析查询语句的过程一般包括:大数据查询系统将查询语句生成逻辑查询树(也称为逻辑查询计划),将逻辑查询树生成该大数据查询系统中的查询执行引擎(例如,MapReduce、Spark等)可识别的物理查询树(也称为物理查询计划);该查询执行引擎执行物理查询树中的物理任务,生成查询结果;其中,逻辑查询树由多个操作符构成。
为了提高查询效率,一种查询语句的优化方法包括:大数据查询系统通过比较当前查询语句对应的逻辑查询树中的操作符与缓存的历史逻辑查询树中的操作符,确定出当前查询语句对应的逻辑查询树与历史逻辑查询树中可复用查询结果的目标操作符;将历史逻辑查询树中的目标操作符对应的查询结果作为当前查询语句中的目标操作符对应的查询结果。另外,该方法还可以包括:缓存当前查询语句对应的逻辑查询树及其对应的查询结果,以供大数据查询系统在对下一个查询语句进行优化的过程中使用。
上述查询语句的优化方法通过复用历史逻辑查询树对应的查询结果来提高查询效率,这样,当查询语句的数量较多时,需要占用大量的存储空间来缓存历史逻辑查询树及其对应的查询结果。
发明内容
本发明实施例提供一种查询语句的优化方法和装置,用以解决由于需要缓存历史逻辑查询树及其对应的查询结果而导致的占用大量的存储空间的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种查询语句的优化方法,包括:
接收n个查询语句;其中,n≥2,n为整数;
将所述n个查询语句生成n个逻辑查询树;
根据预设规则为所述n个逻辑查询树中的操作符对应的操作数添加版本号;其中,所述预设规则包括:不同操作数的版本号不同,操作符每次所定值的操作数的版本号不同,不同操作符组中的操作符对应的同一操作数的版本号不同;所述操作符组是指以对所述同一操作数进行定值的操作符为界限对所述n个逻辑查询树中的操作符进行分组后得到的一个分组;
对所对应的操作数的版本号相同、且所属不同逻辑查询树的操作符进行优化,以减少所述n个逻辑查询树生成的物理任务的数量。
结合第一方面,在第一种可能的实现方式中,所述根据预设规则为所述n个逻辑查询树中的操作符对应的操作数添加版本号,包括:
为所述n个逻辑查询树中的操作符每次所定值的操作数添加唯一的版本号;
为目标操作符组中的操作符对应的目标操作数添加目标版本号;其中,所述目标操作符组中的首个操作符为对操作数进行定值的操作符,所述目标操作数为所述目标操作符组中的首个操作符所定值的操作数;所述目标版本号与该目标操作符组中的首个操作符所定值的操作数的版本号相同;
为尚未拥有版本号的同一操作数添加唯一的版本号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410711901.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于接近度的临时音频共享
- 下一篇:一种数据处理方法、装置及系统