[发明专利]一种异构数据源统一联合查询方法在审
申请号: | 201711387611.6 | 申请日: | 2017-12-20 |
公开(公告)号: | CN108052635A | 公开(公告)日: | 2018-05-18 |
发明(设计)人: | 张珂珩;李贤慧;何世春;何阳;孔炜;张高坤 | 申请(专利权)人: | 江苏瑞中数据股份有限公司;南瑞集团有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京知识律师事务所 32207 | 代理人: | 刘丰 |
地址: | 210000 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据源 统一 联合 查询 方法 | ||
本发明属于电力系统数据库技术领域,公开了一种异构数据源统一联合查询方法。本发明获得数据源接口,对标准SQL进行语法解析,生成SQL执行计划,执行SQL计划,将不同数据源的数据加载到内存中,对已加载的数据进行并行计算,返回计算结果到客户端。本发明减少了查询各异构数据源时所需的连接次数,能够在特定业务场景下满足对各异构数据源中进行联合查询的需求。
技术领域
本发明属于电力系统数据库技术领域,具体是涉及一种异构数据源统一联合查询方法。
背景技术
随着智能电网技术的不断发展,电网企业发挥数据资源的战略资产作用,关键在于提升海量数据的管理和支撑能力,实现信息共享,为企业管理提供运营决策分析支持。
然而,电网海量数据多源各异,表现为多种异构数据源并存的局面。所谓异构数据源,既包括Oracle、MySQL、Postgresql、Sybase IQ等传统关系型数据库,同时还包括Cassandra、HBase、Hive等NoSQL及数据仓库。面对庞大的数据量以及各异的数据源,往往需要使用各数据源提供的连接客户端进行单独访问,无法使用一个连接对多个数据源进行同时访问,也无法在一次连接中将不同的数据源中的数据进行关联。因此,传统的访问方式,无法满足多数据源大数据快速实时查询计算的性能要求。
发明内容
本发明目的是:针对现有技术的不足,提供一种异构数据源统一联合查询方法。该方法能够在一次连接中,对不同的异构数据源进行统一访问,甚至可以在一次连接中,对多异构数据源中的不同数据进行关联查询,满足电网大数据查询访问时高性能、易用性、可扩展性的需求。
具体地说,本发明是采用以下技术方案实现的,包括以下步骤:
1)在对各异构数据源进行查询操作前,如果异构数据源支持schema、table、column的时候,遍历异构数据源中所有的schema、table、column以及其他的元数据信息,如果异构数据源不支持schema、table、column的时候,将异构数据源的数据映射到查询中间件中的schema、table、column中,再通过查询中间件中的schema、table、column遍历异构数据源中所有的元数据信息;
2)查询客户端向查询中间件提交查询语句,所述查询语句为需要执行的SQL语句;当得到SQL语句时,查询中间件会将SQL语句组装成一个请求,发送给负责解析请求的解析模块;
3)解析模块对收到的请求进行解析,所述解析包括词法分析、语法分析和语义分析,最终生成整个SQL语句的执行计划;
4)将生成的整个SQL语句的执行计划转换为查询任务,分配空闲的工作节点去执行对应查询任务的计算任务,从而将各异构数据源的数据加载至内存;
5)每当查询任务产生一定的计算结果,查询中间件就向查询客户端返回相应的计算结果,直到查询客户端获得了所有的计算结果。
进一步而言,所述步骤2)中,查询语句从指定的文件或命令行参数获取。
进一步而言,所述步骤2)中,查询中间件会将SQL语句组装成一个RESTful请求。
进一步而言,所述步骤3)中,使用JAVA的Visitor模式对SQL语句进行语法分析。
进一步而言,所述步骤3)中,所述语法分析,是一个递归调用的过程,通过构造相应的节点形成一个抽象语法树。
进一步而言,所述步骤3)中,使用JAVA的Visitor模式对SQL语句进行语义分析。
进一步而言,所述步骤3)中,根据SQL语句的类型生成不同的执行计划。
进一步而言,查询客户端从提交查询语句开始就会不停地从查询中间件获取本次查询的计算结果,直到获得了所有的计算结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏瑞中数据股份有限公司;南瑞集团有限公司,未经江苏瑞中数据股份有限公司;南瑞集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711387611.6/2.html,转载请声明来源钻瓜专利网。