长事务与面向对象解决方案
立即解锁
发布时间: 2025-08-27 00:05:00 阅读量: 3 订阅数: 8 


事务管理与分布式数据库的挑战和解决方案
### 长事务与面向对象解决方案
#### 1. 引言
在关系型数据库管理系统(DBMS)中存储大对象的应用,如计算机辅助设计/计算机辅助制造(CAD/CAM)和计算机集成制造(CIM),常受事务和数据库方面的限制与性能不佳的困扰。而面向对象的方法有助于解决这些问题。
一些关系型DBMS允许将相当大的原子对象作为长字段列存储。从DBMS的角度看,长字段(如文件)包含未解释的字节序列。但数据库在事务中基于长字段内容应用选择谓词的能力有限,且不建模长字段的内容或结构,导致事务和查询无法对其内容应用函数。例如,IBM的DB2、SQLIDS和OS/2扩展版,长字段最多能存储32千字节的对象,这对许多应用来说是不够的。
长字段不仅对很多应用不适用,其大小限制还妨碍了对小且常用信息元素(IE)的高效存储。而且,长字段和长事务表面上似乎很匹配,但实际上它们支持的粗粒度适得其反,会使事务执行、并发控制和更改数据的恢复变得复杂。
相比之下,对象模型可为数据库设计提供新维度。它允许集成流程调度分析,并用于开发新的数据库结构。面向对象系统有多种方法,从为传统数据库提供语言支持以扩展关系模型,到完全的面向对象解决方案。面向对象似乎特别适合需要灵活性和数据库细粒度的事务应用,但这并不意味着对象能解决所有问题。
#### 2. 长事务与面向对象解决方案
实现面向对象DBMS的兴趣源于对满足性能和功能需求的解决方案的需求。新一代事务和应用在关系型DBMS中找不到满意答案,这使得面向对象的解决方案变得尤为重要。
面向对象的最初推动力来自CAD、办公自动化(OA)和CASE等应用,随后是管理信息系统(MIS)、CIM等的需求。这些应用的数据管理需求与关系型DBMS的功能响应有根本区别,而Codasyl和过时的层次方法根本无法满足即将到来的事务处理需求,这些需求涉及具有多媒体、客户端 - 服务器结构和演绎数据库特点的异构环境。
一些系统设计师认为关系型数据库阻碍了商业数据处理行业的发展,而面向对象数据库可能实现20年前计算机自动化和改进组织能力的承诺。
与20世纪70年代和80年代以大量小事务为主的情况不同,新一代复杂系统的特点是长事务相对较少。因此,DBMS必须能够有效地支持可能执行数分钟、数小时或数天、涉及分布式异构数据库且常包含多个数据版本的事务的并发执行。处理小事务的能力虽然仍有必要,但重要性相对降低。
处理长事务并非要抛弃已有的经验,借贷操作已编程并存储在数据库中,只要这些数据库能有效联网,就可以保留。然而,许多公司还缺乏处理长事务的文化和专业知识。长事务是一个概念,描述了在应用开发中使用版本控制和配置来解决并发控制问题的效果。这需要支持用户之间的签入、签出、检查点、撤销和通知操作,而面向对象的解决方案可能提供更根本的方法,在服务锁定机制方面也是如此。
对象之间的关系必须建模,从一对一、一对多到多对多。这是创建复杂对象(如设计、零件层次结构、金融投资组合、文档和多媒体信息)的关键。面向对象的解决方案可以促进长事务的高效处理,因为它们支持临时层次结构,这些结构在事务期间存在,事务完成后即消失。临时信息元素的概念与永久信息元素形成对比,前者在事务完成时消失,而后者定义了事务的完成。
面向对象方法的实现利用抽象数据类型(ADT)和语义,在定义和操作IE时注重含义。其其他特点包括有助于建立和遵守元级别概念、继承和执行一致性。这些对象特性相互支持,例如,元级别有助于执行一致性,元知识(关于知识的知识)有助于描述执行的过程,并在执行期间建立限制和约束。对于数据也是如此,元数据是关于数据的数据。
尽管存在异构数据库且大多数更新各不相同,但通过元知识、元规则和元数据可以获得更好的结果。元级别和继承是信息技术中的新概念,远远超出了传统数据处理的范畴。
一些实现者尝试混合面向对象和关系型方法,以保留关系模型的已有专业知识,同时增加声明性和用户管理的集合成员资格、跨数据库关联查询的能力以及事务封闭性,使复杂IE上的事务产生的对象可以嵌套在其他事务或对象中。
面向对象的支持者指出其他数据库管理方法在开发现代信息系统方面的不足。他们认为一些基于数据流图和功能分解的分析方法要么过度强调要么低估了系统的功能或动态方面,以及其结构或静态方面。然而,有效的解决方案不仅仅依赖于某种方法,还取决于精心的实验设计。
#### 3. 演绎环境中的信息技术
事务触发的提交和锁定可以从分布式数据库和/或事务本身嵌入的演绎能力中受益。归纳和演绎(即意向性方法)通过知识工程实现,而知识工程正日益成为面向对象解决方案不可或缺的伙伴。
实现对象视图可以通过特殊结构的事务或查询,使用意向性(即非过程性)规范从平面表中派生对象,但这是一种新的文化。
经典数据模型的一个关键问题是它们以记录为基础,数据库中信息的含义(即语义)不明显。用户必须通过不太适合的工具有意识地应用语义信息,因此引入了一些外来结构来提供更具表现力的表示方式,但这些结构与现有环境的集成不佳,无法提供有效的实体和关系模型,也不能保证实体之间的关联以实现数据库级的演绎功能。
在演绎数据库环境中,长事务将在分布式文件服务器以及文本和数据仓库中执行,这区分了用知识工程增强的意向性数据库(IDB)和存储对象和/或文件的外延数据库(EDB)。意向性数据库分为IDB 1和IDB 2两部分,IDB 2位于文件服务器级别,IDB 1与应用程
0
0
复制全文
相关推荐










