数据管理系统的制作方法

文档序号:6409677阅读:168来源:国知局
专利名称:数据管理系统的制作方法
在实时系统,尤其是交换系统,必须管理彼此处于复杂关系之中的大量数据。关于这些数据的存取必须实时,即尽可能快和可靠(一致)地实现。
在迄今为止已知的交换系统情况下,各种用户系统本身对数据模块、寻址方式以及存取过程负责。在实施同类功能的情况下,这赋予每个用户系统个人标记。此外,缺少统一结构使获得一个概况和外部面向对象的存取(CMISE)变得困难。
迄今为止数据一致在用户一级同样有保障。这引起有关存取控制的粗糙性。一致性保障方法进一步限制了系统的适用性。此外,由于直接数据存取的可能性使一致性保障困难。例如,很难识别存取冲突。
给出数据管理系统的任务作为发明的基础,数据管理系统独立控制用户从其户数据的存取,而面向用户数据的个人标记是灵活的。
本任务通过权利要求项1的特征解决。
通过(中央和局部的)存取控制系统,数据管理系统的用户系统减轻了存取控制任务(例如在存取顺序时数据一致性的控制,在多个用户并行存取时存取冲突的控制),并因此相应地提高了其适用性。
通过用户经过由数据管理系统输出的存取程序与数据管理系统的专门联系,对用户而言,保证了良好的数据封闭。因此也易于识别由存取控制系统处理的存取冲突。
最终用户通过间接的数据存取进一步摆脱了数据管理功能。
通过类属模块的主管单元,即通过用户专用数据类型和参数的标记可以用简单方式由类属模块产生的应用专有数据模块(用户模块),其保证有关复杂的功能性(例如有关的数据一致性保障)无故障运行,因为通过主管单元,自动接受基本类属模块的一切功能性。
因为不同用户模块的同类功能,也就是在共同的类属模块内类属功能,只须实施唯一的一次,则实施费用、测试费用和维护费用只局限于类属模块。
此外,通过类属模块的统一结构使面向外来对象的存取(CMISE)变得方便。
本发明的实施形式在权利要求项2中给出。通过引入由标准存取程序构成的用户存取程序实现各自的应用同应用的逻辑数据结构的无关性。
在应用存取程序(View)中,存取以一个或多个对象分类方式实施。对象分类在一种用户模块中被管理。应用存取程序作为参量包含与存取有关的对象分类所希望的属性,这时在这些参量中关系到返回参量,在实施用户存取程序之后,这种返回参量回归应用。所以通过用户存取程序,以独特的可见方式,对储存的应用数据提供应用。所以逻辑数据结构的改变不致影响应用。
以下用附图详细说明本发明的实施例。
在图中方块之间的箭头表示功能关系(例如程序调入,箭头指向调入的程序)。


图1和图2表示根据发明所述的数据管理系统(EDB)的结构,能被不同应用APPL存取。
数据管理系统由两层组成,即应用专有系统一层,以下称作应用专有数据库ADB,与应用无关的系统层,以下称为类属数据库GDB。
类属数据库GDB包含中央功能和局部功能,这时中央功能在中央控制系统CU实现,局部功能在类属模块GM实现。
中央控制系统CU包含中央存取控制系统CTCC,这个系统从中央去控制存取(个别存取或存取顺序);一般的存取算法ALG;安全保障系统NVSI实现了为保障用户数据安全的与后备存储设备的通道,中央分配系统DDFC,它服务于把当前用户数据分配给实时系统多个过程的分配。还可以有选择地添加一个数据库VLP来管理可变长的数据,而不影响已有的功能。
类属模块GM描述了一种定义模块(模型),用于表示数据集成,它包含用于储存用户数据的数据结构以及为此必须的存取结构,即寻址方法和基本存取程序。此外,类属模块包含用于中央功能系统支持的附属结构,即一种用于相互协调的支持和一致性保障(局部存取控制系统CTCL)以及一种用于支持用户数据在不同平台的分配(局部数据分配系统DDFL)的结构,因此,在类属模块中上述结构的描述是以与用户无关的方式进行的,即以一种与数据结构的数据格式无关的方式。
通过结构组件的组合(例如局部存取控制系统CTCL,局部分配系统DDFL以及为此必须的附属数据定义,各种寻址方式)产生类属模块的不同类型。各种变型通过由相应应用的数据模型化给出的要求来决定。
每一类属模块包含一组涉及单个存取控制的基本存取程序。这些组包括用于读取数据单元(属性)的程序GET,用于数据单元改变的程序SET,以及为产生和清除用户数据单元的程序CREATE和DELETE。有关用户数据的存取只有通过这种特殊的存取程序才是可能的(数据封存)。具有相应持久性要求的数据在后备存储器上映像格式内得以保证。由此可以担保在具有相关装入过程的中断计算机重新启动之后,当前的数据可以尽可能快地听凭应用。
应用专有的数据库ADB包括窗口、模块实例,这时模块实例通过实例由类属模块产生。通过实例为类属模块标记,用户专有的数据模型和参量。因此在下面模块实例也称为用户专有数据模块或用户模块。
窗口组成当前应用APPL的接口。因此它代表这种应用的设想数据模块的逻辑图。
存取控制系统控制用户从数据管理系统EDB的存取,因此保证数据管理系统把当前的过程从一致初始状态转变到一致终止状态。为了保障这种一致性,存取控制系统以全面的方式处理存取序列(事务处理或读取序列),即要么全面执行事务处理,要么全面拒绝事务处理。
此外,存取控制系统使彼此并行的存取序列的同时存取协调。
存取控制系统包含CTCC,为用户执行这种全盘涉及存取序列控制的控制任务(例如START-TA,DO_TA,ABORT_TA)。
中央数据库VLP管理半永久性和瞬时的可变长度的数据。它既包含数据也包含一系列基本数据,以便储存和操纵其所容纳的数据。
由中央数据库管理的所有数据都由数据库封存。因此,从这些数据的一切存取只能通过上述基本数据进行。上述模块实例能够让数据库储存任意长的数据块,这时每个存储的数据块可通过存储时附加的逻辑码辨别。
类属存取算法ALG包含所有类属模块共同的功能,即用于数据保存的逻辑结构的算法(如连接表,二叉树);用于数据物理储存的其它机构,即通过数据库内的管理结构及存取结构的与数据结构无关的方法。类属存取算法最终由类属模块调入。
DDFC控制用户数据从一个平台(程序)到另一平台(程序)的传递,因此保证了不同平台(程序)之间的数据一致性。DDFC由GMI的DDFL动态调入。
正如已经讲过的那样,类属模块对数据封装而言起着样板的作用,这种数据封装描述了一种专有的数据结构(分选单,二叉树)以及与应用无关的为这些数据结构专用的存取算法,也就是一种与数据格式无关的类别和方法。类属模块包括用于数据管理系统的一组届时可供应用调用的基本存取程序,以便藉此对包含在类属数据库GDB内的数据实现读出或写入。
根据区分数据结构专有部分和数据存取及数据处理一般部分的类属模块内部结构体系,可以把一般功能说明为能被每一类属模块利用的类属算法ALG,因为它包含在类属数据库的中央模块CM内。此外,类属模块利用由中央存取控制系统CTCC和数据库VLP支配的其它一般功能。
采用类属模块要达到的主要目的是软件的重复可使用性和重复可替换性。此类属模块组成库,由应用专有的数据模块通过实例化产生,即通过专用的数据格式信息取代一般数据数据格式信息(位置保持,周CHILL系统,例如任意赋值)。
通过在应用和应用模块之间引入应用程序层VIEW,人们可以实现当时应用的逻辑数据结构的无关性。藉助于应用存取程序,实现从一个或多个对象分类的存取。这时一个应用模块各管理一个对象分类。一个用户存取程序作为参量包含与存取有关的对象分类所希望的属性,这时,在这些参量情况下,涉及在执行用户程序后返回应用的回程参量。因此存储的应用数据以特殊层方式通过用户存取程序提供应用。这样逻辑数据结构与应用无关。
为了管理其用户数据,应用及用户只能用用户存取程序VIEW。对于有关数据的一致性改变一系列相关用户程序调用是通过作为事务处理的中央存取控制系统来标识的。事务处理的执行、在后备存储器上数据的安全保障以及数据的分配是以独立方式通过数据管理系统执行的,并且对用户是完全不可见的。
以下详细说明事务处理的流程。
图3标识事务处理的阶段。事务处理至少包含两个阶段,即由用户控制的准备阶段,以及由中央存取控制系统控制的启动阶段。
在准备阶段通过用户一个接一个为单个存取调入存取程序(SET,GET等)的方式,事务处理一步步进行。在事务处理内部,任意大量的单个存取基本上可以通过相应存取程序的调用来完成。
准备阶段通过程序START_TA开始,而通过程序DO_TA结束。程序START-TA把事务处理标记成事务处理标识TD_ID,并把它传递给用户。随后,用户应用这个TA_ID在为个别存取调入存取程序时作为输入参量。
在准备阶段,存取程序的调入被作了记录,并且准备好与存取有关数据的可能的改变。在准备阶段,用户有可能通过调入程序ABORT_TA拒绝事务处理。
通过调入程序DO_TA,同时启动阶段开始,这个启动阶段仅受存取控制系统控制,因此,与用户调用无关地运行。因此,在启动阶段,不再考虑为个别存取进一步调用程序。
在准备阶段执行事务处理的协调,即与其它并行的事务处理的冲突情况被识别和调整。因此,协调是这样进行的,这些更早开始的事务处理允许继续执行,反之,其它平行的事务处理通过传给用户相应的负反馈的方式给以拒绝。因此,在准备阶段一切冲突情况得以解决,而在启动阶段的事务处理彼此无关独立执行。
图4给出中央存取控制系统CTCC的结构。中央存取控制系统CTCC包含事务处理管理系统TMS,世代管理系统GMS,资源管理系统RMS和冲突管理系统CMS。
事务管理系统TMS控制面向事务处理的、从数据管理系统数据对象的存取。
在启动阶段,一个世代识别码GEN_ID被事务处理管理系统赋予事务处理,以此为基础,世代管理系统管理在事务处理内产生的数据代,这种管理包括新产生的数据代的更新(Aufdatieren),即在工作存储器内和/或盘上,新数据代到其最终的存储单元上的转移。此外,上述管理包括读出系列(从数据管理系统的数据对象进行一系列逻辑相关的读出存取)的控制。
通过这类管理,在读出系列的框架内一群数据对象一致(即所有的已读出的数据对象属于同一个数据代)读出是可能的,而允许发生与此并行的事务处理。
资源管理系统RMS管理存取控制数据结构,这种存取控制数据结构由事务管理系统和/或为了存取控制的世代管理系统使用。
TGSE赋予软件预选器的形式,它包括对老映像的第一输出和对新映像的第二输出,所以在老映像的并行中有可能输入一个DO的新映像。
每次当TA要输入新映像时,RMS要求TGSE,随后,TGSE被TMS插入存取路径。
TGSE不仅使新图像并行输入成为可能,而且因为它成为存取路径部分,以封锁标记的形式提供保护机构,通过它事务处理能封锁通向数据对象DO的入口,因此阻止非法的存取从并行工作的事务处理方面通向新映像。
冲突管理系统CMS协调同一数据对象的写入存取,这些写入存取由并行事务处理引起,并阻止清除最老的数据代,而同时读出系列将从这一数据代的数据对象执行读出存取。
下面,合并事务处理或该系列的个别事件被详细说明,执行这些个别处理的程序参考图5、6、7。
图5给出了包含在用户模块内并执行个别读出动作的程序GET,这时它既可以在事务处理的范围内,也可以在读出系列范围内被调入。程序GET的输入参量是读出动作的识别和逻辑键,该键通过数据存取路径通向数据对象。在事务处理内部应用GET程序时,事务处理的标识就是事务处理标识TA_ID。在其它情况下,即在读出系列内部应用程序GET时,识别就是世代识别GEN_ID。程序GET的输出参量是数据对象及从检测信号返回的信号参量。
首先数据存取路径依靠逻辑键经表实现。
图6给出包含好几个表并储存在与用户无关的数据模块VLP内的数据存取路径的示范结构。数据存取路径包括列表元素指针指向数据UB的数据块表UBL,以及在数据块UV内部的对象分类表OCL和数据对象表DOL。逻辑键包括上述表的索引,即索引UBL_IX,OCL_IX和DOL_IX,依靠它,最终能够查明数据对象的指针以及存取控制数据结构TGSE。
通过GET调入与用户无关地实施中央数据库VLP的程序RD_BLK的方式,首先程序GET执行数据存取路径。作为返回值这个程序提供数据对象表DOL的物理指针。在事务处理情况下,这指针直到事务处理准备阶段之后的启动阶段才使用,以便执行原来的存取。
紧接着下一个调入具有参量“数据对象表DOL的指针”和“DOL_IX”的程序“ACCESS_OCI”。此外,这程序检验DOL的首标并决定在传入参量“DOL_IX”情况下是否是有效的索引。
如果索引是有效的,那么紧接着就要分析与索引DOL_IX相应的,表DOL的表域。因此要检验存入表域的入口域的标识ID是事务处理标识还是世代标识。这在图5内用分支方块表示。
如果涉及世代标识,则依靠程序EVAL_GENTREE估计紧挨着数据存取路径的世代树,因此与世代识别相应的物理指针返回到数据对象。
如果在标识ID涉及事务处理标识,则调用程序ALLOC_TGSE,这程序通过程序SET准备好下一个写入动作,并且数据对象对其它事务处理封锁。
此外,用户专有的数据模块GMI包含在事务处理内部修改数据对象的程序SET。这程序的输入参量是事务处理识别TA_ID,为通过数据存取路径控制的逻辑键,新接收的数据的指针以及新数据的长度信息。输出参量为用于回程信号的参量。
图7给出程序SET,它和程序GET一样,包括借助于程序RD_BLK和ACCESS_OCI执行的数据通道。在执行数据通道之后,程序SET调用包含在CTCC里要求新的存取控制-数据结构TGSE,并且复制新数据或新数据对象的到分离过滤器中的程序ALLOC_TGSE。如果程序SET由程序GET准备好了,则上述新存取控制-数据结构分配取消。
此外用户专用数据模块还包含程序CREATE(使对象分类扩展一个数据对象)和程序DELETE(使对象分类减少一个数据对象)。上述两个程序对描述发明没有意义,因此不予详细说明。
权利要求
1.数据管理系统a)具有一类属数据库系统(GDB),该系统包括一个中央控制系统(CU)和至少包括一个类属数据模块(GM)。b)具有一中央存取控制系统(CTCC),该系统包含在中央控制系统(CU)内,并且在中央一级控制用户数据(DATA)的存取。c)具有局部存取控制系统(CTCL),该系统包含在类属数据模块(GM)内,且以局部一级控制用户数据的存取,因此它是与中央存取控制系统(CTCC)相应地共同工作。d)具有用户专用的数据模块系统(ADB),该系统至少包含一个用户专用数据模块(GMI),这时用户专有的数据模块通过定义用户专有的数据类型从类属数据模块中产生,并至少包含一个由数据管理系统输出的、并描述了数据管理系统的用户系统的接口的用户存取程序(V_GET,V_SET,START_TA,DO_TA)。
2.根据权利要求项1所述的数据管理系统,其特征为用户存取程序由标准存取程序(GET,SET,CREATE,DELETE)的组合构成,这时标准存取程序包含在各自的局部存取控制系统(CTCL)内并包含中央存取控制系统的接口。
3.根据权利要求项1或2所述的数据管理系统,其特征为数据管理系统包含一个安全保障系统(NVSI),为了保障用户数据的安全,该系统实现后备存储器的接口,并且仅由存取控制系统(CTCC,CTCL)调用。
4.根据权利要求项1到3之一所述的数据管理系统,其特征为数据管理系统包含分配系统(DDFC,DDFL),该系统根据用户存取把当前用户数据(DATA)分配到实时系统的不同过程,并且仅由存取控制系统(CTCC,CTCL)调用。
全文摘要
数据管理系统应当尽可能减轻用户对数据的管理任务,尽管如此,有关用户数据的用户个人标记仍然是灵活的。根据发明所述,这些目标是通过具有中央控制系统(CU)的类属数据库(GDS)和类属数据模块(GM)来实现的,因而类属模块已经包含所有的功能,以便与中央控制系统共同工作以实施存取控制和数据保存,这时类属数据模块仍允许用户数据的用户个人标记。
文档编号G06F12/00GK1151798SQ95193906
公开日1997年6月11日 申请日期1995年5月3日 优先权日1994年5月10日
发明者A·包尔, G·莫尔, B·西瓦特 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1