针对长事务失效恢复效率问题,提出了长事务的层次式模型LHM,给出分支和循环的有效处理方法.基于该模型提出了面向长事务的层次失效恢复算法LHFR.在保证长事务语义原子性和持久性前提下,该算法通过将失效控制在最低层次的子事务内进行补偿,能将失效范围限制在长事务实例的局部范围内,从而限制失效后回滚子事务的数量,减少不必要的时间损失,提高失效恢复的效率.通过模拟长事务执行与失效恢复过程,验证了LHFR算法的高效性,实验表明该算法可以缩短失效恢复所需时间并减少因无法补偿而需要人工干预的概率.
Failure recovery optimization is one important way for enhancing efficiency of long running transaction(LRT)processing.In this paper,aiming at the efficiency problem of LRT failure recovery,LHM(long running transaction hierarchical model),a hierarchical model for LRTs,is established,which divides LRTs into a series of sub-transactions in different levels.LHM supports versatile transaction properties of LRT and provides techniques for processing branch and loop structures of LRTs.Based on LHM,LHFR(LRT hierarchical failure recovery),a hierarchical failure recovery algorithm is proposed.This algorithm uses methods of compensation and functional equivalent replacement.It supports auto-recovery of failures during the execution of LRTs.LHFR algorithm can guarantee long business's semantic atomicity property and durability property.By restricting the compensation scope in lower level of complex LRTs,LHFR limits the quantity of sub-transactions to be compensated.Thus,it reduces unnecessary loss of time and enhances the efficiency of failure recovery.Also presented is a comprehensive simulation,which confirms the accuracy and high efficiency of LHFR algorithm.Experiment results show that LHFR can reduce the time required for failure recovery.The results also illustrate that LHFR can decrease the probability of manual intervention required by sub-transactions that are unable to compensate.