第一章 引言改Word文档下载推荐.docx
- 文档编号:22405032
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:19
- 大小:124.30KB
第一章 引言改Word文档下载推荐.docx
《第一章 引言改Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《第一章 引言改Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
数据在大多数人头脑中的第一个反应就是数字。
其实数字只是最简单的一种数据,是数据的一种传统和狭义的理解。
广义的理解中,数据的种类很多,文字、图形、图像、声音、学生的档案记录、货物的运输情况等,都可以是数据。
可以对数据做如下定义:
描述事物的符号记录称为数据。
描述事物的符号可以是数字,也可以是文字、图形、图像、声音、语言等,数据有多种表现形式,它们都可以经过数字化后存入计算机。
为了了解世界,交流信息,人们需要描述各种事物。
在日常生活中直接用自然语言(如汉语)描述。
在计算机中,为了存储和处理这些事物,就要抽出对这些事物感兴趣的特征组成一个记录来描述。
例如:
在学生档案中,如果人们最感兴趣的是学生的姓名、性别、年龄、出生年月、籍贯、所在系别、入学时间,那么可以这样描述:
(李明,男,21,1972,江苏,计算机系,1990)
因此这里的学生记录就是数据。
对于上面这条学生记录,了解其含义的人会得到如下信息:
李明是个大学生,1972年出生,男,江苏人,1990年考入计算机系;
而不了解其语义的人则无法理解其含义。
可见,数据的形式还不能完全表达其内容,需要经过解释,所以数据和关于数据的解释是不可分的,数据的解释是指对数据含义的说明,数据的含义称为数据的语义,数据与其语义是不可分的。
二、数据库(DataBase,DB)
数据库,顾名思义,是存放数据的仓库。
只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的。
人们收集并抽取出一个应用所需要的大量数据之后,应将其保存起来以供进一步加工处理,进一步抽取有用信息。
在科学技术飞速发展的今天,人们的视野越来越广,数据量急剧增加。
过去人们把数据存放在文件柜里,现在人们借助计算机和数据库技术科学地保存和管理大量的复杂的数据,以便能方便而充分地利用这些宝贵的信息资源。
所谓数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
三、数据库管理系统(DataBaseManagementSystem,DBMS)
了解了数据和数据库的概念,下一个问题就是如何科学地组织和存储数据,如何高效地获取和维护数据。
完成这个任务的是一个系统软件——数据库管理系统。
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。
它和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。
直观的讲,数据库管理系统是管理和控制对数据库进行访问的软件系统,它能够让用户定义、创建和维护数据库以及控制对数据的访问,它的主要功能包括以下几个方面:
1.数据定义功能
DBMS提供数据定义语言(DataDefinitionLanguage,DDL),用户通过它可以方便地对数据库中的数据对象进行定义。
2.数据操纵功能
DBMS提供数据操纵语言(DataManipulationLanguage,DML),用户可以使用DML操纵数据实现对数据库的基本操作,如查询、插入、删除和修改等。
3.数据库的事务管理和运行管理
数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
4.数据库的建立和维护功能
它包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等,这些功能通常是由一些实用程序或管理工具完成的。
四、数据库应用系统
数据库应用系统是由通过向DBMS发出合适的操作请求(如查询、更改)与数据库交互的计算机应用程序构成的系统。
如现实生活中的图书管理系统、工资管理系统、航空订票系统等,都可以看作是数据库应用系统。
数据库的最终用户一般都是通过那些用于创建和维护数据库并产生信息的数据库应用系统与数据库进行交互,以达到维护和使用数据库中数据的目的,这些系统可以用相关开发工具及程序设计语言设计编写。
五、数据库系统(DataBaseSystem,DBS)
数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
应当指出的是,数据库的建立、使用和维护等工作只靠一个DBMS远远不够,还要有专门的人员来完成,这些人被称为数据库管理员(DataBaseAdministrator,DBA)。
在一般不引起混淆的情况下常常把数据库系统简称为数据库。
数据库系统可以用图1.1表示。
数据库系统在整个计算机系统中的地位如图1.2所示。
1.1.3数据管理技术的产生和发展
数据库技术是应数据管理任务的需要而产生的。
数据管理是指对数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心问题。
而数据处理则是指对各种数据进行收集、存储、加工和传播的一系列活动的总和。
在应用需求的推动下,在计算机硬件、软件发展的基础上,数据管理技术经历了人工管理、文件系统、数据库系统三个阶段。
这三个阶段的特点及其比较如表1.1所示。
表1.1数据管理三个阶段的比较
人工管理阶段
文件系统阶段
数据库系统阶段
背
景
应用背景
科学计算
科学计算、管理
大规模管理
硬件背景
无直接存取存储设备
磁盘、磁鼓
大容量磁盘
软件背景
没有操作系统
有文件系统
有数据库管理系统
处理方式
批处理
联机实时处理、批处理
联机实时处理、分布处理、批处理
特
点
数据的管理者
用户(程序员)
文件系统
数据库管理系统
数据面向的对象
某一应用程序
某一应用
现实世界
数据的共享程度
无共享,冗余度极大
共享性差,冗余度大
共享性高,冗余度小
数据的独立性
不独立,完全依赖于程序
独立性差
具有高度的物理独立性和一定的逻辑独立性
数据的结构化
无结构
记录内有结构、整体无结构
整体结构化,用数据模型描述
数据控制能力
应用程序自己控制
由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力
一、人工管理阶段
20世纪50年代中期以前,计算机主要用于科学计算。
当时的硬件状况是,外存只有纸带、卡片、磁带,没有磁盘等直接存取的存储设备;
软件状况是,没有操作系统,没有管理数据的软件;
数据处理方式是批处理。
人工管理数据具有如下特点:
(1)数据不保存
由于当时计算机主要用于科学计算,一般不需要将数据长期保存,只是在计算某一课题时将数据输入,用完就撤走。
不仅对用户数据如此处置,对系统软件有时也是这样。
(2)应用程序管理数据
数据需要由应用程序自己管理,没有相应的软件系统负责数据的管理工作。
应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构,包括存储结构、存取方法、输入方式等。
因此程序员负担很重。
(3)数据不共享
数据是面向应用的,一组数据只能对应一个程序。
当多个应用程序涉及某些相同的数据时,由于必须各自定义,无法互相利用、互相参照,因此程序与程序之间有大量的冗余数据。
(4)数据不具有独立性
数据的逻辑结构或物理结构发生变化后,必须对应用程序做相应的修改,这就进一步加重了程序员的负担。
在人工管理阶段,程序与数据之间的一一对应关系可用图1.3表示。
二、文件系统阶段
20世纪50年代后期到60年代中期,这时硬件方面已有了磁盘、磁鼓等直接存取存储设备;
软件方面,操作系统中已经有了专门的数据管理软件,一般称为文件系统;
处理方式上不仅有了批处理,而且还能够联机实时处理。
用文件系统管理数据具有如下特点:
(1)数据可以长期保存
由于计算机大量用于数据处理,数据需要长期保留在外存上反复进行查询、修改、插入和删除等操作。
(2)由文件系统管理数据
由专门的软件即文件系统进行数据管理,文件系统把数据组织成相互独立的数据文件,利用“按文件名访问,按记录进行存取”的管理技术,可以对文件进行修改、插入和删除的操作。
文件系统实现了记录内的结构性,但整体无结构。
程序和数据之间由文件系统提供存取方法进行转换,使应用程序与数据之间有了一定的独立性,程序员可以不必过多地考虑物理细节,将精力集中于算法。
而且数据在存储上的改变不一定反映在程序上,大大节省了维护程序的工作量。
但是,文件系统仍存在以下缺点:
(1)数据共享性差,冗余度大
在文件系统中,一个文件基本上对应于一个应用程序,即文件仍然是面向应用的。
当不同的应用程序具有部分相同的数据时,也必须建立各自的文件,而不能共享相同的数据,因此数据的冗余度大,浪费存储空间。
同时由于相同数据的重复存储、各自管理,容易造成数据的不一致性,给数据的修改和维护带来了困难。
(2)数据独立性差
文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。
一旦数据的逻辑结构改变,必须修改应用程序,修改文件结构的定义。
应用程序的改变,例如应用程序改用不同的高级语言等,也将引起文件的数据结构的改变。
因此数据与程序之间仍缺乏独立性。
可见,文件系统仍然是一个不具有弹性的无结构的数据集合,即文件之间是孤立的,不能反映现实世界事物之间的内在联系。
在文件系统阶段,程序与数据之间的关系如图1.4所示。
三、数据库系统阶段
20世纪60年代后期以来,计算机用于管理的规模越来越大,应用越来越广泛,数据量急剧增长,同时多种应用、多种语言互相覆盖地共享数据集合的要求越来越强烈。
这时硬件己有大容量磁盘,硬件价格下降;
软件则价格上升,为编制和维护系统软件及应用程序所需的成本相对增加;
在处理方式上,联机实时处理要求更多,并开始提出和考虑分布处理。
在这种背景下,以文件系统作为数据管理手段已经不能满足应用的需求,于是为解决多用户、多应用共享数据的需求,使数据为尽可能多的应用服务,数据库技术便应运而生,出现了统一管理数据的专门软件系统——数据库管理系统。
用数据库系统来管理数据比文件系统具有明显的优点,从文件系统到数据库系统,标志着数据管理技术的飞跃。
与前述的人工管理和文件系统阶段相比,数据库系统阶段的特点主要有以下几个方面:
一、数据结构化
数据结构化是数据库系统与文件系统的根本区别。
在文件系统中,相互独立的文件的记录内部是有结构的。
传统文件的最简单形式是等长同格式的记录集合。
例如:
一个学生人事记录文件,每个记录都有如图1.5的记录格式:
学生人事记录
学号
姓名
性别
系别
年龄
政治面貌
家庭出身
籍贯
家庭成员
奖惩情况
图1.5学生记录格式示例
其中前八项数据是全部学生必须具有的而且基本上是等长的,而不同学生的后两项数据其信息量大小变化较大。
如果采用等长记录形式存储学生数据,为了建立完整的学生档案文件,每个学生记录的长度必须等于信息量最多的记录的长度,因而会浪费大量的存储空间。
所以最好是采用变长记录或主记录与详细记录相结合的形式建立文件。
也就是将学生人事记录的前八项作为主记录,后两项作为详细记录,则每个记录为如图1.6(a)所示的记录格式,学生李明的记录如图1.6(b)所示。
与本人关系
详细情况
日期
奖惩条目
(a)主记录详细记录格式示例
90021
李明
男
计算机
24
共青团员
工人
江苏无锡
李义山
父子
……
1991
一等奖学金
张玉
母子
吴玉章奖学金
李平
兄弟
(b)学生李明记录示例
图1.6主记录详细记录格式示例
这样可以节省许多存储空间,灵活性也相对提高。
但这样建立的文件还有局限性,因为这种结构上的灵活性只是针对一个应用而言。
一个学校或一个组织涉及许多应用,在数据库系统中不仅要考虑某个应用的数据结构,还要考虑整个组织的数据结构。
例如一个学校的信息管理系统中不仅要考虑学生的人事管理,还要考虑学籍管理、选课管理,同时还要考虑教员的人事管理、科研管理等应用,可按图1.7方式为该校的信息管理系统组织其中的学生数据。
这种数据组织方式为各部分的管理提供了必要的记录,使数据结构化了。
这就要求在描述数据时不仅要描述数据本身,还要描述数据之间的联系。
在文件系统中,尽管其记录内部已有了某些结构,但记录之间没有联系。
数据库系统实现整体数据的结构化,是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
在数据库系统中,数据不再针对某一应用,而是面向全组织,具有整体结构化。
不仅数据是结构化的,而且存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项、一个记录或一组记录。
而在文件系统中数据的最小存取单位是记录,粒度不能细到数据项。
二、数据的共享性高,冗余度低,易扩充
数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,因此数据可以被多个用户、多个应用共享使用。
数据共享可以大大减少数据冗余,节约存储空间。
数据共享还能够避免数据之间的不相容性与不一致性。
所谓数据的不一致性是指同一数据不同拷贝的值不一样。
采用人工管理或文件系统管理时,由于数据被重复存储,当不同的应用使用和修改不同的拷贝时就很容易造成数据的不一致。
在数据库中数据共享,减少了由于数据冗余造成的不一致现象。
由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充,可以适应各种用户的要求。
可以取整体数据的各种子集用于不同的应用系统,当应用需求改变或增加时,只要重新选取不同的子集或加上一部分数据便可以满足新的需求。
三、数据独立性高
数据独立性是数据库领域中一个常用术语,包括数据的物理独立性和数据的逻辑独立性。
物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。
也就是说,数据在磁盘上的数据库中怎样存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。
逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。
数据独立性是由DBMS的二级映象功能来保证的,将在后面讨论。
数据与程序的独立,把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。
四、数据由DBMS统一管理和控制
数据库的共享是并发的(Concurrency)共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。
为此,DBMS还必须提供以下几方面的数据控制功能:
(l)数据的安全性(Security)保护
数据的安全性是指保护数据以防止不合法的使用造成的数据的泄密和破坏。
使每个用户只能按规定,对某些数据以某些方式进行使用和处理。
(2)数据的完整性(Integrity)检查
数据的完整性指数据的正确性、有效性和相容性。
完整性检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。
(3)并发(Concurrency)控制
当多个用户的并发进程同时存取、修改数据库时,可能会发生相互干扰而得到错误的结果或使得数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协调。
(4)数据库恢复(Recovery)
计算机系统的硬件故障、软件故障、操作员的失误以及故意的破坏也会影响数据库中数据的正确性,甚至造成数据库部分或全部数据的丢失。
DBMS必须具有将数据库从错误状态恢复到某一已知的正确状态(亦称为完整状态或一致状态)的功能,这就是数据库的恢复功能。
数据库管理阶段应用程序与数据之间的对应关系可用图1.8表示。
综上所述,数据库是长期存储在计算机内有组织的大量的共享的数据集合。
它可以供各种用户共享,具有最小冗余度和较高的数据独立性。
DBMS在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性、安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对系统进行恢复。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。
这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。
1.2数据库系统的组成和数据库技术的研究领域
1.2.1数据库系统的组成
在本章一开始,介绍了数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
下面分别介绍这几个部分的内容。
一、硬件平台及数据库
由于数据库系统数据量都很大,加之DBMS丰富的功能使得自身的规模也很大,因此整个数据库系统对硬件资源提出了较高的要求,这些要求是:
(1)要有足够大的内存,存放操作系统、DBMS的核心模块、数据缓冲区和应用程序;
(2)有足够大的磁盘等直接存取设备存放数据库,有足够的磁带(或光盘)作数据备份;
(3)要求系统有较高的通道能力,以提高数据传送率。
二、软件
数据库系统的软件主要包括:
(1)DBMS。
DBMS是为数据库的建立、使用和维护配置的系统软件。
(2)支持DBMS运行的操作系统。
(3)具有与数据库接口的高级语言及其编译系统,便于开发应用程序。
(4)以DBMS为核心的应用开发工具。
应用开发工具是系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代语言等各种软件工具。
它们为数据库系统的开发和应用提供了良好的环境。
(5)为特定应用环境开发的数据库应用系统。
三、人员
开发、管理和使用数据库系统的人员主要是:
数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。
不同的人员涉及不同的数据抽象级别,具有不同的数据视图,如图1.9所示,其各自的职责分别是:
1.数据库管理员(DataBaseAdministration,DBA)在数据库系统环境下,有两类共享资源。
一类是数据库,另一类是数据库管理系统软件。
因此需要有专门的管理机构来监督和管理数据库系统。
DBA则是这个机构的一个(组)人员,负责全面管理和控制数据库系统。
具体职责包括:
(l)决定数据库中的信息内容和结构
数据库中要存放哪些信息,DBA要参与决策。
因此DBA必须参加数据库设计的全过程,并与用户、应用程序员、系统分析员密切合作共同协商,搞好数据库设计。
(2)决定数据库的存储结构和存取策略
DBA要综合各用户的应用要求,和数据库设计人员共同决定数据的存储结构和存取策略以求获得较高的存取效率和存储空间利用率。
(3)定义数据的安全性要求和完整性约束条件
DBA的重要职责是保证数据库的安全性和完整性。
因此DBA负责确定各个用户对数据库的存取权限、数据的保密级别和完整性约束条件。
(4)监控数据库的使用和运行
DBA还有一个重要职责就是监视数据库系统的运行情况,及时处理运行过程中出现的问题。
比如系统发生各种故障时,数据库会因此遭到不同程度的破坏,DBA必须在最短时间内将数据库恢复到正确状态,并尽可能不影响或少影响计算机系统其他部分的正常运行。
为此,DBA要定义和实施适当的后备和恢复策略,如周期性的转储数据、维护日志文件等。
(5)数据库的改进和重组重构
DBA还负责在系统运行期间监视系统的空间利用率、处理效率等性能指标,对运行情况进行记录、统计分析,依靠工作实践并根据实际应用环境,不断改进数据库的设计。
不少数据库产品都提供了对数据库运行状况进行监视和分析的实用程序,DBA可以使用这些实用程序完成这项工作。
另外,在数据运行过程中,大量数据不断插入、删除、修改,时间一长,会影响系统的性能。
因此,DBA要定期对数据库进行重组织,以提高系统的性能。
当用户的需求增加和改变时,DBA还要对数据库进行较大的改造,包括修改部分设计,即数据库的重构造。
2.系统分析员和数据库设计人员
系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。
数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。
数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。
在很多情况下,数据库设计人员就由数据库管理员担任。
3.应用程序员
应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。
4.用户
这里用户是指最终用户(End
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第一章 引言改 引言
![提示](https://static.bdocx.com/images/bang_tan.gif)