论文部分内容阅读
作为计算机软件的一个重要分支,数据库管理系统是当前最复杂的软件系统之一。数据库管理系统(DBMS)是一个强有力的工具,用于高效地管理大量的数据,并使得数据能够安全地长期保存,并且向用户提供编程接口以及事务管理的能力。 为保证各个并发事务的ACID特性,并且保证高并发度和高性能,数据库系统必须采用某种并发控制机制来保证事务的可串行性调度。负责并发控制的DBMS部件是调度器。一般来说,有三种调度器,分别为基于锁、时间戳和有效性检查。作为一种大型的对象关系型数据库管理系统,OSCAR采用了基于锁的调度器。 本文主要介绍了OSCAR数据库管理系统的锁管理模块的设计和实现方法。本锁管理系统是针对实现二阶段锁协议和树协议而设计实现的。具体实现了三层锁粒度,支持各个锁粒度的自动加锁算法,支持智能的锁粒度升级算法。该模块同时提供死锁检测线程按照可动态调整的时间间隔来执行死锁检测。