八章面向对象数据库.pptVIP

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
八章面向对象数据库

第八章 面向对象数据库 8.1 新应用的需求 和传统数据库的局限性 OODB vs RDB 8.2 面向对象程序设计语言 面向对象程序设计的特点 支持模块化设计 以主体数据(对象)为中心,以数据上的操作作为界面进行设计(结构化的方法:数据输入-处理-数据输出) 软件复用 对象封装使程序员可以通过界面理解和操作对象 对象继承允许对象实现复用具有相同特征的其它对象代码 软件维护 面向对象的软件开发,从分析、设计、实现和测试等阶段都是基于对象的概念,在开发和维护阶段,软件系统的结构都是一致的,易于维护。 面向对象程序设计方法在计算机多个领域产生深远影响 程序设计语言 人工智能 软件工程 信息系统设计 计算机硬件设计 数据库 面向对象数据库系统:ObjectStore、O2、Orion、Versant、Gemstone、Itasca 8.3 面向对象数据模型 OO数据模型 用面向对象的观点描述现实世界对象的逻辑组织、对象之间的限制、联系的模型称为OO数据模型。 OO模型的核心概念 对象 属性集合 描述对象的状态、组成和特征 方法集合 描述对象的行为特征 消息集合 是对象向外提供的界面,由对象接收和响应 简单对象、 复杂对象 对象标识 每个对象都有一个内部标识符OID,OID在整个系统中 是唯一的,一旦生成就不能改变。 OID的表示 值标识 由对象的属性组成对象标识 指针标识 指向物理存储位置的指针作为对象标识 代用品法(surrogate),与对象的内部属性无关。 类标识,实例标识 封装 每个对象都是其状态和行为的封装体。 类 具有相同特征对象的集合;对象为类中的实例。 类本身看作对象,称为类对象。 面向对象数据库模式是类的集合,形成类层次结构 类层次 一组相关类形成类层次结构 子类、超类 子类和超类的关系体现了“is A”的语义 继承 子类和超类间具有继承关系 子类继承超类的属性和方法。 单继承和多继承 解决同名冲突的方法: 子类与超类间的同名冲突按子类优先处理; 多个超类间的同名冲突,按说明超类的先后取第一个超类中的定义 或 规定继承的超类; 提供显式方法: 从多个冲突的实例变量或方法中继承一个;继承多个,在类定义中重新命名。 多态性 同一操作有不同的实现,取决于具体对象。如“+”法 滞后联编 对对象操作的编译推迟到运行时实现,称滞后联编。 例:在同一个超类的不同子类上执行同一个操作。 如同一个显示操作可以显示不同的数据类型: 人的信息、图象 定义图书类: class book{ book_no: string; book_name: string; written_by: author; publisher_by: publisher; date_of_publation: date; new(); …… }; class author{ …… }; class publisher{ …… }; 多粒度封锁 允许类层次中的每个结点单独加锁 对一个结点加锁,其下层结点也被加以同样类型的隐式锁。 在多粒度封锁中一个数据对象可以两种方式封锁:显式封锁和隐式封锁- 多粒度封锁 显式封锁 通过上锁命令(LOCK)直接加到数据对象上的封锁; 隐式封锁 该数据对象没有独立加锁,是由于其上级结点加锁而使该数据对象隐式加了锁。 隐式锁和显式锁的作用是一样的 对某个数据对象加锁 时系统检查的内容 该数据对象 有无显式封锁与之冲突 所有上级结点 检查本事务的显式封锁是否与该数据对象上的隐式封锁冲突:(由上级结点封锁造成的) 所有下级结点 看上面的显式封锁是否与本事务的隐式封锁( 加到下级结点的封锁)冲突。 意向锁(intention lock) 例:事务T对类C 加X锁,系统必须检查其所有超类结点有无冲突、所有子类有无冲突,如果有冲突,则T等待。 意向锁 什么是意向锁 对任一结点加基本锁,必须先对它的上层结点加意向锁 如果对一个结点加意向锁,则说明该结点的下层结点正在被加锁 常用意向锁 意向共享锁(Intent Share Lock,简称IS锁) 意向排它锁(Intent Exclusive Lock,简称IX锁) 共享意向排它锁(Share Intent Exclusive Lock,简称SIX锁) 意向锁 意向锁: IS、IX、SIX 意向共享锁(IS): 对一个数据对象加IS锁,表示事务可能对类中的实例显式请求S锁。 意向排它锁(IX): 在类上加I

文档评论(0)

118books + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档