首页 理论教育 数据库的相关概念的分析介绍

数据库的相关概念的分析介绍

时间:2022-10-11 理论教育 版权反馈
【摘要】:网状模型可以表示较复杂的数据结构,即可以表示数据间的纵向关系与横向关系。数据库的性质是由其中的数据模型决定的。也就是说关系数据库是由若干张完成关系模型设计的二维表组成的。在关系数据库中,每一个数据表都具有相对的独立性,这一独立性的唯一标志是数据表的名字,称为表文件名。到目前为止,许多关系数据库已经问世。

3.3.2 数据库的相关概念

1. 数据处理

数据处理是指将数据转换成信息的过程。广义地讲,处理包括对数据的收集、存储、加工、分类、检索、传播等一系列活动。狭义地讲,处理是指对所输入的数据进行加工处理。可用以下式子简单表示:信息=数据+处理。

2. 将客观事物的信息存储在计算机

人们把客观存在的事物以数据的形式存储到计算机中,经历了对现实生活中事物特性的认识、概念化到计算机数据库里的具体表示的逐级抽象过程,即现实世界→概念世界→机器世界三个领域。有时也将概念世界称为信息世界;将机器世界称为存储或数据世界。

(1)现实世界。人们管理的对象存于现实世界中。现实世界的事物及事物之间存在着联系,这种联系是客观存在的,是由事物本身的性质决定的。例如学校的教学系统中有教师、学生、课程,教师为学生授课,学生选修课程并取得成绩。

(2)概念世界。概念世界是现实世界在人们头脑中的反映,是对客观事物及其联系的一种抽象描述,从而产生概念模型。概念模型是现实世界到机器世界必然经过的中间层次。涉及到下面几个术语:

实体:我们把客观存在并且可以相互区别的事物称为实体。实体可以是实际事物,也可以是抽象事件。如一个职工、一场比赛等。

实体集:同一类实体的集合称为实体集。如,全体职工。注意区分“型”与“值”的概念。如每个职工是职工实体“型”的一个具体“值”。

属性:描述实体的特性称为属性。如,职工的职工号、姓名、性别、出生日期、职称等。

关键字:如果某个属性或属性组合的值能唯一地标识出实体集中的每一个实体,可以选作关键字。用作标识的关键字,也称为码。如,“职工号”就可作为关键字。

联系:实体集之间的对应关系称为联系,它反映现实世界事物之间的相互关联。联系分为两种,一种是实体内部各属性之间的联系;另一种是实体之间的联系。

(3)机器世界。存入计算机系统里的数据是将概念世界中的事物数据化的结果。为了准确地反映事物本身及事物之间的各种联系,数据库中的数据必须有一定的结构,这种结构用数据模型来表示。数据模型将概念世界中的实体,及实体间的联系进一步抽象成便于计算机处理的方式。

3. 数据模型简介

数据模型由三部分组成,即模型结构、数据操作和完整性规则。这里主要介绍模型结构。DBMS所支持的数据模型分为四种:层次模型、网状模型、关系模型和面向对象模型。其中第四种数据模型目前并未成熟,因此传统的说法只有前三种数据模型。

(1)层次模型(Hierarchical Model)

表示数据间的从属关系结构,是一种以记录某一事物的类型为根结点的有向树结构。层次模型像一棵倒置的树,根结点在上,层次最高;子结点在下,逐层排列。其主要特征如下:仅有一个无双亲的根结点;根结点以外的子结点,向上仅有一个父结点,向下有若干子结点。层次模型表示的是从根结点到子结点的一个结点对多个结点,或从子结点到父结点的多个结点对一个结点的数据间的联系。如图3-7所示。

img13

图3-7 层次模型

(2)网状模型(Network Model)

网状模型是层次模型的扩展,表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。如图3-8所示。

img14

图3-8 网状模型

网状模型是以记录为结点的网络结构。其主要特征如下:有一个以上的结点无双亲;至少有一个结点有多个双亲。网状模型可以表示较复杂的数据结构,即可以表示数据间的纵向关系与横向关系。这种数据模型在概念上、结构上都比较复杂,操作上也有很多不便。

(3)关系模型(Relational Model)

所谓“关系”是有特定含义的。广义地说,任何数据模型都描述一定事物数据之间的关系。关系模型的所谓“关系”虽然也适用于这种广义的理解,但同时又特指那种虽具有相关性而非从属性的平行的数据之间按照某种序列排列的集合关系。关系模型的主要特点有:关系中每一数据项不可再分,是最基本的单位;每一列数据项是同属性的。列数根据需要而设,且各列的顺序是任意的;每一行记录由一个事物的诸多属性项构成。记录的顺序可以是任意的;一个关系是一张二维表,不允许有相同的字段名,也不允许有相同的记录行。如表3-2所示。

表3-2 关系模型举例

img15

4. 数据库

数据库(Database)就是以一定的组织方式将相关的数据组织在一起存放在计算机存储器上形成的、能为多个用户共享的、与应用程序彼此独立的一组相关数据的集合。

数据库的性质是由其中的数据模型决定的。在数据库中的数据如果依照层次模型进行数据存储,则该数据库为层次数据库;如果依照网络模型进行数据存储,则该数据库为网络数据库;如果依照关系模型进行数据存储,则该数据库为关系数据库。

5. 关系数据库(Relation Database)

数据库系统在文件系统的基础之上发展而来,经历了层次数据库→网状数据库→关系数据库三个阶段。关系数据库的方法是20世纪70年代初由E·F·Codd提出的。他在1970年发表了题为《大型共享数据银行数据的关系模型》的论文,在文中解释了关系模型,定义了某些关系代数运算,研究了数据的函数相关性,定义了关系的第三范式,从而开创了数据库的关系方法和数据规范化理论的研究(他为此获得了1981年的图灵奖)。

关系数据库是以关系模型为基础的数据库,它是应用数学理论处理数据组织的一种方法,是数据库设计中一种新的思想。它是若干个依照关系模型设计的数据表文件的集合。也就是说关系数据库是由若干张完成关系模型设计的二维表组成的。在关系数据库中,每一个数据表都具有相对的独立性,这一独立性的唯一标志是数据表的名字,称为表文件名。

关系数据库与层次数据库、网状数据库相比,具有简单灵活的数据模型、较高的数据独立性、能提供有着良好性能的语言接口,并且有着比较坚实的理论基础等优点,它是目前最为流行的数据库系统。

到目前为止,许多关系数据库已经问世。例如Oracle就是其中比较有名的一个,它可在IBM大型机,DEC等厂家的小型机以及IBM PC等微型机上运行,受到了用户的欢迎。另外,由于微型机的日益普及,DBASEIII、FoxBASE、FoxPro等关系数据库系统也被广泛地用于各个领域。

6. 数据库管理系统

数据库管理系统DBMS(Database Management System)研究如何利用计算机有效地组织和存储数据、获取和管理数据,它是位于用户与操作系统之上的一层数据管理软件,现在的Oracle、Sybase、Microsoft SQLServer等数据库都是数据库管理系统。数据库管理系统的主要功能包括以下几个方面:

(1)数据定义功能

DBMS提供数据定义语言DDL(Data Definition Language),用户通过它可以方便地对数据库中的相关内容进行定义,如对数据库、基本表、视图和索引进行定义。

(2)数据操纵功能

DBMS向用户提供数据操纵语言DML(Data Manipulation Language)实现对数据库的基本操作,如对数据库中数据的查询、插入、删除和修改。

(3)数据库的运行管理

这是DBMS的核心部分,它包括并发控制,即处理多个用户同时使用某些数据时可能产生的问题,安全性检查、完整性约束条件的检查和执行、数据库的内部维护,如索引、数据字典的自动维护等。所有数据库的操作都要在这些控制程序的统一管理下进行,以保证数据的安全性、完整性以及多个用户对数据库的并发使用。

(4)数据库的建立和维护功能

包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重新组织功能和性能监视、分析功能等,这些功能通常是由一些实用程序完成的。它是数据库管理系统的一个重要组成部分。

7. 数据库系统

数据库系统DBS(Database System)通常是指带有数据库的计算机应用系统。因此,数据库系统不仅包括数据本身,即实际存储在计算机中的数据,还包括相应的硬件、软件和各类人员。数据库系统是一个由使用人员、维护人员、加工设备和数据资源组成的完整计算机应用系统,图3-9为数据库系统组成示意图

(1)硬件

由于一般数据库系统数据量很大,加之DBMS丰富的强有力的功能使得自身的体积就很大,因此整个数据库系统对硬件资源提出了较高的要求,这些要求是:有足够大的内存以存放操作系统、DBMS的核心模块、数据缓冲区和应用程序;有足够大的直接存取设备存放数据,如磁盘、磁带或其他存储设备来进行数据备份;要求计算机有较高的数据传输能力,以提高数据传送率。

img16

图3-9 数据库系统组成示意图

(2)软件

DBMS是数据库系统的核心软件,它实现数据库的建立、使用和维护。DBMS对软件资源的要求:

① 支持DBMS运行的操作系统。通常,DBMS运行时都是基于某一操作系统,并通过操作系统来实现对数据的存取。一般来讲,数据库管理系统的数据处理能力较弱,所以需要提供与数据库接口的高级语言及其编译系统,以便于开发应用程序。这种高级语言称为数据库的主语言。

② 以DBMS为核心的应用开发工具。应用开发工具是系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代语言等各种软件工具。如:报表生成系统、表格软件、图形系统等。它们为数据库系统的开发和应用提供了有力的支持。当前开发工具已成为数据库软件的有机组成部分。

③ 为特定应用开发的数据库应用软件。数据库软件为数据的定义、存储、查询和修改提供支持,而数据库应用软件是对数据库中的数据进行处理和加工的软件,它面向特定应用,如基于数据库的各种管理软件:管理信息系统(MIS)、决策支持系统(DSS)和办公自动化(OA)等都属于数据库应用软件。

(3)数据

数据是数据库的基本组成内容,是对客观世界所存在事物的一种表征,也是数据库用户操作的对象。数据应按照需求进行采集并有结构地存入数据库。由于数据类型的多样性,数据的采集方式和存储方式也会有所不同。数据是数据库系统(也是企业或组织)的真正财富,它作为一种资源是数据库系统中最稳定的成分,即硬件可能更新,甚至软件也可以更换,但只要企业或组织的性质不改变,数据将是可以长期使用的财富。

(4)人员

参与分析、设计、管理、维护和使用数据库中数据的人员都是数据库系统的组成成分。他们在数据库系统的开发、维护和应用中都起到重要的作用。分析、设计、管理和使用数据库系统的人员主要是:数据库管理员、系统分析员、应用程序员和最终用户。下面介绍其各自的职责,并着重介绍数据管理员的任务和职责。

① 数据库管理员DBA(Database Administrator):数据库是整个企业或组织的数据资源,因此企业或组织设立了专门的数据资源管理机构来管理数据库,DBA则是这个机构的一组人员,负责全面地管理和控制数据库系统,具体的职责包括:

• 决定数据库中的数据内容和结构:数据库中要存放哪些数据,是由系统需求来决定的。为了更好地对数据库系统进行有效的管理和维护,DBA应该参加或了解数据库设计的全过程,并与用户、应用程序员、系统分析员密切合作共同协商,搞好数据库设计。

• 决定数据库的存储结构和存取策略:DBA要综合各用户的应用要求,与数据库设计人员共同决定数据库的存储结构和存取策略,以求获得较高的存取效率和存储空间利用率。

• 定义数据的安全性要求和完整性约束条件:DBA的重要职责是保证数据库的安全性和

完整性,即数据不被非法用户所获取,且保证数据库中数据的正确性和数据间的相容性。因此DBA负责确定各个用户对数据库的存取权限,数据的保密级别和完整性约束条件。

• 监控数据库的使用和运行:DBA有一个重要职责就是监视数据库系统的运行情况,及时处理运行过程中出现的问题。当系统发生某些故障时,数据库中的数据会因此遭到不同程度的破坏,DBA必须在最短时间内将数据库恢复到某种一致状态,并尽可能不影响或少影响计算机系统其他部分的正常运行。为此,DBA要定义和实施适当的后援和恢复策略。如采用周期性的转储数据和维护日志文件等方法。

• 数据库的改进和重组:DBA负责在系统运行期间监视系统的存储空间利用率、处理效率等性能指标,对运行情况进行记录、统计、分析,并依靠工作实践和根据实际应用环境不断改进数据库设计。不少数据库产品都提供了对数据库运行情况进行监视和分析的实用程序,DBA可以方便地使用这些实用程序来完成这些工作。

另外,在数据库运行过程中,大量数据不断插入、删除、修改,随着运行时间的延长,在一定程度上会影响系统的性能。因此,DBA要定期对数据库进行重新组织,以提高系统的性能。而且,当用户的需求增加和改变时,DBA还要对数据库进行较大的改造,包括修改部分设计,实现对数据库中数据的重新组织和加工。

② 系统分析员:系统分析员是数据库系统建设期主要的参与人员,他们负责应用系统的需求分析和规范说明,他们要与用户相结合,确定系统的基本功能、数据库结构和应用程序的设计,以及硬软件配制,并组织整个系统的开发,所以系统分析员是一类具有领域业务知识和计算机知识的专家,他在很大程度上影响数据库系统的质量和成败。

③ 应用程序员:应用程序员根据系统的功能需求负责设计和编写应用系统的程序模块,并参与对程序模块的测试。

④ 用户:这里用户是指最终用户(End User)。数据库系统的用户是有不同层次的,不同层次的用户其需求的信息以及获得信息的方式也是不同的。一般可将用户分为操作层、管理层和决策层。他们通过应用系统的用户接口使用数据库。常用的接口方式有菜单驱动、表格操作、图形显示、随机查询和对数据库中的数据进行统计,分析时使用专用的软件和分析、决策模型。

8. SQL语言

SQL语言的英文全称是Structured Query Language,意为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通,用来执行各种各样的操作,例如更新数据库中的数据、从数据库中提取数据等。SQL已被ANSI(美国国家标准协会)和国际标准化组织(ISO)定为关系型数据库管理系统的标准语言。目前,绝大多数流行的关系型数据库管理系统,如Oracle、Sybase、Microsoft SQL Server、DB2等都遵循SQL语言标准。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈