湖南科技大学教育学院数据库基础第1章数据库发展史第1章数据库发展史1.1数据管理技术的发展1.1.1人工管理阶段1.1.2文件系统阶段1.1.3文件系统的缺陷1.2数据库技术的产生和发展1.2.1数据库技术的产生1.2.2数据库阶段数据管理的特点1.2.3数据库技术术语1.2.4数据库技术的发展1.3数据库的地位1.1数据管理技术的发展数据管理技术经历的发展阶段:人工管理阶段文件系统阶段数据库阶段1.1数据管理技术的发展人工管理阶段年代特征:20世纪50年代中期以前管理特征:以科学计算为主,无法完成其它工作;数据不保存在计算机内,存储设备以纸带、卡片、磁带等为主,无操作系统、无管理数据的软件、数据处理方式是批处理。穿孔纸带、穿孔卡片HITAC10—1971年产,使用纸带做存储设备的计算机HITAC10—1971年产,使用纸带做存储设备的计算机HITAC10—1971年产,使用纸带做存储设备的计算机1.1.1人工管理阶段管理特征:进行计算时,数据随程序一起输入内存。无专用软件对数据进行管理,应用程序管理数据,数据不共享,数据不具有独立性。1.1.1人工管理阶段1.1.2文件系统阶段时间:20世纪50年代后期-60年代中期。磁鼓、磁盘等存储设备代替了纸带卡片(容量更大、存取速度更快)软件领域出现了高级语言(FORTRAN第一个电脑高级语言,它是1954年美国的IBM的IT成果)和操作系统1.1.2文件系统阶段文件系统的特点:计算机的应用转向信息管理,对数据要进行大量的查询、修改和插入等操作。数据以文件的形式存储在外存储器上,由操作系统统一管理,操作系统为用户提供了按名存取的存取方式,用户不必知道数据存放在什么地方以及如何存储。数据与程序就有了一定的独立。对数据的操作以记录为单位。1.1.2文件系统阶段用户的应用程序与数据文件可分别存放在外存储器上,不同应用程序可以共享一组数据,实现了数据以文件为单位的共享1.1.2文件系统阶段两个C语言程序仍然是求10个数据之和和最大值,但是数据来自同一个文件文件C:\data.dat,实现了数据共享,这是文件管理阶段处理数据的方式。1.1.2文件系统阶段文件系统是数据库管理技术发展的重要阶段,为数据库技术的进一步发展奠定了基础但也存在缺陷:数据冗余数据不一致数据联系弱1.2.1数据库技术的产生前提20世纪60年代开始的第五次信息技术革命,计算机技术应用于工业制造、航空航天等各行各业,推动了计算机应用的深入发展。磁盘技术的发展,大容量和快速存取的磁盘陆续进入市场,为数据库技术的产生提供了良好的物质条件。1.2.1数据库技术的产生数据库技术的诞生以下列三大事件为标志:第1件大事:IMS的产生1968年,IBM公司推出了基于层次模型的数据库管理系统IMS(InformationManagementSystem)。数据库历史上第一个商用产品,在上世纪70年代在商业、金融系统中得到广泛应用。1.2.1数据库技术的产生第2件大事:DBTG报告1969年,美国数据系统语言协商会(ConferenceonDataSystemLanguage,简称CODASYL)下属数据库任务组(DataBaseTaskGroup,简称DBTG)发布了一系列的报告对数据库和数据操作的环境建立了标准的规范根据DBTG报告实现的系统一般成为DBTG系统,在20实际70-80年代中期得到广泛应用。1.2.1数据库技术的产生DODASYL组织的另1项贡献:COBOL语言COBOL(CommonBusinessOrientedLanguage)是最早的高级编程语言之一,是世界上第一个商用语言。1.2.1数据库技术的产生第3件大事:Codd的文章1970年,IBM公司的研究人员E.F.Codd发表了大量论文,提出了关系模型,奠定了关系型数据库管理系统的基础。目前市场上的主流数据库如:Oracle、SQLServer、DB2等基本上都是关系数据库,因此Codd提出的关系模型具有重大的理论价值。1.2.2数据库阶段数据管理的特点数据库技术满足了集中存储大量数据以方便众多用户使用的要求。数据库系统的特点是:1.采用复杂的结构化的数据模型不仅要描述数据本身,还要描述数据之间的联系。这种联系是通过存取路径来实现的,通过存取路径来表示自然的数据联系是数据库与传统文件的根本区别。这样数据库中的数据不再是面向特定的某几个应用,而是公用的、综合的,以最优的方式去适应多个应用程序的要求。1.2.2数据库阶段数据管理的特点2.最低的冗余度在文件系统中,数据不能共享,当不同的应用程序所需要使用的数据有许多是相同时,也必须建立各自的文件,这就造成了数据的重复,浪费了大量的存储空间,这也使得数据的修改变得困难,因为同一个数据会存储于多个文件之中,修改时稍有疏漏,就会造成数据的不一致。而数据库具有最低的冗余度,尽量地减少系统中的不必要的重复数据,在有限的存储空间内存放更多的数据,也提高了数据的正确性。1.2.2数据库阶段数据管理的特点3.有较高的数据独立性用户所面对的是简单的逻辑结构操作数据而不涉及具体的物理存储结构,数据的存储和使用数据的程序彼此独立,数据存储结构.的变化尽量不影响用户程序的使用,用户程序修改时也不要求数据结构做较大的改变。1.2.2数据库阶段数据管理的特点数据独立性DBMS应用程序1应用程序2数据库…1.2.2数据库阶段数据管理的特点4.数据库系统为用户提供了方便的用户接口用户可以通过查询语言(如SQL语言)操作数据库,还可以用程序方式操作数据库。程序通过调用SQL语言操作数据库。1.2.2数据库阶段数据管理的特点5.四个方面的数据控制功能并发控制:对并发操作进行控制,放置数据库被破坏,杜绝向用户提供不同信息。数据库的恢复数据的完整性:数据一致、正确(见下页)类别:实体完整性、值域完整性、引用完整性、用户自定义完整性。安全性:对不同用户设置不同的权限数据完整性类别值域完整性(columns)实体完整性(rows)引用完整性(betweentables)引用完整性举例1.2.2数据库阶段数据管理的特点(5)系统更加灵活对数据的操作不一定以记录为单位,可以以数据项为单位。ID姓名出生年月籍贯联系方式1张三…2李四…3王五…4……1.2.2数据库阶段数据管理的特点(6)信息处理方式不再以程序为中心,而是以数据为中心传统方式下(文件系统),程序处于主导地位。数据库方式下,数据处于中心地位。P7图1.41.2.3数据库技术术语数据(Data)数据库(Database)数据库管理系统(DBMS)数据库系统(DBS)数据数据(Data)是数据库中存储的基本对象数据的定义描述事物的符号记录数据的种类文字、图形、图象、声音数据的特点数据与其语义是不可分的数据举例学生档案中的学生记录(李明,男,1972,江苏,计算机系,1990)数据的形式不能完全表达其内容数据的解释语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间解释:李明是个大学生,1972年出生,江苏人,1990年考入计算机系数据库(举例)学生登记表学号姓名年令性别系名年级95004王小明19女社会学9595006黄大鹏20男商品学9595008张文斌18女法律学95………………数据库(续)人们收集并抽取出一个应用所需要的大量数据之后,应将其保存起来以供进一步加工处理,进一步抽取有用信息数据库的定义数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。数据库(续)数据库的特征数据按一定的数据模型组织、描述和储存可为各种用户共享冗余度较小数据独立性较高易扩展数据库管理系统什么是DBMS数据库管理系统(DatabaseManagementSystem,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。DBMS的用途科学地组织和存储数据、高效地获取和维护数据DBMS的主要功能数据定义功能提供数据定义语言(DDL)定义数据库中的数据对象数据操纵功能:提供数据操纵语言(DML)操纵数据实现对数据库的基本操作(查询、插入、删除和修改)DBMS的主要功能数据库的运行管理保证数据的安全性、完整性、多用户对数据的并发使用发生故障后的系统恢复数据库的建立和维护功能(实用程序)数据库数据批量装载数据库转储介质故障恢复数据库的重组织性能监视等数据库系统(DBS)什么是数据库系统(DBS)数据库系统(DatabaseSystem,简称DBS)是指在计算机系统中引入数据库后的系统构成。在不引起混淆的情况下常常把数据库系统简称为数据库。数据库系统的构成由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。数据库(续)QQ程序数据库服务器数据库(用户的资料等数据信息)DBMS(如:SQLServer、ACCESS)DBS数据库系统1.2.4数据库技术的发展分布式数据库系统分布式数据库是一个数据在多个不同的地理位置存储的数据库。1.分布性。数据不是存储在同一台服务器的存储设备上,而是存储在多个独立的数据库服务器中。2.逻辑整体性。分布式数据库系统中的数据是相互联系的,逻辑上是一个统一的整体,也就是从外界看来,就像是一个集中式数据库系统。1.2.4数据库技术的发展面向对象数据库随着数据库技术应用领域的进一步拓宽,要求数据库不仅能方便地存储和检索结构化的数字和字符等信息,而且可以方便地存储和检索诸如图形、图像等复杂信息对象。传统的DBMS很难处理这些复杂对象,如包括了复杂关系、数据类型多种的CAD数据库中的设计数据。若在关系型数据库系统中要处理这些复杂数据对象,则需使用专门的应用程序把这些复杂的数据对象分解成适合于在二维表中存储的数据。面向对象数据库则可以像对待一般对象一样存储这些数据与过程,这些对象可以方便地被系统检索。1.2.4数据库技术的发展多媒体数据库传统的数据库管理系统在处理大字节的数据类型时,采取了复杂的方法。但对于要求处理大量图形、图像、音频、视频等多媒体数据时,这些方法就显得无能为力了。因此,如何存储和使用这些具有海量数据量的多媒体数据就成为摆在数据库研究与开发人员面前的重要课题。从技术角度讲,多媒体数据库涉及了诸如图像处理技术、音频处理技术、视频处理技术、三维动画技术、海量数据存储与检索技术等多方面的技术,如何综合处理这些技术是多媒体数据库技术需要解决的问题。1.2.4数据库技术的发展数据仓库数据仓库是面向主题的、集成的、稳定的和随时间变化的数据集合,主要用于决策制定。数据仓库并不是一个新的平台,仍然使用传统的数据库管理系统,而是一个新的概念。数据仓库是一个处理过程,该过程从历史的角度组织和存储数据,并能集成地进行数据分析。换句话说,数据仓库是一个很大的数据库,存储了经营过程中的所有业务数据。数据仓库允许各个部门之间共享数据,为企业更快、更好地做出经营决策提供准确的完整的信息。1.2.4数据库技术的发展工程数据库工程数据库是一种能存储和管理各种工程设计图形和工程设计文档,并能为工程设计提供各种服务的数据库。工程数据库是针对计算机辅助系统领域的需求而提出来的,目的是利用数据库技术对各类工程对象有效地进行管理,并提供相应的处理功能及良好的设计环境。工程数据库管理系统是用于支持工程数据库的数据库管理系统,由于工程数据库具有数据结构复杂、相互关系紧密与数据量大等特点。1.2.4数据库技术的发展空间数据库空间数据库系统是描述、存储与处理具有位置、形状、大小、分布特征及空间关系等属性的空间数据及其属性数据的数据库系统。它随着地理信息系统GIS的开发与应用而发展起来的数据库新技术。目前,空间数据库仍然是利用关系数据库管理系统对地理信息进行物理存储。近年来,我国在空间数据库的研究和应用上取得了巨大的成就,开