- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库第8章面向对象与分布式数据库
第8章 面向对象和分布式数据库;8.1 数据模型与数据库系统的发展;8.1.1 第一代数据库系统
层次数据库系统和网状数据库系统的数据模型分别为层次模型和网状模型,但从本质上讲层次模型是网状模型的特例,二者从体系结构、数据库语言到数据存储管理上均具有共同的特征,都是格式化模型,属于第一代数据库系统。
第一代数据库系统的特点是:
1.支持三级模式的体系结构
层次数据库和网状数据库均支持三级模式结构,即外模式、模式和内模式,并通过外模式与模式、模式与内模式二级映象,保证了数据的物理独立性和逻辑独立性。
2.用存取路径来表示数据之间的联系
数据库不仅存储数据而且存储数据之间的联系。数据之间的联系在层次和网状数据库系统中是用存取路径来表示和实现的。;3.独立的数据定义语言
第一代数据库系统使用独立的数据定义语言来描述数据库的三级模式以及二级映象。格式一经定义就很难修改,这就要求数据库设计时,不仅要充分考虑用户的当前需求,还要了解需求可能的变化和发展。
4.导航的数据操纵语言
导航的含义就是用户使用某种高级语言编写程序,一步一步的引导程序按照数据库中预先定义的存取路径来访问数据库,最终达到要访问的数据目标。在访问数据库时,每次只能存取一条记录值。若该记录值不满足要求就沿着存取路径查找下一条记录值。
;8.1.2 第二代数据库系统
第二代数据库系统是指支持关系数据模型的关系数据库系统。
关系模型不仅简单、清晰,而且有关系代数作为语言模型,有关系数据理论作为理论基础。所以在关系模型提出后,很快便从实验室走向了社会,20世纪80年代几乎所有新开发的数据库系统都是关系型数据库系统。这些商用数据库系统的运行,特别是微机RDBMS的使用,使数据库技术日益广泛地应用到企业管理、情报检索、辅助决策等各个方面,成为实现和优化信息系统的基本技术。
;关系模型之所以能成为深受广大用户欢迎的数据模型,与第一代数据库系统所支持的格式化模型相比,主要具有以下特点:
关系模型的概念单一,实体以及实体之间的联系都用关系来表示;
关系模型以关系代数为基础,形式化基础好;
数据独立性强,数据的物理存取路径对用户隐蔽;
关系数据库语言是非过程化的,将用户从编程数据库记录的导航式检索中解脱出来,大大降低了用户编程的难度。
;8.1.3 传统数据库的局限性
一般说来,将第一代数据库和第二代数据库称为传统数据库。
由于传统数据库尤其是关系数据库系统具有许多优点,人们纷纷采用数据库技术来进行数据管理,数据库技术被应用到了许多新的领域,如计算机辅助设计/计算机辅助制造(CAD/CAM),计算机辅助工程(CASE),图像处理等,这些新领域的应用不仅需要传统数据库所具有的快速检索和修改数据的特点,而且在应用中提出了一些新的数据管理的需求,如要求数据库能够处理声音、图像、视频等多媒体数据。
在这些新领域中,传统数据库暴露了其应用的局限性,主要表现在以下几个方面:;1.面向机器的语法数据模型
传统数据库中采用的数据模型是面向机器的语法数据模型,只强调数据的高度结构化,只能存储离散的数据和有限的数据与数据之间的关系,语义表示能力较差,无法表示客观世界中的复杂对象,如声音、图像、视频等多媒体数据,工程、测绘等领域中的非格式化数据。此外,传统数据模型缺乏数据抽象,无法揭示数据之间的深层含义和内在联系。
2.数据类型简单、固定
传统的DBMS主要面向事务处理,只能处理简单的数据类型,如整数、实数、字符串、日期等,而不能根据特定的需要定义新的数据类型。例如,不能定义包含三个实数分量(x,y,z)的数据类型circle来表示圆,而只能分别定义三个实型的字段。这样对于复杂的数据类型只能由用户编写程序来处理,加重了用户的负担,也不能保证数据的一致性。;3.结构与行为完全分离
从应用程序员的角度来看,在某一应用领域内标识的对象可以包含两方面的内容,即对象的结构和对象的行为。
传统的数据库可以采用一定的数据库模式来表示前者,而对于后者,却不能直接存储和处理,必须通过另外的应用程序加以实现。例如,对于多媒体数据,虽然可以在带有前面所提到的缺陷的情况下以简单的二进制代码形式存储其结构,但却无法存储其行为(如播放声音、显示图像等)。这样,这些多媒体数据必须由相应的应用程序来识别,而对于其他不了解其格式的用户来说,数据库中存储的是没有任何意义的二进制数据。
由此可见,在传统数据库中,对象的结构可以存储在数据库中,而对象的行为必须由应用程序来表示,对象的结构与行为完全相分离。
;4.被动响应
传统数据库只能根据用户的命令执行特定的服务,属于被动响应,用户要求做什么,系统就做什么。而在实际应用中,往往要求一个系统能够管理它本身的状态,在发现异常情况时及时通知用户;能够主动响应某些操作或外部事件,自动采取规定的行动等
文档评论(0)