用于多级数据库的中间件和多级数据库系统技术方案

技术编号:15225271 阅读:61 留言:0更新日期:2017-04-27 03:51
本发明专利技术公开了用于多级数据库的中间件和多级数据库系统。该中间件包括:任务接收模块,用于接收来自于上一级节点的任务请求,其中上一级节点为客户端或其他中间件;任务分解模块,基于所述任务请求的语义分析将所述任务请求分解为一个或多个子任务;任务分发模块,查询执行所述子任务的下一级节点并相应地转发,其中,下一级节点为数据库实例或其它中间件;以及任务执行结果统计模块,用于从所述下一级节点汇集所述任务请求的执行结果并反馈至所述上一级节点。根据本发明专利技术的中间件技术可以跨域部署多级数据库系统,从而能够提高大数据处理的能力以及满足众多分级多数据中心的数据管理需要。

【技术实现步骤摘要】

本专利技术涉及数据库技术,更具体的涉及用于多级数据库的中间件和多级数据库系统。
技术介绍
近年来,随着信息技术的不断发展,数据增长呈现爆炸式趋势,海量结构化数据日益占据重要的比重,传统的关系模型和关系数据库已经不能满足当前大数据时代背景下海量结构化数据的存储管理和分析的需要。目前,对于大数据的存储、查询和分析方面,存在的主要问题是单个库的数据量太大,单台数据量服务器所承载的压力过大。针对上述问题,现有技术的主要解决方法有:向上扩展,即不断增加硬件性能,这种方式只能暂时解决问题,当业务量不断增长时,不能从根本上解决问题,特别是对于数据量呈指数级上升的情况;水平扩展,即直接增加服务器,把数据库放到不同服务器上,在应用程序到数据库之间增加中间件,中间件作为应用程序和数据库之间的桥梁,中间件搜索匹配的数据库连接,所起的作用仅仅是路由功能。在这种情况下,中间件节点的压力增加,能够处理的数据量有限。此外,众多学者对于数据库系统研究主要针对其操作过程、管理算法或缓存结构等方面提出了改进方案,而且,都是基于两层级的架构,即数据服务层和数据层。然而,在实际应用中,更普遍存在的是分多级的机构或组织,例如,省级、市级、县级政府部门,大型多分支的公司企业等。对于这些分级的机构或组织,它们的分级结构通常是多级的树状结构,每级部门拥有各自独立的数据,而每一级的数据模式基本类似甚至相同。这些地域分散的数据有集中管理和分析的需求。因此,两级架构的数据库不能适用于这种分多级的现实需求,并且,受中心服务节点的性能限制,两级架构的数据库存在扩展性方面的限制。综上所述,现有技术中的数据库系统在大数据存储、管理方面存在缺陷,同时也不能满足跨域部署多分级数据库系统的需求。
技术实现思路
因此,本专利技术的目的在于克服上述现有技术的缺陷,提供一种实现多级数据库系统的中间件技术,以提供跨域部署可管理大规模数据的数据库系统。根据本专利技术的一个方面,提供了一种用于多级数据库的中间件。该中间件包括:任务接收模块:用于接收来自于上一级节点的任务请求,其中,所述上一级节点为客户端或其它中间件;任务分解模块:基于所述任务请求的语义分析将所述任务请求分解为一个或多个子任务;任务分发模块:查询执行所述子任务的下一级节点并进行相应地转发,其中,所述下一级节点为数据库实例或其它中间件;任务执行结果汇集模块,用于从所述下一级节点汇集所述任务请求的执行结果并反馈给所述上一级节点。优选地,所述任务请求包括数据查询、数据分析、数据加载、数据删除或数据更新。优选地,所述任务分发模块基于分片策略来进行相应地数据转发,所述分片策略用于确定执行所述子任务的下一级节点。优选地,所述中间件还包括本地任务执行模块,用于执行接收到的本地任务请求。优选地,所述中间件与下一级节点之间采用标准的JDBC接口进行通信。优选地,所述中间件还包括任务重启模块,用于当所述任务请求执行失败时,重启预置的副本数据。根据本专利技术的第二方面,提供了一种多级数据库系统。该数据库系统包括,设置有数据库应用程序的全局客户端和数据库实例节点,其特征在于,该系统还包括与所述全局客户端和数据库实例节点进行通信的中间件系统,所述中间件系统包括一个或多个设置了根据本专利技术的中间件的节点。优选地,所述中间件系统的一个或多个节点之间采用树状结构连接。优选地,具有连接的中间件系统的节点之间采用标准的JDBC接口进行通信。优选地,所述多级数据库系统还包括本地客户端,所述本地客户端与所述中间件系统的一个或多个中间件节点连接,用于管理本地的任务请求。与现有技术相比,本专利技术的优点在于:根据本专利技术的中间件,可以部署多级数据库系统,以满足多级分布式数据管理的需求。此外,通过搭建树状结构的多级数据库管理系统,能够扩展数据库以实现海量数据处理以及数据库的跨域部署,同时,通过部署多分级的树状结构,可以减轻各级中间件节点的处理任务,从而增强了数据库系统的可扩展性。附图说明以下参照附图对本专利技术实施例作进一步说明,其中:图1示出了根据本专利技术一个实施例的多级数据库系统的部署示意图。图2示出了根据本专利技术一个实施例的中间件的功能模块示意图。图3示出了根据本专利技术另一实施例的多级数据库系统执行数据查询分析任务的过程示意图。图4示出了根据图3的多级数据库系统执行数据加载任务的过程示意图。图5示出了利用本专利技术的中间件是实现多级数据库的一个应用实例图。具体实施方式现在将参照附图来详细描述本专利技术的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本专利技术的范围。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本专利技术及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1示出了根据本专利技术一个实施例的多级数据库系统的部署示意图。图1所示的多级数据库系统利用根据本专利技术的中间件进行部署。该数据库系统包括用于集中管理多级数据库系统的全局客户端110、中间件系统100(如图1中虚线框所示)以及数据库实例节点,在图1中示出了四个数据库实例节点141-144。中间件系统100包括与全局客户端110连接的中间件节点121,以及一端与中间件节点121连接,另一端与数据库实例节点连接的中间件节点131-132。在此实施例中,中间件系统100采用树状结构连接。在这种布置的情况中,通常,与全局客户端连接的中间件节点可以称为根节点,例如,中间件节点121,与根节点连接的下一级中间件节点可以称为子节点,例如,中间件节点131和132是根节点121的子节点,上述的子节点还可以进一步连接其下一级子节点,根节点和各级子节点也可以统称为非叶节点,而数据库实例节点可以称为叶节点,例如,图1中的数据库实例节点141-144。通过部署这种树状结构的中间件节点,可以以不受限制的方式使多级数据库系统的规模扩展到数千或数万个数据库实例群,以满足PB级甚至以上的数据管理的需求,从而适应大数据时代的要求。在此实施例中,除了全局客户端之外,多级数据库系统还可以包括本地客户端,其与一个或多个中间件节点连接,用于管理本地的任务请求。图1示出了与中间件节点131连接的本地客户端130。在此实施例中,仅示出了包括两级中间件节点的中间件系统,本领域的技术人员应当理解,多于两级或少于两级的中间件系统也并不背离本专利技术的精神和范围。在一些实施例中,叶节点可以是任意支持标准接口的数据库管理系统,例如,oracle、mysql、sqlserver等。在一些实施例中,中间件节点与叶节点的数据库实例之间,通过标准的JDBC接口来通信。通过这种方式,只要是实现了标准JDBC驱动的数据库管理系统(如oracle、mysql、sqlserver等)都可以成为多级数据库的叶节点,挂接到根据本专利技术的多级数据库系统中,因此,本专利技术的中间件系本文档来自技高网
...

【技术保护点】
一种用于多级数据库的中间件,包括:任务接收模块:用于接收来自于上一级节点的任务请求,其中所述上一级节点为客户端或其他中间件;任务分解模块:基于所述任务请求的语义分析将所述任务请求分解为一个或多个子任务;任务分发模块:查询执行所述子任务的下一级节点并进行相应地转发,其中,所述下一级节点为数据库实例或其它中间件;任务执行结果汇集模块,用于从所述下一级节点汇集所述任务请求的执行结果并反馈给所述上一级节点。

【技术特征摘要】
1.一种用于多级数据库的中间件,包括:任务接收模块:用于接收来自于上一级节点的任务请求,其中所述上一级节点为客户端或其他中间件;任务分解模块:基于所述任务请求的语义分析将所述任务请求分解为一个或多个子任务;任务分发模块:查询执行所述子任务的下一级节点并进行相应地转发,其中,所述下一级节点为数据库实例或其它中间件;任务执行结果汇集模块,用于从所述下一级节点汇集所述任务请求的执行结果并反馈给所述上一级节点。2.根据权利要求1所述的中间件,其特征在于,所述任务请求包括数据查询、数据分析、数据加载、数据删除或数据更新。3.根据权利要求1所述的中间件,其特征在于,所述任务分发模块基于分片策略来进行相应地数据转发,所述分片策略用于确定执行所述子任务的下一级节点。4.根据权利要求1所述的中间件,其特征在于,所述中间件还包括本地任务执行模块,用于执行接收到的本地任务请求。5.根据权利要求1所述的中间件,其特征...

【专利技术属性】
技术研发人员:于雷赵晓芳金岩张程
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:北京;11

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

1