1、2022年年5月月31日星期二日星期二第第1 1章章 数据库技术概述数据库技术概述2022年年5月月31日星期二日星期二内内 容容1.1 数据库的作用及相关概念数据库的作用及相关概念1.2 数据库技术与发展数据库技术与发展 1.3 数据库系统结构数据库系统结构1.4 数据模型数据模型小结小结2022年年5月月31日星期二日星期二1.1 数据库的作用及相关概念数据库的作用及相关概念1.1.1 数据与信息数据与信息1.1.2 数据管理与数据库数据管理与数据库1.1.3 数据库管理系统与管理信息系统数据库管理系统与管理信息系统2022年年5月月31日星期二日星期二1.1.1 数据与信息数据与信息1
2、1. . 信息信息2 2数据数据2022年年5月月31日星期二日星期二1.1.信息信息 概念概念 特征特征 作用作用2022年年5月月31日星期二日星期二 概念概念 信息泛指通过各种方式传播的,可被感受的数字、文字、图像和声音等符号所表征的某一事物的新的消息、情报和知识。 信息是观念型的东西,是人们头脑对现实事物的抽象反映。它与载体无关。2022年年5月月31日星期二日星期二 特征特征信息的内容是关于客观事物或思想方面的知识,即信息的内容能反映己存在的客观事实、能预测未发生事物的状态和能用于指挥控制事物发展的决策:信息是有用的,它是人们活动的必需知识,利用信息能够克服工作中的盲目性,增加主动性
3、和科学性,可以把事情办得更好;信息能够在空间和时间上被传递,在空间上传递信息称为信息通信,在时间上传递信息称为信息存储;信息需要一定的形式表示,信息与其表现符号不可分离。2022年年5月月31日星期二日星期二 作用作用 可以提高人们对事物的认识,减少人们活动的盲目性; 是社会机体进行活动的纽带,社会的各个组织通过信息网相互了解并协同工作,使整个社会协调发展; 是管理活动的核心,要想把事物管理好,就需要掌握更多的信息,并利用信息进行工作。2022年年5月月31日星期二日星期二2 2数据数据 概念概念 特征特征 数据与信息的关系数据与信息的关系2022年年5月月31日星期二日星期二 概念概念 数据
4、是记录信息的物理符号,是表达和传递信息的工具。 数据是信息的最佳表现形式。 在不严格的情况下,对数据和信息两个概念不进行区分。2022年年5月月31日星期二日星期二 特征特征 有有“型型”和和“值值”之分之分 受数据类型和取值范围的约束受数据类型和取值范围的约束 有定性表示和定量表示之分有定性表示和定量表示之分 具有载体和多种表现形式具有载体和多种表现形式2022年年5月月31日星期二日星期二 有有“型型”和和“值值”之分之分数据的型:数据的型:指数据的结构,数据的值:数据的值:指数据的具体取值。数据的结构:数据的结构:指数据的内部构成和对外联系。2022年年5月月31日星期二日星期二 受数据
5、类型和取值范围的约束受数据类型和取值范围的约束 数据类型是针对不同的应用场合设计的。 数据类型不同,数据表示形式、存储方式及数据能进行的操作运算各不相同。 值域:值域:数据的取值范围 为数据设置值域是保证数据的有效性及避免数据输入或修改时出现错误的重要措施。2022年年5月月31日星期二日星期二 有定性表示和定量表示之分有定性表示和定量表示之分定性表示:定性表示:带有模糊因素的粗略表示方式;定量表示:定量表示:描述事物的精确表示方式。职工年龄职工年龄定性表示: “老”、“中”、“青” ;定量表示:具体岁数。2022年年5月月31日星期二日星期二 具有载体和多种表现形式具有载体和多种表现形式 数
6、据是对客观物体或概念的属性的记录,它必须有一定的物理载体。 载体:载体: 纸张、硬盘、软盘、磁带。 表现形式:表现形式: 报表、图形、语音、不同的语言符号。2022年年5月月31日星期二日星期二 数据与信息的关系数据与信息的关系 数据是信息的载体,信息则是对数据加工的结果,是对数据的解释。数据数据处理器处理器信息信息存储器存储器请按键请按键 2022年年5月月31日星期二日星期二1.1.2 数据管理与数据库数据管理与数据库1 1数据处理数据处理2 2数据管理数据管理3 3数据库数据库 2022年年5月月31日星期二日星期二1 1数据处理数据处理 概念概念 分类分类2022年年5月月31日星期二
7、日星期二 概念概念 围绕着数据所做的工作均称为数据处理。 数据处理是指对数据的收集、组织、整理、加工、存储和传播等工作。2022年年5月月31日星期二日星期二 分类分类 数据管理:数据管理:主要任务是收集信息、将信息用数据表示并按类别组织保存,其目的是在需要的时候,为各种应用和数据处理提供数据; 数据加工:数据加工:主要任务是对数据进行变换、抽取和运算,通过数据加工会得到更有用的数据,以指导或控制人的行为或事物的变化趋势; 数据传播:数据传播:指在空间或时间上以各种形式传播信息,而不改变数据的结构、性质和内容,数据传播会使更多的人得到并理解信息,从而使信息的作用充分发挥出来。2022年年5月月
8、31日星期二日星期二2 2数据管理数据管理 作用作用 内容内容2022年年5月月31日星期二日星期二 作用作用 在数据处理中,最基本的工作是数据管理工作。 数据管理是其他数据处理的核心和基础。2022年年5月月31日星期二日星期二 内容内容组织和保存数据组织和保存数据:收集到的数据合理地分类组织,将其存储在物理载体上,使数据能够长期地被保存;数据维护:数据维护:根据需要随时进行插入新数据、修改原数据和删除失效数据的操作;提供数据查询和数据统计功能:提供数据查询和数据统计功能:以便快速得到需要的正确数据,满足各种使用要求。2022年年5月月31日星期二日星期二3 3数据库数据库 概念概念 数据库
9、中数据的性质数据库中数据的性质2022年年5月月31日星期二日星期二 概念概念 数据库是一个长期存储在计算机内、有组织的、可共享的、统一管理的数据集合。它是一个按数据结构来存储和管理数据的计算机软件系统。 2022年年5月月31日星期二日星期二 数据库是一个实体,它是能够合理保管数据的“仓库”,用户在该“仓库”中存放要管理的事务数据,“数据”和“库”两个概念结合成为“数据库”; 数据库是数据管理的新方法和技术,它能够更合理地组织数据、更方便地维护数据、更严密地控制数据和更有效地利用数据。 2022年年5月月31日星期二日星期二 数据库中数据的性质数据库中数据的性质 数据整体性数据整体性 数据共
10、享性数据共享性2022年年5月月31日星期二日星期二 数据整体性数据整体性 数据库是一个单位或一个应用领域的通用数据处理系统,它存储的是属于企业和事业部门、团体和个人的有关数据的集合。 数据库中的数据是从全局观点出发建立的,它按一定的数据模型组织、描述和储存,其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化。2022年年5月月31日星期二日星期二 数据共享性数据共享性 数据库中的数据是为众多用户所共享其信息而建立的,它己经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据库中的数据。多个用户可以同时共享数据库中的数据
11、资源,即不同的用户可以同时存取数据库中的同一个数据。 数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。2022年年5月月31日星期二日星期二1.1.3 数据库管理系统与管理信息系统数据库管理系统与管理信息系统1数据库管理系统数据库管理系统2信息系统信息系统3管理信息系统管理信息系统2022年年5月月31日星期二日星期二1. 1. 数据库管理系统数据库管理系统(DBMS)(DBMS) 是为数据库的建立、使用和维护而配置的系统软件。它建立在操作系统的基础上,对数据库进行统一的管理和控制。 DBMS可以进一步被定义为是可用来管理数据库并与数据库相互作用的工具。 DB
12、MS是提供DB管理的计算机系统软件。 DBMS的目标是让用户能够更方便、更有效、更可靠地建立DB和使用DB中的信息资源。2022年年5月月31日星期二日星期二2 2信息系统信息系统 信息系统概念信息系统概念 信息系统的分类信息系统的分类2022年年5月月31日星期二日星期二 信息系统概念信息系统概念 信息系统(Information System)的涵盖面很宽,输入数据并输出信息的系统都称为信息系统。 一个信息系统应携带有足够的信息量。2022年年5月月31日星期二日星期二 信息系统的分类信息系统的分类( (按实现的功能按实现的功能) )信息传递系统信息传递系统 只具有信息交换功能,系统工作中
13、不改变信息的结构和状态,例:电话、程控交换系统都是信息传递系统。信息处理系统信息处理系统 通过对输入信息进行转换、加工和提取等一系列操作,得出更有价值的新信息,其输出信息在结构和内容方面与输入的源信息相比有较大改变。 信息管理系统信息管理系统 具有数据的保存、维护和检索等功能的系统,其作用主要是数据管理,人们通常所说的事务管理系统就是典型的信息管理系统。2022年年5月月31日星期二日星期二3. 3. 管理信息系统管理信息系统(MIS)(MIS) MIS帮助人们完成原来需要手工处理的复杂工作,它不仅能明显地提高工作效率,降低劳动强度,而且能提高信息管理的质量或水平。 MISMIS:更合理地组织
14、数据和更科学地管理数据,为控制事务发展提供控制信息,为预测事务变化的状态提供事务发展趋势信息和变化规律的信息。 MIS以数据库技术为基础,它的核心是数据库。2022年年5月月31日星期二日星期二1.2 数据管理技术的发展数据管理技术的发展1.2.1 手工管理阶段手工管理阶段1.2.2 文件系统阶段文件系统阶段1.2.3 数据库系统阶段数据库系统阶段2022年年5月月31日星期二日星期二1.2.1 手工管理阶段手工管理阶段 20世纪50年代中期以前,计算机主要用于科学计算。 硬件存储设备主要有磁带、卡片机、纸带机等,还没有磁盘等直接存取的存储设备。 软件上也处于初级的阶段,没有操作系统(OS)和
15、管理数据的工具。 数据处理方式是批处理。 数据的组织和管理完全靠程序员手工完成。 2022年年5月月31日星期二日星期二 该阶段数据管理效率很低,特点: 数据不保存 没有对数据进行管理的软件系统 没有文件的概念 一组数据对应于一个程序,数据面向应用2022年年5月月31日星期二日星期二手工管理阶段的特点手工管理阶段的特点2022年年5月月31日星期二日星期二1.2.2 文件系统阶段文件系统阶段 20世纪50年代后期到60年代中期,计算机应用领域拓宽,不仅用于科学计算,还大量用于数据管理。 在文件系统阶段中,计算机外存储器有了磁盘、磁鼓等直接存取的存储设备。 计算机软件的OS中己经有了专门的管理
16、数据软件,即所谓的文件系统。 文件系统的处理方式不仅有文件批处理,而且还能够联机实时处理。 2022年年5月月31日星期二日星期二 数据管理的特点:数据管理的特点: 数据需要长期保留在外存上供反复使用 程序和数据之间有了一定的独立性 文件的形式已经多样化 数据的存取基本以记录为单位 2022年年5月月31日星期二日星期二文件系统阶段程序和数据之间的关系文件系统阶段程序和数据之间的关系2022年年5月月31日星期二日星期二1.2.3 数据库系统阶段数据库系统阶段 20世纪60年代后期,计算机被越来越多地应用于管理领域,且规模越来越大,因此数据量也急剧增长。 人们对数据共享的要求越来越强烈。 “数
17、据库”的概念应运而生。 2022年年5月月31日星期二日星期二用数据库管理数据有如下的特点:用数据库管理数据有如下的特点: 数据结构化数据结构化 数据共享数据共享 减少了数据冗余减少了数据冗余 有较高的数据独立性有较高的数据独立性 方便的用户接口方便的用户接口 统一的数据管理与控制功能统一的数据管理与控制功能 2022年年5月月31日星期二日星期二 数据结构化数据结构化 在文件系统阶段,只考虑了同一文件记录内部数据项之间的联系,而不同文件的记录之间是没有联系的,也就是说,从整体上看数据是无结构的。在数据库中,实现了整体数据的结构化,把文件系统中简单的记录结构变成了记录和记录之间的联系所构成的结
18、构化数据。在描述数据的时候,不仅要描述数据本身,还要描述数据之间的联系。数据之间的联系通过存取路径来实现,把相关的数据有机地组织在一起。2022年年5月月31日星期二日星期二 数据共享数据共享 数据库中的数据是考虑所有用户的数据需求、面向整个系统组织的,而不是面向某个具体应用的。因此数据库中包含了所有用户的数据成分,但每个用户通常只用到其中一部分数据。不同用户所使用的数据可以重叠,同一部分数据也可为多用户共享,如图所示。2022年年5月月31日星期二日星期二 减少了数据冗余减少了数据冗余 在数据库方式下,用户不是自建文件,而是取自数据库中的某个子集,它并非独立存在,而是靠DBMS从数据库中映射
19、出来的,所以叫做逻辑文件。如图所示,用户使用的是逻辑文件,因此尽管一个数据可能出现在不同的逻辑文件中,但实际上的物理存储只可能出现一次,减少了数据冗余。 2022年年5月月31日星期二日星期二 有较高的数据独立性有较高的数据独立性 数据独立性是指数据库中的数据与应用程序之间不存在依赖关系,而是相互独立的。2022年年5月月31日星期二日星期二 方便的用户接口方便的用户接口 用户不仅可以通过数据库系统提供的查询语言交互式命令来操纵数据库,也可以通过程序方式编程来操纵数据库,这样就拓宽了数据库的应用面。2022年年5月月31日星期二日星期二 统一的数据管理与控制功能统一的数据管理与控制功能 数据库
20、中的数据不仅要由数据库管理系统进行统一的管理,同时还要进行统一的控制。主要的控制功能有: 数据的完整性数据的完整性 数据的安全性数据的安全性 并发控制并发控制 数据库的恢复数据库的恢复2022年年5月月31日星期二日星期二 数据的完整性数据的完整性 数据的完整性在DB的应用中是很重要的,为了保证DB的正确性,要使用数据库系统提供的存取方法设计一些完整性规则,对数据值之间的联系进行校验。 2022年年5月月31日星期二日星期二 数据的安全性数据的安全性 要保护DB以防止不合法的使用,避免数据的丢失、被窃取。 在实际的应用中,并非每个应用都应该存取DB中的全部数据。它可能仅仅是对DB中的一部分数据
21、进行操作。 2022年年5月月31日星期二日星期二 并发控制并发控制 当多个用户同时存取、修改DB中的数据时,可能会发生相互干扰,使DB中数据的完整性受到破坏,而导致数据的不一致性、DB的并发控制防止了这种现象的发生,提高了DB的利用率。 2022年年5月月31日星期二日星期二 DB DB的恢复的恢复 当出现软硬件的故障,数据库系统应具有恢复能力,能把DB恢复到最近某个时刻的正确状态。 2022年年5月月31日星期二日星期二1.3 数据库系统结构数据库系统结构1.3.1 DB DB体系结构体系结构1.3.2 数据库系统的组成数据库系统的组成1.3.3 DBDB应用系统体系结构应用系统体系结构
22、2022年年5月月31日星期二日星期二 数据库系统数据库系统(DBS)(DBS):是实现有组织、动态地存储大量相关的结构化数据、方便各类用户访问数据库的计算机软/硬件资源的集合。 可从不同的层次或不同的角度来分析DBS结构: 从DBMSDBMS的角度来看,DBS通常采用三级模式结构,这是DBMS内部的系统结构,通常称作数据库体系结构; 从数据库最终用户最终用户的角度看,DBS结构也可以说就是面向用户的数据库应用系统,它可以分为三个层次和多种类型,这是DBS外部的体系结构,简称DBS体系结构或者数据库应用系统体系结构。2022年年5月月31日星期二日星期二1.3.1 DB DB体系结构体系结构1
23、 1三级模式结构三级模式结构2 2两级映像两级映像3 3两级数据独立性两级数据独立性4 4DBDB的抽象层次的抽象层次5 5数据库的数据模式与数据模型的关系数据库的数据模式与数据模型的关系 2022年年5月月31日星期二日星期二 DBDB体系结构:体系结构:DB的总框架。 DBS在总的体系结构上具有:外部级、概念级、内部级外部级、概念级、内部级三级结构的特征 外部级外部级:最接近用户,是单个用户所能看到的数据特性; 概念级概念级:涉及所有用户的数据定义; 内部级内部级:最接近物理存储设备,涉及到物理数据存储的结构; 三级结构称为:DBDB的体系结构的体系结构,也称为“三级模式结三级模式结构构”
24、,或“数据抽象的三个级别数据抽象的三个级别”。2022年年5月月31日星期二日星期二1 1三级模式结构三级模式结构 模式模式: : 对DB中全体数据的逻辑结构和特征的描述,数据模式是DB的框架,反映的是DB中数据的结构及其相互关系。 DBDB的三级模式的三级模式: 概念模式概念模式 外模式外模式 内模式内模式 2022年年5月月31日星期二日星期二DBDB的三级模式结构的三级模式结构2022年年5月月31日星期二日星期二 概念模式概念模式( (模式、模式、DBDB模式、逻辑模式模式、逻辑模式) ) DBDB中全部数据整体逻辑结构和特征的描述。中全部数据整体逻辑结构和特征的描述。 是现实世界中一
25、个组织或部门实体及其联系的抽象模型在具体DBS中的实现。 一个DB只有一个概念模式,是DBS三级模式结构的中间层。 是DB中全体数据的逻辑描述,而不是DB本身,它是装配数据的一个结构框架。 概念模式由DBMS提供的DDL来定义和描述。2022年年5月月31日星期二日星期二 外模式外模式( (子模式、用户模式子模式、用户模式) ) 是用户观念下局部数据结构的逻辑描述,是DB用户能够看见和使用的局部数据的逻辑结构和特征的描述。是用户与DBS之间的接口。不同用户的外模式不相同。 一个DB可以有多个外模式,外模式表示了用户所理解的实体、实体属性和实体间的联系。 外模式是概念模式的一个逻辑子集。 外模式
26、由DBMS提供的DDL来定义和描述。 2022年年5月月31日星期二日星期二设置外模式的优点:设置外模式的优点:方便用户使用,简化用户接口;保证数据的独立性;有利于数据共享;有利于数据安全和保密。2022年年5月月31日星期二日星期二 内模式内模式( (存储模式存储模式) ) 是对DB中数据物理结构和存储方式的描述,是数据在DB内部的表示形式。 一个DB只有一个内模式。 在内模式中规定了所有数据的物理组织,以及优化性能、响应时间和存储空间需求等信息。 是DBMS管理的最低层,它是物理存储设备上存储数据时的物理抽象。 内模式由DBMS提供的DDL来定义和描述。 2022年年5月月31日星期二日星
27、期二 分层抽象的分层抽象的DBDB结构可归纳为结构可归纳为4 4点:点: 对一个DB的整体逻辑结构和特征的描述,即DB的概念结构是独立于DB其他层次结构即内模式的描述。 当定义DB的层次结构时,应首先定义全局逻辑结构,而全局逻辑结构是根据整体数据规划时得到的概念结构,结合选用的数据模型定义的。 2022年年5月月31日星期二日星期二 一个DB的内模式依赖于概念模式,它具体地将概念模式中所定义的数据结构及其联系进行适当的组织,并给出具体存储策略,以最优的万式提高时空效率。 内模式独立于外模式,也独立于具体的存储设备。2022年年5月月31日星期二日星期二 用户逻辑结构即外部模式是在全局逻辑结构描
28、述的基础上定义的,它独立于内模式和存储设备。2022年年5月月31日星期二日星期二 特定的应用程序是在外模式描述的逻辑结构上编写的,它依赖于特定的外模式。 由于应用程序只依赖于外模式,所以也独立于内模式和存储设备,并且概念模式的改变不会导致相对应的外模式的变化,应用程序也独立于概念模式。2022年年5月月31日星期二日星期二2 2两级映像两级映像 DBS的三级模式是对数据进行三个级别的抽象,使用户能逻辑地抽象地处理数据,而不必关心数据在机器中的具体表示方式和存储方式。 为实现三个抽象级别的联系和转换,DBMS提供两个层次的映像: 外模式外模式/ /概念模式映像概念模式映像 概念模式概念模式/
29、/内模式映像内模式映像 映像映像: : 是一种对应规则,它指出了映像双方是如何进行转换的。2022年年5月月31日星期二日星期二 外模式外模式/ /概念模式映像概念模式映像 定义各外模式与概念模式间的映像关系。 对应于同一个概念模式可有多个外模式,每个外模式,DBS都有一个外模式/概念模式映像,它定义了该外模式与概念模式间的对应关系。 映像定义常在各自的外模式中加以描述。2022年年5月月31日星期二日星期二 概念模式概念模式/ /内模式映像内模式映像 定义DB全局逻辑结构与存储结构间的对应关系。 因这两级的数据结构可能不一致,即记录类型、字段类型的命名和组成可能不一样,故该映像说明概念记录和
30、内部记录间的对应性。 概念模式/内模式映像一般是在内模式中加以描述。2022年年5月月31日星期二日星期二3 3两级数据独立性两级数据独立性 物理数据独立性物理数据独立性 若修改DB的内模式(DB的物理结构有所变化),则只修改概念模式/内模式映像即可。 可使概念模式尽可能保持不变,即对内模式的修改尽量不影响概念模式,对外模式和应用程序的影响则更小。 逻辑数据独立性逻辑数据独立性 若修改DB的概念模式(增加记录类型或增加数据项),则只修改外模式/概念模式映像,可使外模式和应用程序尽可能保持不变。 2022年年5月月31日星期二日星期二 DB三级模式体系结构是数据管理的结构框架,按照其组织的数据是
31、DB的内容。 设计DB时,主要是定义DB的各级模式;在用户使用DB时,关心的是DB的内容。 DB的模式通常是相对稳定的,而DB的数据则是经常变化的。2022年年5月月31日星期二日星期二4 4DBDB的抽象层次的抽象层次 DBS的三级模式结构定义了DB的三个抽象层次: 物理物理DBDB 概念概念DBDB 逻辑逻辑DBDB DB的三种不同模式只是提供处理数据的框架,而填入这些框架中的数据才是DB的内容。 根据三级模式结构引出的DB抽象层次,是从不同角度观察DB的视图。2022年年5月月31日星期二日星期二 物理物理DB(DB(系统程序员视图,或数据的存储系统程序员视图,或数据的存储结构结构) )
32、 以内模式为框架的DB称为物理DB。DB中最里面的一个层次,是物理存储设备上实际存储着的数据集合(原始数据)。 是系统程序员用文件方式组织的一个个物理文件(存储文件)。他们编制专门的存取程序,实现对文件中数据的存取。2022年年5月月31日星期二日星期二 概念概念DBDB 以概念模式为框架的DB称为概念DB。 它是DB结构中的中间层次,是DB的整体逻辑表示,它描述每一个数据的逻辑定义及数据间的逻辑联系。 概念DB描述了DBS所有对象的逻辑关系,不涉及它们的物理存储情况。 概念DB本身并不是一个实际存在的DB,而是实际存在的物理DB的一种逻辑描述。 数据库管理员概念下的DB,称DB管理员的视图。
33、2022年年5月月31日星期二日星期二 逻辑逻辑DBDB 以外模式为框架的DB称为逻辑DB。它是DB结构最外一层,是用户所看到和使用的DB,故称为用户DB或用户视图。 逻辑DB是某个或某些用户使用的数据集合,即用户看到和使用的那部分数据的逻辑结构(称为局部逻辑结构)。用户根据系统提供的外模式用查询语言或应用程序对DB的数据进行所需的操作。 2022年年5月月31日星期二日星期二 对一个DBS而言,实际存在的是物理DB,它是数据访问的基础。 概念DB是物理DB的抽象表示,用户DB是概念DB的部分抽取,是用户与DB的接口。 DBMS的中心工作之一就是完成三个层次DB之间的转换,把用户对DB的操作转
34、化成对物理DB的操作。 DBMS实现映像的能力,将直接影响该DBS能够达到的数据独立性的程度。2022年年5月月31日星期二日星期二5 5DBDB的数据模式与数据模型的关系的数据模式与数据模型的关系 概念模式和子模式建立在逻辑数据模型上; 概念上的区别:概念上的区别:数据模式是一个DB的基于特定数据模型的结构定义,它是数据模型中有关数据结构及其相互关系的描述,仅是数据模型的一部分。2022年年5月月31日星期二日星期二1.3.2 DBS DBS的组成的组成1 1硬件支撑环境硬件支撑环境2 2软件系统软件系统3 3DBDB4 4人员人员5 5DBMSDBMS2022年年5月月31日星期二日星期二
35、1 1硬件支撑环境硬件支撑环境 硬件是存储DB和运行DBMS的物质基础。DBSDBS对硬件的要求:对硬件的要求: 有足够大的内存以存放OS、DBMS例行程序、应用程序、数据库表等; 有大容量的直接存取的外存储器,供存放数据和系统副本; 有较强的数据通道能力以提高数据处理速度; 有些DBS还要求提供网络环境。2022年年5月月31日星期二日星期二2 2软件系统软件系统 DBMS DBMS DBMS是DBS的核心,用于DB的建立、使用和维护。 支持支持DBMSDBMS运行的运行的OSOS DBMS向OS申请所需的软/硬件资源,并接受OS的控制和调度,OS是DBMS与硬件之间的接口。 具有与具有与D
36、BDB接口的高级语言及其编译系统接口的高级语言及其编译系统 为开发DB应用系统,需要各种高级语言及其编译系统。高级语言必须具有与DB的接口,由其编译系统来识别和转换高级语言中存取DB的语句,以实现对DB的访问。 2022年年5月月31日星期二日星期二以以DBMSDBMS为核心的应用开发工具软件为核心的应用开发工具软件 应用开发工具软件是系统为应用开发人员和最终用户提供的功能强、效率高一组开发工具集。这些开发工具基本上都是可视化的第四代语言开发工具,具有友好的图形用户界面、支持客户机/服务器运行模式,具有较高的应用系统开发效率。 为某种应用环境开发的为某种应用环境开发的DBDB应用程序应用程序
37、应用程序是DBS的批处理用户和终端用户借助应用程序、终端命令,通过DBMS访问DB的应用软件。2022年年5月月31日星期二日星期二3. 3. 数据库数据库 是一个单位或组织需要管理的全部相关数据的集合,它是长期存储在计算机内、有组织的、可共享的、统一管理的数据集合。 它是DBS的基本成分,通常包括两部分内容: 物理数据库物理数据库 数据字典数据字典(DD)(DD)2022年年5月月31日星期二日星期二 物理数据库物理数据库 其中存放按一定的数据模型组织并实际存储的所有应用需要的工作数据;2022年年5月月31日星期二日星期二 数据字典数据字典(DD)(DD) 其中存放关于DB中各级模式的描述
38、信息,包括所有数据的结构名、意义、描述定义、存储格式、完整性约束、使用权限等信息。因DD包含DBS中的大量描述信息而不是用户数据,故也称为“描述描述信息库信息库”。 结构上DD也是一个DB,为了区分物理DB中的数据和DD的数据,通常称DD中的数据为元数据,组成DD文件的属性称为元属性。DD是DBMS存取和管理数据的基本依据,主要由系统管理和使用。 在关系在关系DBSDBS中,中,DDDD通常主要包括:通常主要包括:表示DB文件的文件、表示DB中属性的文件、视图定义文件、授权关系文件、索引关系文件等。 2022年年5月月31日星期二日星期二4. 4. 人员人员 软件开发人员软件开发人员 主耍负责
39、DBS的开发设计、程序编制、系统调试和安装工作; 软件使用人员软件使用人员 DB最终用户,通过应用系统的用户接口使用DB。主要工作是对DB进行查询和修改。 软件管理人员软件管理人员 软件管理人员称为数据库管理员(DBA),他们负责全面地管理和控制DBS。 2022年年5月月31日星期二日星期二 DBADBA其主要职责:其主要职责: 参与DBS的设计与建立; 对系统的运行实行监控; 定义数据的安全性要求和完整性约束条件; 负责DB性能的改进和DB的重组及重构工作。 2022年年5月月31日星期二日星期二5 5DBMSDBMS DBMS DBMS的工作模式的工作模式 DBMS DBMS的主要功能的
40、主要功能 DBMS DBMS的组成的组成2022年年5月月31日星期二日星期二 DBMS DBMS的工作模式的工作模式 DBMS接受应用程序的数据请求和处理请求,然后将用户的数据请求(高级指令)转换成复杂的机器代码(低层指令),通过其实现对DB的操作,并接受对DB操作而得到的查询结果,同时对查询结果进行处理(格式转换),最后将处理结果返回给用户。请按键请按键 应用程序DBMS数据请求数据请求DB数据(处理结果)数据(查询结果) 2022年年5月月31日星期二日星期二 用户对DB进行操作,是由DBMS把操作从应用程序带到外部级、概念级,再导向内部级,进而通过OS操纵存储器中的数据。 DBMS为应
41、用程序在内存开辟一个DB的系统缓冲区,用于数据的传输和格式转换。 三级模式结构定义存放在DD中。 用户访问用户访问DBDB的过程如图所示。的过程如图所示。2022年年5月月31日星期二日星期二 DBMS DBMS的主要功能的主要功能 DB DB的定义的定义 DB DB的操纵的操纵 DB DB的运行管理的运行管理 数据组织、存储与管理数据组织、存储与管理 DB DB的的保护保护 DB DB的维护的维护 通信通信2022年年5月月31日星期二日星期二 DB DB的定义的定义DBMS提供DDL,供用户定义: DB的三级模式结构、两级映像; 数据的完整性约束、保密限制等约束。2022年年5月月31日星
42、期二日星期二 DB DB的操纵的操纵 DBMS提供DML实现对数据的操作。基本的数据操作有两类: 查询(或检索) 更新(包括插入、删除、修改)2022年年5月月31日星期二日星期二 DB DB的运行管理的运行管理是DBMS的运行控制、管理功能。包括: 多用户环境下的并发控制 安全性检查和存取权限控制 完整性检查和执行 运行日志的组织管理 事务的管理和自动恢复2022年年5月月31日星期二日星期二 数据组织、存储与管理数据组织、存储与管理 分类组织、存储和管理各种数据,包括数据字典(亦称系统目录)、用户数据、存取路径等等; 确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联
43、系。 基本目标:基本目标:是提高存储空间利用率,选择合适的存取方法提高存取(如随机查询、顺序查询、增加、删除、修改)效率。2022年年5月月31日星期二日星期二 DB DB的保护的保护 DB中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。 DBMS对DB的保护通过四个方面实现: DBDB的恢复的恢复 DBDB的并发控制的并发控制 数据完整性控制数据完整性控制 数据安全性控制数据安全性控制 DBMS的其他保护功能还有系统缓冲区的管理以及数据存储的某些自适应调节机制等。2022年年5月月31日星期二日星期二 DB DB的维护的维护 这一部分包括DB的数据载入、转换、转储,DB的改组以及
44、性能监控等功能。这些功能分别由各个实用程序完成。2022年年5月月31日星期二日星期二 通信通信 DBMS具有与操作系统的联机处理、分时系统及远程作业输入的相应接口,负责处理数据的传送。 对网络环境下的DBS,还应包括DBMS与网络中其他软件系统的通信功能;DB之间的互操作功能。 2022年年5月月31日星期二日星期二 DBMS DBMS的组成的组成 DBMS由数据和元数据、存储管理器、查询处理器、事务管理器、查询、模式更新和更新等部分组成,如图所示。2022年年5月月31日星期二日星期二1.3.3 DBDB应用系统体系结构应用系统体系结构1 1三个层次三个层次2 2结构类型结构类型 2022
45、年年5月月31日星期二日星期二DBDB应用系统体系结构:应用系统体系结构: 指DBS中数据存储层、业务处理层、界面表示层以及网络通讯之间的布局与分布关系。2022年年5月月31日星期二日星期二1 1三个层次三个层次 数据存储层:数据存储层:主要完成对DB中数据的各种维护操作;这一层的功能一般由DBS来承担。 业务处理层:业务处理层:也可称为应用层,它是DB应用将要处理的与用户紧密相关的各种业务操作;该层次上的工作通常使用有关的程序设计语言的编程来完成; 界面表示层:界面表示层:也称为用户界面层,是用户向DBS提出请求和接收回答的地方,它主要用于DBS与用户之间的交互,它是DB应用系统提供给用户
46、的可视化的、图形操作界面。2022年年5月月31日星期二日星期二2 2结构类型结构类型 单用户结构单用户结构 集中式结构集中式结构 客户机客户机/ /服务器结构服务器结构 浏览器浏览器/ /服务器结构服务器结构2022年年5月月31日星期二日星期二 单用户结构单用户结构 可以运行在PC机上的DBS称为桌面型DBMS。 桌面型DBMS虽在数据的完整性、安全性、并发性等方面存在许多缺陷,但已基本实现了DBMS所应具备的功能。 在桌面型DBMS中,数据存储层、业务处理层和界面表示层的所有功能都存在于单台PC机上。 适合未联网、个人用户及移动用户使用。2022年年5月月31日星期二日星期二 集中式结构
47、集中式结构 采用大型主机和多个终端相结合的系统。 该结构将OS、应用程序、DBS等数据和资源均放在作为核心的主机上,连接在主机上的终端,只作为主机的一种输入/输出设备。 在此体系结构中,数据存储层和业务处理层都放在主机上,而界面表示层放在与主机相连接的各个终端上。2022年年5月月31日星期二日星期二 客户机客户机/ /服务器服务器(C/S)(C/S)结构结构 在C/S结构中,客户机提出请求,服务器对客户机的服务请求作出回应。 C/S结构的本质在于通过对服务功能的分布实现分工服务。 每个服务器都为整个局域网系统提供自己最擅长的服务,让所有客户机来分享;客户机的应用程序借助服务器的服务功能实现复
48、杂的应用功能。 在C/S结构中,数据存储层处于服务器上,业务处理层和界面表示层处于客户机上。2022年年5月月31日星期二日星期二 浏览器浏览器/ /服务器服务器(B/S)(B/S)结构结构 该结构的DB应用系统中,客户机端仅安装通用的浏览器软件实现同用户的输入/输出,而应用程序在服务器端安装和运行。 服务器端,除了有DB服务器保存数据并运行基本的DB操作外,还有称作应用服务器的服务器来处理客户端提交的处理要求。即C/S结构中客户端运行的程序转移到了应用服务器中。 应用服务器充当客户机与DB服务器的中介,架起用户界面同DB之间的桥梁,故也称为三层结构。2022年年5月月31日星期二日星期二1.
49、4 数据模型数据模型1.4.1 概述概述1.4.2 层次数据模型层次数据模型1.4.3 网状数据模型网状数据模型1.4.4 关系数据模型关系数据模型1.4.5 面向对象数据模型面向对象数据模型2022年年5月月31日星期二日星期二1.4.1 概述概述1 1数据模型及分类数据模型及分类2 2数据模型的组成数据模型的组成2022年年5月月31日星期二日星期二1 1数据模型及分类数据模型及分类 模型是对现实世界的抽象。 在DB技术中,用模型的概念描述DB的结构与语义,对现实世界进行抽象。即数据模型是现实世界数据特征的抽象,是用来描述数据的一组概念和定义。换言之数据模型是能表示实体类型及实体间联系的模
50、型。 按照不同的应用层次可将其划分为: 概念数据模型概念数据模型 逻辑数据模型逻辑数据模型2022年年5月月31日星期二日星期二 概念数据模型概念数据模型( (概念模型,也称信息模型) ) 是独立于计算机系统的数据模型,不涉及信息在计算机中的表示,只用来描述某个特定组织所关心的信息结构,是对现实世界的第一层抽象; 概念模型是按用户的观点对数据建模,强调其语义表达能力,是用户和DB设计人员之间进行交流的语言和工具。2022年年5月月31日星期二日星期二 逻辑数据模型逻辑数据模型( (也称结构数据模型,简称数据模型) ) 它直接面向DB的逻辑结构,是对现实世界的第二层抽象。它直接与DBMS有关,有