[发明专利]集群数据库系统环境下的数据查询解析方法在审
申请号: | 201310274920.8 | 申请日: | 2013-07-02 |
公开(公告)号: | CN103310011A | 公开(公告)日: | 2013-09-18 |
发明(设计)人: | 李晋钢;宋怀明;苗艳超;刘新春;邵宗有 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京德恒律治知识产权代理有限公司 11409 | 代理人: | 章社杲;孙征 |
地址: | 100193 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 集群 数据库 系统 环境 数据 查询 解析 方法 | ||
1.一种集群数据库系统环境下的数据查询解析方法,包括:
接收到来自客户端的为第一结构化查询语言SQL语句的查询请求后,对所述第一SQL语句进行语法解析,使得语法解析后的第一SQL语句为以SelectStmt结构体表示的语法树,其中,所述SelectStmt结构体包括Select链表、From链表、Where链表、Groupby链表、Having链表、Orderby链表和Union链表;
对所述语法树进行分析并构建相应的查询任务树;
根据预确定的优化规则对所述查询任务树进行优化并生成查询任务流;其中:
所述查询任务树包括由多层级构成的多个查询任务节点,同一层级包括一个或多个查询任务节点,其中,一个查询任务节点对应一个查询任务,以及,同一层级的多个查询任务节点生成为相互间并行执行的查询任务。
2.根据权利要求1所述的数据查询解析方法,其特征在于,对所述语法树进行分析并构建相应的查询任务树包括:
在判断出第一查询任务节点含小数据表嵌套子查询时,提取所述第一查询任务节点中小数据表嵌套子查询语法树并构建为所述第一查询任务节点下的子节点,将查询结果集分发类型标记为全复制ALL。
3.根据权利要求1所述的数据查询解析方法,其特征在于,对所述语法树进行分析并构建相应的查询任务树包括:
在判断出第二查询任务节点含大数据表嵌套子查询时,提取所述第二查询任务节点中大数据表嵌套子查询语法树并构建为所述第二查询任务节点下的子节点,将查询结果集分发类型标记为重划分HASH。
4.根据权利要求2或3所述的数据查询解析方法,其特征在于,根据预定的优化规则对所述查询任务树进行优化并生成查询任务流,包括:
判断未处理的查询任务节点中是否有嵌套查询;
在判断为是时,依次判断所述Select链表、From链表、Where链表、Having链表和Union链表中是否有嵌套查询;
对判断出有嵌套查询的链表构建对应的子查询任务树,并将所构建的子查询任务树插入到查询任务队列中,以及设定将与所述子查询任务树对应的子查询结果更新到该有嵌套查询的链表的查询结果组中。
5.根据权利要求4所述的数据查询解析方法,其特征在于,所述预定的优化规则包括以下之一或任意组合:
每一个查询任务或子查询任务针对预设的一组数据库节点进行查询,其中,每一数据大表在该组数据库节点中的各数据库节点的分布规则相同,每一数据小表在该组数据库节点中的各数据库节点上设置有数据副本;
将过滤后的查询要求下发给子查询任务节点;
属于一个数据表的子查询结果集采用统一的别名。
6.根据权利要求5所述的数据查询解析方法,其特征在于,对判断出有嵌套查询的链表构建对应的子查询任务树,并将所构建的子查询任务树插入到查询任务队列中,以及设定将与所述子查询任务树对应的子查询结果更新到该有嵌套查询的链表的查询结果组中,包括:
判断所述嵌套查询是否与外部数据表关联,
在判断出有关联时,构建子查询任务树节点,作为外部数据表查询任务树节点下的子节点,以及根据所述外部数据表的属性标注该查询结果集分发类型;
在判断出无关联时,构建子查询任务树节点,作为外部数据表查询任务树节点下的子节点,以及将该查询结果集分发类型标注为赋值方式ASSIGN。
7.根据权利要求6所述的数据查询解析方法,其特征在于,设定将与所述子查询任务树对应的子查询结果更新到该有嵌套查询的链表的查询结果组中,包括:
在对子查询结果集采用统一的别名时,将所述子查询结果集的第一属性信息更新到相对应的后续查询子任务中,其中,所述子查询结果集的第一属性信息包括子查询结果集列以及子查询结果集别名;或者,
在对子查询结果采用中间变量存储时,将所述子查询结果的第二属性信息更新到相对应的链表的后续查询任务中,其中,所述子查询结果集的第二属性信息包括中间结果集名。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310274920.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:服务搜索方法、系统和搜索服务器
- 下一篇:文档加载方法及系统