一种混合异构数据源统一查询系统及分布式查询方法技术方案

技术编号:16837550 阅读:137 留言:0更新日期:2017-12-19 20:00
本发明专利技术涉及一种混合异构数据源统一查询系统及分布式查询方法,支持跨域、跨源、异构的数据系统,实现统一数据访问查询,实现高性能地访问各种数据源的分布式数据访问和处理平台;并且所设计方案不仅实现了后台各种数据库和海量数据存储的统一访问,隔离了应用和数据库/存储的直接连接,在一定程度上提高了底层数据的安全性;而且将多个物理数据库/存储的表按照业务的需要抽象为一个或多个逻辑数据库,为应用开发提供了统一的数据服务;本发明专利技术还提供了大数据分析服务的抽象,极大地减少了企业进行数据转移、复制和转换的工作,解决了企业进行应用开发时大量数据复制造成的资源浪费、效率低下、数据安全等问题。

A hybrid heterogeneous data source unified query system and distributed query method

The invention relates to a hybrid heterogeneous data source unified query system and distributed query method, data support system of cross domain, cross source, heterogeneous, unified data access query, to achieve high performance access to various data sources distributed data access and processing platform; and the design scheme not only realizes the unified access background database and various massive data storage, isolation application and database / storage is directly connected to a certain extent to improve the security of the underlying data; and a plurality of physical database / table stored in accordance with the needs of the business abstraction into one or more logical database, it provides a unified data service for the application of the invention; also provides data analysis services abstraction, greatly reduces the enterprise data transfer, copy and conversion work, solve the enterprise Many problems such as waste of resources, low efficiency and data security caused by large amount of data replication in the development of application.

【技术实现步骤摘要】
一种混合异构数据源统一查询系统及分布式查询方法
本专利技术涉及一种混合异构数据源统一查询系统及分布式查询方法,属于信息采集技术及数据库

技术介绍
随着IT技术的飞速发展,社会的信息化进程也在逐渐加快。社会信息化一方面给人们带来了极大的方便和快捷,另一方面也带来了一些问题和挑战。其中“信息孤岛”和数据访问就是较为突出的两个问题。解决“信息孤岛”问题的难点在于如何使用户以透明的方式低代价、高效率地操作异构数据;解决数据访问问题的难点在于如何提高数据资源的访问效率及安全性能。针对这两个问题,已有的解决方法都存在着一定的不足之处,例如数据没有统一的标准进行表示,硬编码过多,模块可重用度不高等,这些不足都直接制约着企业级应用的开展。
技术实现思路
本专利技术所要解决的技术问题是提供一种能够针对跨域、跨源、异构数据,实现统一查询的混合异构数据源统一查询系统。本专利技术为了解决上述技术问题采用以下技术方案:本专利技术设计了一种混合异构数据源统一查询系统,包括请求接收模块、数据库映射模块和数据整合模块;数据库映射模块分别与请求接收模块、数据整合模块进行信息交互;其中,数据库映射模块分别与预设各个关系数据库相连接通信,数据库映射模块针对所有关系数据库中的物理表,按预设逻辑关系,构建所对应的各个逻辑虚拟表,组建逻辑虚拟数据库;并且数据库映射模块针对各个逻辑虚拟表分别与其所包含关系数据库中物理表数据的映射关系,构建元数据信息;请求接收模块用于接收指定类型关系数据库的查询语句,并发送给数据库映射模块;以及请求接收模块用于接收来自数据库映射模块的查询结果;数据整合模块用于根据数据库映射模块所组建逻辑虚拟数据库中的各个逻辑虚拟表,以及元数据信息,针对数据库映射模块所接收到的查询语句进行解析,获得分别对应于所指定各个关系数据库中物理表的各条查询语句,并针对相应各关系数据库中物理表进行查询,获得查询结果,然后交由数据库映射模块发送给请求接收模块。作为本专利技术的一种优选技术方案:所述分别与数据库映射模块相连接通信的预设各个关系数据库,包括Oracl数据库、DB2数据库、Mysql数据库、SQLServer数据库中的一种关系数据库,或多种关系数据库。作为本专利技术的一种优选技术方案:所述请求接收模块所接收指定类型关系数据库的查询语句为SQL查询语句。本专利技术所述一种混合异构数据源统一查询系统采用以上技术方案与现有技术相比,具有以下技术效果:本专利技术设计的一种混合异构数据源统一查询系统,支持跨域、跨源、异构的数据系统,实现统一数据访问查询,实现高性能地访问各种数据源的分布式数据访问和处理平台,为处理多种平台上的关系和非关系型数据提供了统一的访问方式和数据处理服务;并且所设计方案不仅实现了后台各种数据库和海量数据存储的统一访问,隔离了应用和数据库/存储的直接连接,在一定程度上提高了底层数据的安全性;而且支持跨库查询、聚合查询、跨库事务等应用场景,通过将多个物理数据库/存储的表按照业务的需要抽象为一个或多个逻辑数据库,为应用开发提供了统一的数据服务;本专利技术还提供了大数据分析服务的抽象,极大地减少了企业进行数据转移、复制和转换的工作,解决了企业进行应用开发时大量数据复制造成的资源浪费、效率低下、数据安全等问题。与上述相对应,本专利技术还要解决的技术问题是提供一种能够针对跨域、跨源、异构数据,实现统一查询的基于混合异构数据源统一查询系统的分布式查询方法。本专利技术为了解决上述技术问题采用以下技术方案:本专利技术设计了一种基于混合异构数据源统一查询系统的分布式查询方法,所述请求接收模块接收指定类型关系数据库的查询语句,并发送给所述数据库映射模块;由所述数据整合模块采用分布式架构,按如下步骤,根据数据库映射模块所接收到的查询语句进行查询操作,获得查询结果,然后交由数据库映射模块发送给请求接收模块;其中,数据整合模块所采用的分布式架构包括一个主节点和若干从节点;步骤A.数据整合模块针对数据库映射模块所接收到的查询语句进行分解,获得各个操作指令;步骤B.数据整合模块针对所获各个操作指令,将直接对应于关系数据库物理表的操作指令划分至从节点,然后将其余操作指令划分至主节点;步骤C.数据整合模块根据数据库映射模块所组建逻辑虚拟数据库中的各个逻辑虚拟表,以及元数据信息,针对数据库映射模块所接收到的查询语句,按各个节点分别所对应的操作指令,分别进行解析,获得各个从节点分别对应相应关系数据库中物理表的查询语句,以及主节点所对应的查询语句;步骤D.由各个从节点分别按其所对应的查询语句,针对相应关系数据库中的物理表进行查询,获得各个一级查询结果,组建一级查询结果集合;步骤E.由主节点按其所对应的查询语句,针对一级查询结果集合执行查询操作,获得查询结果,交由数据库映射模块发送给请求接收模块。作为本专利技术的一种优选技术方案,所述步骤D至步骤E包括如下步骤:步骤DE1.由各个从节点分别按其所对应的查询语句,针对相应关系数据库中的物理表进行查询,获得分别对应相应各个关系数据库的一级查询结果,并初始化n为1,然后进入步骤DE2;步骤DE2.选取各个一级查询结果中的第n条数据,组建局部一级查询结果集合,并进入步骤DE3;步骤DE3.由主节点按其所对应的查询语句,针对局部一级查询结果集合执行查询操作,获得局部查询结果,并进入步骤DE4;步骤DE4.分别获得各个一级查询结果中的数据条数,并选择最大条数作为判断阈值,判断n是否等于该判断阈值,是则进入步骤DE5;否则用n所对应值加1的结果,针对n进行更新,并返回步骤DE2;步骤DE5.针对所有局部查询结果,组建查询结果,交由数据库映射模块发送给请求接收模块。本专利技术所述一种基于混合异构数据源统一查询系统的分布式查询方法采用以上技术方案与现有技术相比,具有以下技术效果:本专利技术设计的一种基于混合异构数据源统一查询系统的分布式查询方法,支持跨域、跨源、异构的数据系统,实现统一数据访问查询,实现高性能地访问各种数据源的分布式数据访问和处理平台,为处理多种平台上的关系和非关系型数据提供了统一的访问方式和数据处理服务;并且所设计方案不仅实现了后台各种数据库和海量数据存储的统一访问,隔离了应用和数据库/存储的直接连接,在一定程度上提高了底层数据的安全性;而且支持跨库查询、聚合查询、跨库事务等应用场景,通过将多个物理数据库/存储的表按照业务的需要抽象为一个或多个逻辑数据库,为应用开发提供了统一的数据服务;本专利技术还提供了大数据分析服务的抽象,极大地减少了企业进行数据转移、复制和转换的工作,解决了企业进行应用开发时大量数据复制造成的资源浪费、效率低下、数据安全等问题。附图说明图1是本专利技术所设计一种混合异构数据源统一查询系统的结构示意图;图2是本专利技术设计中数据库映射示意图;图3是应用本专利技术设计实施例中查询计划示意图。具体实施方式下面结合说明书附图对本专利技术的具体实施方式作进一步详细的说明。本专利技术设计了一种混合异构数据源统一查询系统,如图1所示,包括请求接收模块、数据库映射模块和数据整合模块;如图2所示,数据库映射模块分别与请求接收模块、数据整合模块进行信息交互;其中,数据库映射模块分别与预设各个关系数据库相连接通信,数据库映射模块针对所有关系数据库中的物理表,按预设逻辑关系,构建所对本文档来自技高网...
一种混合异构数据源统一查询系统及分布式查询方法

【技术保护点】
一种混合异构数据源统一查询系统,其特征在于:包括请求接收模块、数据库映射模块和数据整合模块;数据库映射模块分别与请求接收模块、数据整合模块进行信息交互;其中,数据库映射模块分别与预设各个关系数据库相连接通信,数据库映射模块针对所有关系数据库中的物理表,按预设逻辑关系,构建所对应的各个逻辑虚拟表,组建逻辑虚拟数据库;并且数据库映射模块针对各个逻辑虚拟表分别与其所包含关系数据库中物理表数据的映射关系,构建元数据信息;请求接收模块用于接收指定类型关系数据库的查询语句,并发送给数据库映射模块;以及请求接收模块用于接收来自数据库映射模块的查询结果;数据整合模块用于根据数据库映射模块所组建逻辑虚拟数据库中的各个逻辑虚拟表,以及元数据信息,针对数据库映射模块所接收到的查询语句进行解析,获得分别对应于所指定各个关系数据库中物理表的各条查询语句,并针对相应各关系数据库中物理表进行查询,获得查询结果,然后交由数据库映射模块发送给请求接收模块。

【技术特征摘要】
1.一种混合异构数据源统一查询系统,其特征在于:包括请求接收模块、数据库映射模块和数据整合模块;数据库映射模块分别与请求接收模块、数据整合模块进行信息交互;其中,数据库映射模块分别与预设各个关系数据库相连接通信,数据库映射模块针对所有关系数据库中的物理表,按预设逻辑关系,构建所对应的各个逻辑虚拟表,组建逻辑虚拟数据库;并且数据库映射模块针对各个逻辑虚拟表分别与其所包含关系数据库中物理表数据的映射关系,构建元数据信息;请求接收模块用于接收指定类型关系数据库的查询语句,并发送给数据库映射模块;以及请求接收模块用于接收来自数据库映射模块的查询结果;数据整合模块用于根据数据库映射模块所组建逻辑虚拟数据库中的各个逻辑虚拟表,以及元数据信息,针对数据库映射模块所接收到的查询语句进行解析,获得分别对应于所指定各个关系数据库中物理表的各条查询语句,并针对相应各关系数据库中物理表进行查询,获得查询结果,然后交由数据库映射模块发送给请求接收模块。2.根据权利要求1所述一种混合异构数据源统一查询系统,其特征在于:所述分别与数据库映射模块相连接通信的预设各个关系数据库,包括Oracl数据库、DB2数据库、Mysql数据库、SQLServer数据库中的一种关系数据库,或多种关系数据库。3.根据权利要求1所述一种混合异构数据源统一查询系统,其特征在于:所述请求接收模块所接收指定类型关系数据库的查询语句为SQL查询语句。4.一种基于权利要求1至3中任意一项所述一种混合异构数据源统一查询系统的分布式查询方法,其特征在于:所述请求接收模块接收指定类型关系数据库的查询语句,并发送给所述数据库映射模块;由所述数据整合模块采用分布式架构,按如下步骤,根据数据库映射模块所接收到的查询语句进行查询操作,获得查询结果,然后交由数据库映射模块发送给请求接收模块;其中,...

【专利技术属性】
技术研发人员:王继业曾楠郝悍勇陈志刚谭晶
申请(专利权)人:国网江苏省电力公司信息通信分公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1