论文部分内容阅读
本文首先通过介绍面向对象数据库的产生背景,发展和现状,比较了其和传统关系型数据库在基本特性、开发方式、适用领域、性能上的区别,指出了面向对象数据库更合适用于有数据类型丰富,数据间联系密切等特征的非传统型工程应用领域。 文中概要的描述了我们首次按ODMG标准,尝试研发的面向对象数据库管理系统原型——TR-OODB,它基于Wisconsin-Madison大学研制的非定长记录存储底层SSM(ShoreStorage Manager)实现。TR-OODB使用对象服务器模式,采用CORBA作为C/S通信方式。这样的实现造成客户/服务器之间只能采用对象粒度进行通信,服务器事务与用户态线程一一对应等弊端,系统整体运行效率不高。 通过总结TR-OODB开发的成功经验和不足之处,我们从底层存储开始,进行了新一轮的面向对象数据库管理系统——ONet的研发。为了提高系统性能,ONet服务端有两个关键设计:1)系统的客户机与服务器之间以页面为单位传送数据,即页面服务器模式;2)采用把数据库事务和操作系统执行实体(线程)分开的被动事务模式。合理设计的ONet服务端存储管理层,使之自然的应用Windows NT/2000 I/O完成端口线程池技术实现了服务端的多线程机制。文中重点讨论了ONet服务端存储管理的设计原则、详细设计和各个相关模块的实现。最后本文还论述了ONet客户端实现中的若干关键技术问题和该系统发展的构想。