[发明专利]一种基于通用查询语言的查询方法及查询系统在审
申请号: | 202010816565.2 | 申请日: | 2020-08-14 |
公开(公告)号: | CN112000688A | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 郭祖凯;秦建伟 | 申请(专利权)人: | 杭州数云信息技术有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/2453 |
代理公司: | 杭州中港知识产权代理有限公司 33353 | 代理人: | 张晓红 |
地址: | 310000 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 通用 查询 语言 方法 系统 | ||
本发明提供一种基于通用查询语言的查询方法及查询系统,属于查询引擎技术领域。其中的方法包括:将查询内容转换为关系代数表达式,通过对关系代数表达式进行分析,得出关系代数表达式的查询特征;将查询引擎特征与查询特征进行匹配,计算每个查询引擎对于满足查询特征所需要的代价,选择代价最小的查询引擎;通过使用查询引擎绑定的查询优化规则对关系代数表达式进行查询优化,同时进行有关的查询特征改写;将改写后的查询特征调用具体的查询引擎适配服务,将查询特征转换为目标引擎的查询语言,将目标查询语言提交至查询引擎查询获得查询结果;将查询结果写入外部存储模块中,通知用户查询结束,用户通过访问连接获取查询结果。
技术领域
本发明属于查询引擎技术领域,尤其是涉及一种基于通用查询语言的查询方法及查询系统。
背景技术
随着大数据技术的迅猛发展,传统的数据查询方式已不能满足在海量数据下,对数据查询性能的要求。于是,各种基于大数据架构的数据查询引擎应运而生,例如:ElasticSearch、HIVE、NoSQL。
这类专业的大数据查询引擎为解决大数据查询性能起到了非常重要的作用,在一定程度上解决了大数据查询性能的问题。但是,不同的查询引擎其所要解决的问题的专注点是有差异的,所以在不同的场景下,不同的查询引擎其优势是不同的。现有的大数据查询引擎对于数据查询性能的优化,各自有各自的实现方法,各自有各自的关注点,由此所导致的结果是,一种查询引擎只能针对自己关注的场景进行最优的性能优化,优化效果具有局限性。
发明内容
本发明旨在解决上述技术问题,提供一种基于通用查询语言的查询方法及查询系统。
为了达到上述目的,本发明采用如下技术方案:
一种基于通用查询语言的查询方法,包括以下步骤:
S1. 解析结构化查询,将查询内容转换为关系代数表达式,通过对关系代数表达式进行分析,得出关系代数表达式的查询特征;
S2. 将查询引擎的特征与得到的关系代数表达式的查询特征进行匹配,计算每个查询引擎对于满足查询特征所需要的代价,选择代价最小的查询引擎;
S3. 在选择好查询引擎后,通过使用查询引擎绑定的查询优化规则对关系代数表达式进行查询优化,同时对于实际的查询引擎存储结构与用户所看到的视图结构不同的查询特征,进行有关的查询特征改写,正确表达用户的查询要求;
S4. 将改写后的查询特征调用具体的查询引擎适配服务,将查询特征转换为目标引擎的查询语言,将目标查询语言提交至查询引擎查询获得查询结果;
S5. 将查询结果写入外部存储模块中,通知用户查询结束,用户通过访问连接获取查询结果。
作为优选,步骤S2中,查询引擎选择的方法如下:查询引擎选择分为多个阶段,每个阶段通过查询特征与查询引擎特征共同决定查询引擎在该阶段的查询代价,当代价可控时查询引擎选择进入下一阶段,当代价不可控时查询引擎选择不进入下一阶段,在所有阶段计算结束后,选择代价总和最小的查询引擎作为目标查询引擎。
作为优选,所述查询引擎选择的方法还包括:在所有阶段计算结束后,对各查询引擎的代价做回溯比较以选择最优查询引擎。
作为优选,步骤S3中,优化改写的方法包括以下步骤:
a1.加载优化规则,优化规则与实际查询引擎绑定,在实际查询引擎选定后,优化规则跟着确定;
a2.接收查询特征,使用优化规则匹配查询特征,当优化规则适用于查询特征时,使用优化规则对查询特征进行优化和修改;
a3.认为查询特征已是最优时,输出优化后查询特征。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州数云信息技术有限公司,未经杭州数云信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010816565.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种图像识别方法
- 下一篇:风味组合物、电子烟油及其制备方法