首页> 中国专利> 并行数据库管理系统及设计方案

并行数据库管理系统及设计方案

摘要

并行数据库管理系统及设计方案,包括对分支的选择、联合、竞争、同时这四种操作方式;总表执行单元通过映射方式生成和查找到子表执行单元和子表,最后将对虚拟的子表的操作转换为对物理表的操作,并汇总返回结果。本发明相比现有的并行数据库基础上具有异构数据库集成、运行时分支可动态增减、分支操作方式全面、分支(子表)数目无上限等优点,从而使得引擎用户可以快速地配置并行计算,满足了用户备份、系统集成、高性能计算等方面的需求。

著录项

  • 公开/公告号CN104239008A

    专利类型发明专利

  • 公开/公告日2014-12-24

    原文格式PDF

  • 申请/专利权人 深圳市并行科技有限公司;

    申请/专利号CN201310234069.6

  • 发明设计人 杨姣;徐淑兰;徐国庆;

    申请日2013-06-07

  • 分类号G06F9/44(20060101);G06F17/30(20060101);

  • 代理机构

  • 代理人

  • 地址 广东省深圳市南山区仪学街三坊二巷501房

  • 入库时间 2023-12-17 04:44:31

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-08-24

    专利权的转移 IPC(主分类):G06F9/44 登记生效日:20180806 变更前: 变更后: 申请日:20130607

    专利申请权、专利权的转移

  • 2017-09-29

    授权

    授权

  • 2015-01-14

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20130607

    实质审查的生效

  • 2014-12-24

    公开

    公开

说明书

技术领域

本发明涉及计算机软件开发领域,应用于系统集成、分布式数据库和高性能计算等方面。具体地, 设计方案通过VirtualDao封装具体的Dao,形成对单表操作的一致化;通过MultiDao并行地操纵多个 VirtualDao,实现对多表多库的灵活操作;在MultiDao中声明对分支的选择方式,及ID和虚表名的生成 和查找方式,以提供对并行计算的有效支持。

背景技术

并行数据库是数据库技术和并行计算结合的产物,是具有并行计算能力的数据库系统。

并行数据库通过多个节点并行处理数据库任务,从而提高数据库系统运行性能和可用性。

现有的并行数据库技术缺乏对业务需求的多样性的理解,缺乏对业务配置支撑的灵活性,尤其无 法突破对数据库分支(子表)的个数限制,因而使得并行数据库难以使用和推广。

为了填补了并行数据库在灵活配置和对多种业务兼容等方面的空白,本发明实现了总表操作单元 对子表操作单元的操作方式的设置,以及总表根据条件向子表进行映射,从而使得总表下可以有任意多个 子表。

发明内容

发明人使用MultiDao表示对总表的执行,VirtualDao表示对子表(分支)的执行,VirtualTable 表示子表,PhysicalDao表示物理上的对子表的执行单元。

并行数据库管理系统使用了三层体系结构:第一层是多表并行层,通过MultiDao通过多个 VirtualDao操作子表,实现多表并行计算;第二层是单表集成层,通过将异构的各类数据库Dao封装在相 同的VirtualDao,从而实现对VirtualTable虚拟表的计算,达到对数据源和数据类型的统一透明处理;第 三层通过统一的PhysicalDao,实现对物理的表的计算,具体的表可能分布在不同的数据库介质里面。

发明者认为:对并行数据库的操作方式有两种:读取和写入(包括增删改)。数据读取包括联合、 选择、竞争等分支选择方式:联合读取就是从一系列子表中读取数据,最后拼装成结果集;选择就是假设 各个子表数据是一样的,MultiDao从子表中(随机)选择一个子表读取结果集;竞争就是假设各个子表数 据是一样的,MultiDao从各个子表读取,但是只取最快的那份,其余的丢弃。数据集写入包括联合、同 时等分支选择方式:联合就是将数据按照规则拆散放到各个分支中,每个分支得到的是不完整的数据,但 是所有分支数据的总和是完整数据;同时就是将数据集不拆散,完整的保存到各个分支中。

特定的VirtualDao可以对相应的某些特定VirtualTable进行操作,VirtualTable就是一个虚拟 的子表,表名由MultiDao传入的参数映射获得。映射规则是,设有i个变量,{Xi}为这些变量的集合, VirtualTable的名称为F({Xi}),那么找出一个F({Xi}),通过F({Xi})可以通过逆映射获得{Xi}中的所需 要部分或全部。本并行数据库设计方案是通过变量映射规则而不是通过条件判断选择分支,从而获得对多 种数据读写方式的支持,这是本发明的特征。

本发明中,MultiDao是通过模板配置的,它可以以“标准”方式调用VirtualDao,而VirtualDao 将虚拟表VirtualTable解释为不同的物理的表,然后调用PhysicalDao执行对物理的表的操作。

附图说明

图1是对并行数据库管理系统层次结构的解释。MultiDao可以将操作分配到相应的VirtualDao, 分配的依据是,MultiDao所操作的记录根据存取条件按规则映射到VirtualDao所对应的VirtualTable。我们 注意到,第二层有VirtualDao1和VirtualDao1的副本,这样写只是为了表示VirtualTable1和VirtualTable2 结构一样,而VirtualDao2对应的VirtualTable3结构则与前两个表不一样,可能是同一个类的子类;所有 物理的操作都放到第三层。VirtualDao调用PhysicalDao,VirtualTable解释为PhysicalTable。

具体实施方式

本发明使用但不限于以下技术手段:

该并行数据库管理系统的实现有以下步骤:

1通过模板生成或通过元模式运行时获得MultiDao,系统将VirtualDao注册到MultiDao上,任意 的VirtualTable都对应且只对应一个VirtualDao。VirtualDao也可以通过模板或元模式自动生 成。,

2.系统通过使用但不限于数据库或配置文件等方式,配置VirtualTable和PhysicalTable之间的一一 对应关系。

3.应用程序调用MultiDao并使用一种选择方式映射到子表及对子表的操作VirtualDao。

4.系统通过步骤2配置的对应关系将VirtualDao操作转化成实际的对物理数据库的操作 PhysicalDao。

5.如果是更新操作,则失败后由MultiDao回退操作。

6.MultiDao获得各个子操作的结果,汇总处理并返回给应用程序。

下面结合具体的应用场景,进一步阐明本发明,本发明可以应用于但不限于以下情形:

假设应用系统需要访问两个数据库,这两个数据库数据完全一样,一个用来备份,一个用来做正 常业务访问;两个数据库只有地址不一样。

对于任何一个总表,开发者可按照如下步骤开发和配置:

1.系统根据子表结构生成或配置各个子表的虚表;

2.编写系统子表的PhysicalDao;

3.编写系统子表的VirtualDao,并将PhysicalDao注册到VirtualDao;

4.配置对总表的并行结构的执行单元MultiDao,MultiDao读取方式为选择,用于对两个数据库中的 子表进行选择性的读取操作(读其中一个子表);

5.配置MultiDao写入方式为同时,用于对两个数据库中的子表进行选择性的写入操作(同时将数据 两个库的子表)

6.配置MultiDao的映射方式,以获得相应的VirtualTable和VirtualDao。

用户管理系统,拥有不同类型的用户,每种用户一个表,用户系统可以根据需要访问其中的一个 表,也可以访问所有表。

开发者可按照如下步骤开发和配置:

1.系统根据子表结构生成或配置各个用户子表的虚表;

2.编写系统子表的PhysicalDao,系统可以通过不同的PhysicalDao访问单个的子表;

3.编写系统子表的VirtualDao,并将PhysicalDao注册到VirtualDao;

4.配置对总表的并行结构的执行单元MultiDao,MultiDao读取方式为联合,用于对各个子表(可能 为不同数据库)进行同时读取操作;

5.配置MultiDao写入方式为联合,用于将对数据的修改映射到相应的子表进行写入操作,比如客户 和管理员的数据类型和存储的表是不同的,对客户类型的数据的修改操作应该映射到对客户表的 修改操作,对管理员类型的数据的修改操作应该映射到对管理员表的修改操作;

6.配置MultiDao的映射方式,以获得相应的VirtualTable和VirtualDao。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号