CN1399209A - 一种并行处理分布式数据库的方法和装置 - Google Patents
一种并行处理分布式数据库的方法和装置 Download PDFInfo
- Publication number
- CN1399209A CN1399209A CN 01120551 CN01120551A CN1399209A CN 1399209 A CN1399209 A CN 1399209A CN 01120551 CN01120551 CN 01120551 CN 01120551 A CN01120551 A CN 01120551A CN 1399209 A CN1399209 A CN 1399209A
- Authority
- CN
- China
- Prior art keywords
- database
- result
- actuating unit
- data base
- configuration device
- 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.)
- Granted
Links
Images
Landscapes
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种利用数据库处理装置并行处理分布式数据库的方法和装置,包括数据库处理装置接受管理配置装置对数据库的调用命令,数据库处理装置中的主控制装置根据所述调用命令选择需要进行操作的数据库,并唤醒与所述数据库对应的执行装置,被唤醒的执行装置执行管理配置装置调用的数据库的操作,等待被唤醒的执行装置完成数据库操作,将被唤醒的执行装置执行数据库操作的处理结果传送到其所对应的局部处理结果存储装置,主控制装置汇总局部处理结果存储装置中存储的局部处理结果,并在主控制装置中生成数据库的最终处理结果。将数据库的最终处理结果返回到管理配置装置。
Description
技术领域
本发明涉及一种并行处理分布式数据库的方法及其装置。特别是涉及在大型分布式多数据库的系统中有效地管理数据库执行数据通信及信息管理的方法。
背景技术
随着计算机技术的发展和普及,大型数据库迅速进入到电信、金融等各个行业。在当今信息爆炸的年代,在很多场合单个数据库越来越难满足性能和信息量的需要,因此,分布式数据库更多地投入了使用。
以呼叫管理中心为例,呼叫管理中心的拨号上网认证业务由协议处理装置和数据库装置相互配合实施(这两个装置可以在同一台机器上运行,也可以各占一台机器运行)。随着业务量的快速增长,单个呼叫管理中心的运作方式不能满足用户需求。为提高系统端口批发处理能力而采用多个分布式的呼叫管理中心(DCMC)。分布式呼叫管理中心采用分布式并行处理的IP接入公共平台系统,实现了多个数据库独立运行的机制。每个数据库对应一个呼叫管理中心,不同数据库管理不同接入码的呼叫控制。因此,各个数据库必需配置同样的端口、路由管理中心(RMC)等全网资源信息。在多数据库应用系统中,管理配置装置往往需要对多个数据库进行同步操作,调用同样的存储过程,负责系统内所有数据库的配置查询工作。在对全网资源进行配置(增加、删除、修改)时,需要对系统中所有数据库调用同样的存储过程。因此,分布式数据库的使用给统一管理带来了困难,管理配置装置需要对所有数据库进行操作,并将结果汇总。多个数据库的处理效率也就成为令人头痛的问题。显然,如果选择对每个数据库的串行操作,那么执行一次数据库操作的时间就会大于每个分布式数据库执行时间的总和,如果系统中有较多的数据库或有些耗时较长的操作,操作时间恐怕就不能接受了。而采用数据库并行操作,就会带来数据保护、流程同步等问题,如何确定系统的结构就成为了关键。一个不好的结构不但会占用大量系统资源,而且会使代码臃肿,故障点增加。目前,大多数作法是一个数据库对象对应一个数据库连接,由管理配置装置通过其与数据库的接口直接访问多个数据库,这样使管理配置装置只能访问固定个数的数据库,而且由一个管理配置装置同时处理对多个数据库的访问,会造成内部结构混乱,代码冗长,处理时间延长,而且容易产生冲突并出错,很难维护系统的运行。
如果已经有了单个数据库的管理台程序,在改用分布式数据库后,原有程序几乎需要全部修改或重写,对于开发人员来说,简直是个灾难。
发明内容
因此,针对分布式多数据库应用系统的上述问题,本发明的目的在于提供一种可以解决上述缺陷的并行处理分布式数据库操作的方法和装置,该方法只需修改小部分代码就可以使用现有方法实现分布式数据库的访问。
本发明的目的是在管理配置装置与多个数据库之间增加一个数据库处理装置,以便对数据库提供分层次的管理来实现的。
根据本发明的一个方面,提供一种利用数据库处理装置并行处理分布式数据库的方法,该方法包括步骤:
数据库处理装置接受管理配置装置对数据库的调用命令,
数据库处理装置中的主控制装置根据所述调用命令选择需要进行操作的数据库,并唤醒与所述数据库对应的执行装置,
被唤醒的执行装置执行管理配置装置调用的数据库的操作,
等待被唤醒的执行装置完成数据库操作,
将被唤醒的执行装置执行数据库操作的处理结果传送到其所对应的局部处理结果存储装置,
主控制装置汇总局部处理结果存储装置中存储的局部处理结果,并在主控制装置中生成数据库的最终处理结果,
将数据库的最终处理结果返回到管理配置装置。
根据本发明的并行处理分布式数据库的方法,各执行装置执行真正的数据库操作,平时在核心对象将执行装置阻塞,不占用CPU时间,当执行装置被控制装置唤醒后,就执行控制装置的指令,执行完毕再次进入睡眠状态,等待下一次唤醒。
根据本发明的另一个方面,提供一种并行处理分布式数据库的数据库处理装置,该数据库处理装置包括:
与相应的数据库对应的执行装置,用于执行真正的数据库操作,并将对应数据库的操作结果送入局部处理结果存储装置并存储在其中
与相应的执行装置对应的局部处理结果存储装置,用于存储每个对应的执行装置所执行的数据库操作的处理结果,
主控制装置,用于接受管理配置装置对数据库的调用,选择需要进行操作的数据库,并唤醒对应数据库的执行装置,等待执行装置完成数据库操作,汇总每个执行装置的局部处理结果,生成最终处理结果,并向管理配置装置返回最终处理结果。
根据本发明的并行处理分布式数据库的方法和装置不但实现了数据库并行处理,而且并行后的处理速度和单个数据库的处理速度基本相同。访问数据库的个数可以通过在管理配置装置的配置文件来决定,无须修改代码。对数据库调用的处理层次清晰,实现简单,系统开销很小。在原有类上进行封装,封装后原单个数据库操作的大部分接口可以保持不变。
附图说明
下面结合附图对本发明并行处理分布式数据库的方法和装置进行详细描述,以便更好地理解本发明的目的,特性和优点。
图1是分布式数据库应用系统的方框图;
图2是并行处理分布式数据库的方法的流程图。
实施例
参考图1和2说明并行处理分布式数据库的方法和装置的实施例。
图1中以三个数据库为例说明并行分布式数据库应用系统。分布式数据库应用系统包括数据库1,数据库处理装置5和管理配置装置6。其中数据库处理装置5包括执行装置2,局部处理结果存储装置3,主控制装置4。数据库1主要为执行装置提供接口,并确保主流程处理效率。管理配置装置6的主要功能有:第一,为系统操作员提供管理配置功能,包括客户管理、资源管理、操作员管理、性能管理和安全管理;第二,为端口租用客户实时提供网络运行情况信息,并具有统计分析的能力,让客户了解与其有关的性能指标。
管理配置装置6的作用是给系统管理人员提供一个接口界面,以便配置数据库信息和上网信息查询。管理配置装置6接受系统管理人员或客户发出的对数据库的调用请求,然后把该调用请求送到数据库处理装置5,而不是象常规数据库应用系统那样直接调用数据库,执行所有数据库的操作。数据库处理装置5接受管理配置装置6对数据库的调用请求,并根据该请求中包含的表示每个数据库专有的数据库识别码(DBID)来调用相应的执行装置2。在数据库处理装置5中,有与系统中的每个数据库1一一对应的执行装置2,一个执行装置可以理解成对相应的数据库的连接装置。图1所示系统中有三个数据库,数据库处理装置5中就有三个执行装置2。所有执行装置2都由数据库处理装置5中的主控制装置4控制,数据库处理装置5中的主控制装置4没有收到管理配置装置6发来的命令请求时,所有执行装置2都处在等待状态。
主控制装置4接收到管理配置装置6调用数据库的命令请求时,根据该命令请求中包含的数据库识别码(DBID)选择需要进行操作的数据库1,并唤醒与该数据库1对应的执行装置2。各执行装置2执行真正的数据库操作,平时在核心对象(未示出)处阻塞执行装置2,不占用CPU时间,当执行装置2被主控制装置4唤醒后,就执行主控制装置4的指令,执行完毕再次进入睡眠状态,等待下一次唤醒。因此,执行装置2不执行操作时,不占用CPU的资源。在数据库处理装置5中,每个执行装置2都有一个与其相对应的局部处理结果存储装置3,用于存储每个执行装置2的操作结果。执行装置2执行完数据库操作后,将该数据库操作是成功还是失败的操作结果存储在与其对应的局部处理结果存储装置3中。如果数据库操作失败,将操作失败的数据库的数据库编号和操作失败时数据库执行的查询语句或存储过程存储在局部处理结果存储装置3中。数据库处理系统中执行的数据库操作结果分为三种情况:1.数据库操作全部成功;2.数据库操作全部失败;3.数据库操作部分成功。主控制装置4等待执行装置2完成数据库操作,汇总局部处理结果存储装置3中存储的每个被调用的数据库的处理结果,并在主控制装置4中生成所有被调用的数据库1的操作是成功还是失败的最终处理结果。将所生成的数据库最终处理结果返回到管理配置装置6。
下面结合图2描述并行处理分布式数据库的流程图。首先,在在步骤S201,数据库处理装置5中的主控制装置4接收管理配置装置6发来的数据库调用命令请求,该命令请求包含表示每个数据库专有的数据库识别码(DBID),主控制装置4分析该命令请求,将该命令请求转化成相应的存储过程或数据库SQL(结构化查询语言)命令。在步骤S202,主控制装置4从命令请求中提取DBID。DBID指示对那个数据库进行操作,例如,系统中有三个数据库,其序号就分别是0、1、2,DBID=2就表示本次命令只对序号为2的数据库进行操作。另外,设定一种情况,当DBID=-1时就表示本次命令请求对系统中所有数据库进行操作。在步骤S203,主控制装置4根据提取的DBID的值来设置该DBID对应的执行装置2的初始环境,并将对应的执行装置2设为标记状态,解开该DBID对应的一个或所有执行装置2的互斥锁。解锁后的执行装置2就进入工作状态,执行对应数据库的SQL命令或存储过程。此后,在步骤S204,主控制装置4等待被唤醒的执行装置2执行完数据库SQL命令或存储过程后,重新锁住执行装置2,回到等待状态,并将执行装置2的处理结果存储在局部处理结果存储装置3中。在步骤S205,主控制装置4汇总局部处理结果存储装置3中存储的局部处理结果,并在主控制装置中生成最终结果。在步骤S206,检查数据库的SQL命令或存储过程的处理结果。在步骤S207,判断数据库操作是全部成功,部分成功或全部失败中的哪一种情况。如果在步骤S207判断数据库操作全部成功,则在步骤S208向管理配置装置6返回数据库操作全部成功指示。如果在步骤S207判断数据库操作部分成功,则在步骤S209向管理配置装置6返回数据库操作部分成功的指示。如果在步骤S207判断数据库操作全部失败,则在步骤S210向管理配置装置返回数据库操作全部失败的指示。
至此已结合实施例说明了本发明的具体实施过程。本发明的方法和装置实现了数据库并行处理,并行后的处理速度和单数据库处理速度基本相同。访问数据库的个数可以由配置文件决定,无须修改代码。
Claims (3)
1.一种利用数据库处理装置开行处理分布式数据库的方法,其特征在于该方法包括步骤:
数据库处理装置接受管理配置装置对数据库的调用命令;
数据库处理装置中的主控制装置根据所述调用命令选择需要进行操作的数据库,并唤醒与所述数据库对应的执行装置;
被唤醒的执行装置执行管理配置装置调用的数据库的操作;
等待被唤醒的执行装置完成数据库操作;
将被唤醒的执行装置执行数据库操作的处理结果传送到其所对应的局部处理结果存储装置;
主控制装置汇总局部处理结果存储装置中存储的局部处理结果,并在主控制装置中生成数据库的最终处理结果;
将数据库的最终处理结果返回到管理配置装置。
2.根据权利要求1所述的利用数据库处理装置并行处理分布式数据库的方法,其特征在于:
如果数据库的最终处理结果是全部成功,则向管理配置装置返回数据库操作全部成功的指示;
如果数据库的最终处理结果是部分成功,则向管理配置装置返回数据库操作部分成功的指示;
如果数据库的最终处理结果是全部失败,则向管理配置装置返回数据库操作全部失败的指示。
3.一种并行处理分布式数据库的数据库处理装置,其特征在于该数据库处理装置包括:
与相应的数据库对应的执行装置,用于执行真正的数据库操作,并将对应数据库的操作结果送入局部处理结果存储装置并存储在其中;
与相应的执行装置对应的局部处理结果存储装置,用于存储每个对应的执行装置所执行的数据库操作的处理结果;
主控制装置,用于接受管理配置装置对数据库的调用,选择需要进行操作的数据库,并唤醒对应数据库的执行装置,等待执行装置完成数据库操作,汇总每个执行装置的局部处理结果,生成最终处理结果,并向管理配置装置返回最终处理结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011205512A CN1152338C (zh) | 2001-07-20 | 2001-07-20 | 一种并行处理分布式数据库的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011205512A CN1152338C (zh) | 2001-07-20 | 2001-07-20 | 一种并行处理分布式数据库的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1399209A true CN1399209A (zh) | 2003-02-26 |
CN1152338C CN1152338C (zh) | 2004-06-02 |
Family
ID=4664229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011205512A Expired - Fee Related CN1152338C (zh) | 2001-07-20 | 2001-07-20 | 一种并行处理分布式数据库的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1152338C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060437B (zh) * | 2007-06-07 | 2010-12-29 | 中兴通讯股份有限公司 | 一种对多个同类网元的并行管理方法及装置 |
CN102402557A (zh) * | 2010-09-17 | 2012-04-04 | 张健 | 一种突破多数据库并存限制的web信息管理系统集成方法 |
CN102479225A (zh) * | 2010-11-26 | 2012-05-30 | 中国移动通信集团四川有限公司 | 一种分布式数据分析和处理方法及系统 |
WO2014059927A1 (en) * | 2012-10-16 | 2014-04-24 | Huawei Technologies Co., Ltd. | System and Method for Flexible Distributed Massively Parallel Processing (MPP) |
CN103927157A (zh) * | 2013-05-16 | 2014-07-16 | 河北省健海生物芯片技术有限责任公司 | 构建分布式计算系统实体方法 |
CN103970902A (zh) * | 2014-05-27 | 2014-08-06 | 重庆大学 | 一种大量数据情况下的可靠即时检索方法及系统 |
WO2015032297A1 (zh) * | 2013-09-03 | 2015-03-12 | He Yunkun | 一种大数据库创建及数据管理方法 |
CN104572881A (zh) * | 2014-12-23 | 2015-04-29 | 国家电网公司 | 基于多任务并发的配网图模导入方法 |
WO2019062156A1 (zh) * | 2017-09-27 | 2019-04-04 | 华为技术有限公司 | 存储过程的执行方法、装置及存储介质 |
-
2001
- 2001-07-20 CN CNB011205512A patent/CN1152338C/zh not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060437B (zh) * | 2007-06-07 | 2010-12-29 | 中兴通讯股份有限公司 | 一种对多个同类网元的并行管理方法及装置 |
CN102402557A (zh) * | 2010-09-17 | 2012-04-04 | 张健 | 一种突破多数据库并存限制的web信息管理系统集成方法 |
CN102479225A (zh) * | 2010-11-26 | 2012-05-30 | 中国移动通信集团四川有限公司 | 一种分布式数据分析和处理方法及系统 |
CN102479225B (zh) * | 2010-11-26 | 2014-05-07 | 中国移动通信集团四川有限公司 | 一种分布式数据分析和处理方法及系统 |
WO2014059927A1 (en) * | 2012-10-16 | 2014-04-24 | Huawei Technologies Co., Ltd. | System and Method for Flexible Distributed Massively Parallel Processing (MPP) |
US9239741B2 (en) | 2012-10-16 | 2016-01-19 | Futurewei Technologies, Inc. | System and method for flexible distributed massively parallel processing (MPP) |
CN103927157A (zh) * | 2013-05-16 | 2014-07-16 | 河北省健海生物芯片技术有限责任公司 | 构建分布式计算系统实体方法 |
WO2015032297A1 (zh) * | 2013-09-03 | 2015-03-12 | He Yunkun | 一种大数据库创建及数据管理方法 |
CN103970902A (zh) * | 2014-05-27 | 2014-08-06 | 重庆大学 | 一种大量数据情况下的可靠即时检索方法及系统 |
CN104572881A (zh) * | 2014-12-23 | 2015-04-29 | 国家电网公司 | 基于多任务并发的配网图模导入方法 |
WO2019062156A1 (zh) * | 2017-09-27 | 2019-04-04 | 华为技术有限公司 | 存储过程的执行方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN1152338C (zh) | 2004-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402424B1 (en) | Dynamic tree determination for data processing | |
JP3075486B2 (ja) | データベースネットワークの管理方法 | |
US6339771B1 (en) | Method and system for managing connections to a database management system | |
JP3064469B2 (ja) | Cad部品管理システム | |
US9996593B1 (en) | Parallel processing framework | |
US6105067A (en) | Connection pool management for backend servers using common interface | |
US7853584B2 (en) | Multi-partition query governor in a computer database system | |
WO2023142054A1 (zh) | 一种面向容器微服务的性能监控告警方法及告警系统 | |
CN110851248B (zh) | 异步任务数据处理方法、装置及计算机可读存储介质 | |
Agrawal et al. | Location independent remote execution in NEST | |
CN110661842A (zh) | 一种资源的调度管理方法、电子设备和存储介质 | |
CN115150226A (zh) | 一种基于物模型的智慧网关适配系统及其运行方法 | |
CN109299225A (zh) | 日志检索方法、系统、终端及计算机可读存储介质 | |
CN117312103B (zh) | 一种可热插拔的分布式异构数据源数据调度处理系统 | |
CN1399209A (zh) | 一种并行处理分布式数据库的方法和装置 | |
CN115733754A (zh) | 基于云原生中台技术的资源管理系统及其弹性构建方法 | |
CN101056210B (zh) | 一种网络集中管理平台上的事件处理系统和方法 | |
CN1393771A (zh) | 一种快速消除数据库差异信息的方法 | |
CN114020446A (zh) | 一种跨多引擎的路由处理方法、装置、设备及存储介质 | |
CN109976716A (zh) | 一种自动化软件开发系统 | |
CN107102901A (zh) | 一种任务处理方法和装置 | |
CN115185700B (zh) | 一种高集成单进程的容器管理方法 | |
JPH09160847A (ja) | クライアント・サーバ型分散処理システム | |
CN114020629B (zh) | 数据处理方法及其装置、测试环境的管理平台、电子设备 | |
US20080189288A1 (en) | Query governor with network monitoring in a parallel computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040602 Termination date: 20150720 |
|
EXPY | Termination of patent right or utility model |