CN104239008B - 并行数据库管理系统及设计方案 - Google Patents

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

Info

Publication number
CN104239008B
CN104239008B CN201310234069.6A CN201310234069A CN104239008B CN 104239008 B CN104239008 B CN 104239008B CN 201310234069 A CN201310234069 A CN 201310234069A CN 104239008 B CN104239008 B CN 104239008B
Authority
CN
China
Prior art keywords
sublist
branch
multidao
data
parallel database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310234069.6A
Other languages
English (en)
Other versions
CN104239008A (zh
Inventor
杨姣
徐淑兰
徐国庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Global Digital Group Co Ltd
Original Assignee
SHENZHEN BINGXING SCIENCE & TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN BINGXING SCIENCE & TECHNOLOGY Co Ltd filed Critical SHENZHEN BINGXING SCIENCE & TECHNOLOGY Co Ltd
Priority to CN201310234069.6A priority Critical patent/CN104239008B/zh
Publication of CN104239008A publication Critical patent/CN104239008A/zh
Application granted granted Critical
Publication of CN104239008B publication Critical patent/CN104239008B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

并行数据库管理系统及设计方案
技术领域
本发明涉及计算机软件开发领域,应用于系统集成、分布式数据库和高性能计算等方面。具体地,设计方案通过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。

Claims (5)

1.一种并行数据库管理系统,其特征是:并行数据库拓展和兼容多种对分支数据库表的操作方式,总表操作MultiDao可以并行地操作子表,所述并行数据库管理系统使用三层体系结构:第一层是多表并行层,MultiDao通过多个VirtualDao操作子表,实现多表并行计算;第二层是单表集成层,通过将异构的各类数据库Dao封装在相同的VirtualDao,实现对VirtualTable虚拟表的计算;第三层通过统一的PhysicalDao,实现对物理的表的计算,所述MultiDao表示对总表的执行,所述VirtualDao表示对子表的执行,VirtualTable表示子表,PhysicalDao表示物理上的对子表的执行单元,Dao表示对表的执行。
2.根据权利要求1所述的并行数据库管理系统,其特征在于:并行数据库通过变量映射的方式查找和生成不同的分支,有别于传统的通过条件判断语句或条件触发语句查找和生成分支的方式,因此使得系统分支可以在任何时间有任意个,而不是只有有限个;映射规则如下,设有i个变量,{Xi}为这些变量的集合,分支(子表)名称为{Y},那么找出一个{Y}=F({Xi})的映射,通过计算映射将{Xi}映射到F({Xi})。
3.根据权利要求1所述的并行数据库管理系统,其特征在于:总表操作方式包括读取和写入两种类型,通过声明同时、联合、竞争、选择的选择方式,从而适应不同应用情景下并行操作需求;数据读取包括联合、选择、竞争的分支选择方式:联合读取是从一系列子表中读取数据,最后拼装成结果集;选择是假设各个子表数据是一样的,MultiDao从子表中随机选择一个子表读取结果集;竞争就是假设各个子表数据是一样的,MultiDao从各个子表读取,但是只取最快的那份,其余的丢弃;数据集写入包括联合、同时的分支选择方式:联合写入就是将数据按照规则拆散放到各个分支中,每个分支得到的是不完整的数据,但是所有分支数据的总和是完整数据;同时就是将数据集不拆散,完整的保存到各个分支中。
4.根据权利要求1所述的并行数据库管理系统,其特征在于:MultiDao和VirtualDao可以生成或运行时获得。
5.根据权利要求1所述的并行数据库管理系统,其特征在于:VirtualDao屏蔽了PhysicalDao的差异,使得系统可以在运行时自动增加分支及对分支的操作。
CN201310234069.6A 2013-06-07 2013-06-07 并行数据库管理系统及设计方案 Active CN104239008B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310234069.6A CN104239008B (zh) 2013-06-07 2013-06-07 并行数据库管理系统及设计方案

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310234069.6A CN104239008B (zh) 2013-06-07 2013-06-07 并行数据库管理系统及设计方案

Publications (2)

Publication Number Publication Date
CN104239008A CN104239008A (zh) 2014-12-24
CN104239008B true CN104239008B (zh) 2017-09-29

Family

ID=52227159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310234069.6A Active CN104239008B (zh) 2013-06-07 2013-06-07 并行数据库管理系统及设计方案

Country Status (1)

Country Link
CN (1) CN104239008B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326241A (zh) * 2015-06-15 2017-01-11 阿里巴巴集团控股有限公司 在将数据表拆分的过程中读写数据表的方法和装置
CN113268483A (zh) * 2021-05-24 2021-08-17 北京金山云网络技术有限公司 请求处理方法和装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410795A (zh) * 2003-10-24 2009-04-15 微软公司 可伸缩的对监控规则的同步与异步处理
CN102542414A (zh) * 2011-12-28 2012-07-04 焦点科技股份有限公司 一种基于规则引擎的业务流程与业务数据处理的松耦合方法及系统
CN103116498A (zh) * 2013-03-07 2013-05-22 徐国庆 并行业务规则引擎及其实现方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050021540A1 (en) * 2003-03-26 2005-01-27 Microsoft Corporation System and method for a rules based engine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410795A (zh) * 2003-10-24 2009-04-15 微软公司 可伸缩的对监控规则的同步与异步处理
CN102542414A (zh) * 2011-12-28 2012-07-04 焦点科技股份有限公司 一种基于规则引擎的业务流程与业务数据处理的松耦合方法及系统
CN103116498A (zh) * 2013-03-07 2013-05-22 徐国庆 并行业务规则引擎及其实现方法

Also Published As

Publication number Publication date
CN104239008A (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
US11704294B2 (en) System and method for slowly changing dimension and metadata versioning in a multidimensional database environment
US20230084389A1 (en) System and method for providing bottom-up aggregation in a multidimensional database environment
US20210311964A1 (en) System and method for load, aggregate and batch calculation in one scan in a multidimensional database environment
US11593402B2 (en) System and method for enabling multiple parents with weights in a multidimensional database environment
US11030247B2 (en) Layered graph data structure
US20170091246A1 (en) Distributed graph database
US9715536B2 (en) Virtualization method for large-scale distributed heterogeneous data
CN102426582B (zh) 数据操作管理装置和数据操作管理方法
US11075991B2 (en) Partitioning data according to relative differences indicated by a cover tree
US10068033B2 (en) Graph data query method and apparatus
US9720960B2 (en) Reporting tools for object-relational databases
US20170277761A1 (en) Techniques for conversion of cad descriptions
US20210225072A1 (en) Generating space models from map files
US20160274874A1 (en) Method and apparatus for processing request
CN104239008B (zh) 并行数据库管理系统及设计方案
Bardi et al. Aggregative data infrastructures for the cultural heritage
CN108595552A (zh) 数据立方体发布方法、装置、电子设备和存储介质
US11803568B1 (en) Replicating changes from a database to a destination and modifying replication capacity
CN112732704B (zh) 一种数据处理方法、装置及存储介质
CN117609251A (zh) 基于数据虚拟化的数据调用方法、装置、存储介质及服务器
CN117787432A (zh) 基于湖仓一体的机器学习方法及装置
CN104133890A (zh) 一种云端大数据处理方法和系统
Ke et al. A Graph-Based Design of an Open Database for 3D Models with Versioning
WO2014154016A1 (zh) 并行数据库管理系统及设计方案
CN115617922A (zh) 面向多模数据库的元数据管理方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180806

Address after: 518000 Guangdong, Shenzhen, Nanshan District, Guangdong Province, nine new 10 South Road, No. nine Shenzhen Bay science and Technology Park 10 B block 17 level No.

Patentee after: Global elegant Road Group Co., Ltd.

Address before: Room 501, three lanes and two lanes, Nanshan District, Guangdong, Shenzhen

Patentee before: SHENZHEN BINGXING SCIENCE & TECHNOLOGY CO., LTD.

TR01 Transfer of patent right
CP01 Change in the name or title of a patent holder

Address after: 518000 Guangdong, Shenzhen, Nanshan District, Guangdong Province, nine new 10 South Road, No. nine Shenzhen Bay science and Technology Park 10 B block 17 level No.

Patentee after: Global Digital Group Co.,Ltd.

Address before: 518000 Guangdong, Shenzhen, Nanshan District, Guangdong Province, nine new 10 South Road, No. nine Shenzhen Bay science and Technology Park 10 B block 17 level No.

Patentee before: GLOBALTOUR Group Ltd.

CP01 Change in the name or title of a patent holder