论文部分内容阅读
支持协作的工程数据库系统为计算机支持的协作设计提供数据管理,使协作设计活动能有效地操作正确的和可靠的设计数据对象。事务管理是整个系统的核心部分。本论文对协作设计活动和协作设计事务模型进行了描述,并对支持协作的工程数据库事务管理系统的功能结构、并发控制机制、事务提交机制和恢复处理等方面进行了研究,同时,在样机系统中对上述研究进行实验和分析。 在深入分析协作设计的特点后,对协作设计活动的描述进行了初步探讨;并在此基础上,提出了一个支持协作设计的事务模型。该事务模型结合了部分已有事务模型的优点,采用类似于嵌套结构的事务结构,使事务的提交和夭折更灵活。同时,该模型允许子事务间可以进行交互,从而支持协作的进行。 提出了两种支持协作设计的并发控制方法:基于有序相容性封锁的多粒度封锁机制和基于有序相容性封锁的CBR封锁机制。在基于有序相容性封锁的多粒度封锁机制中我们对简单的锁模型进行了扩充,在共享锁(S/R)和排它锁(X/W)的基础上增加了几种锁,并建立了相应的锁相容性矩阵,同时给出封锁协议和实现算法。该方法对协作读和协作修改设计事务提供了支持。基于有序相容性封锁的CBR封锁机制是在考虑同一场地设计事务的延续性而提出的。该协议可提高在同一场地执行的事务对象申请的成功率,同时也具备了一定的协作支持能力。 提出了带有时限的工程设计事务两阶段提交协议,包括其原理及其对故障的处理方法。该协议一方面允许设计子事务在设计期限未到之前“先”提交,同时在本组事务满足提交条件或者说某一设计方案完成的情况下可提交而不用等待最后期限,从而给设计活动的开展提供更大的灵活性;另一方面,在设计期限到来时,如果本组的设计任务仍然不能提交,则小组协调者可强制要求未完成的子事务进行汇报,以决定是否可以最终提交,从而保证了设计任务按时完成。 提出了保存点savepoint机制。该机制采用冗余存储的方法,将设计事务各阶段的结果保存在小组服务器中,减少了失败时带来的工作损失,同时通过savepoint号(SN)关联的办法,解决了协作产生的数据相关性在恢复处理时可能带来的级联恢复问题。在此基础上,提出了基于日志与savepoint机制的恢复算法。该算法能处理协作设计过程中出现的大部分场地故障。 最后,在样机系统中,分别对基于有序相容性封锁的多粒度封锁机制和带有时限的工程设计事务两阶段提交协议进行了实验和分析。实验表明我们的想法是正确的和可行的。