第9章 数据库基础 9.1 数据库系统概述 数据库系统几个概念 数据:反映客观事物存在方式和运动状态的记录,是信 息的载体。如数字、文字符号、图形、图像和声音等 数据库:是指长期存储在计算机内的、有组织的、可共 享的数据集合。数据库中的数据按一定的数据模型组织、 描述和储存,具有较小的冗余度、较高的数据独立性和 易扩展性。 数据库系统:有组织地,动态地存储大量相关的结构化 数据,方便各类用户访问数据库的计算机软件、硬件资 源的集合。 9.1 数据库系统概述(续) 数据库系统组成:数据库系统一般由数据库、数据库 管理系统(及其开发工具)、应用系统、数据库管理 员和用户构成。 用户 用户 …… 用户 应用系统 应用开发工具 数据库管理系统 操作系统 数据库 数据库系统构成 数据库管理员 9.1 数据库系统概述(续) 数据管理技术的发展阶段 1、人工管理阶段 20世纪50年代中期以前,计算机主要用于科学计算。在这一阶 段的硬件状况是外存只有纸带、卡片和磁带软件状况是没有专 门的管理数据软件、没有操作系统;数据处理方式主要是批处 理。 特点 (1)数据不长期保存、不能共享。 (2)应用程序管理数据,数据不具备独立性。 9.1 数据库系统概述(续) 数据管理技术的发展阶段 2、文件系统阶段 20世纪50年代后期至60年代中后期,程序与数据有了一 定独立性,程序与数据分开存储,有了程序文件和数据 文件的区别。 特点: (1)数据可以长期保存。 (2)由文件系统管理数据。 (3)数据共享性差,冗余度大。 (4)数据独立性差。 9.1 数据库系统概述(续) 数据管理技术的发展阶段 3.数据库系统阶段 20世纪60年代后期以来,计算机应用于管理的规模更加 庞大,应用也越来越广泛。需要计算机管理的数据量急 剧增长,且对数据共享的需求日益增强。 特点 (1)数据结构化。 (2)数据共享性高,冗余度低,易扩充。 (3)数据独立性高。 (4)完备的数据控制功能。 9.1 数据库系统概述(续) 数据库系统的体系结构 数据库系统在总的体系结构上具有外部级、概念级、内 部级三级结构的特征,这种三级结构也称为“三级模式 结构”。 数据库系统的三级模式结构由外模式、模式和内模式组 成。 9.1 数据库系统概述(续) 三级模式 外模式:又称用户模式或子模式,它是数据库用户所见 到和使用的局部数据的逻辑结构和特征的描述,是用户 的数据视图。一个模式可以有若干个外模式,每个用户 只关心与其相关的外模式,有利于数据保护。 模式:又称为逻辑模式或概念模式,它介于内模式与外 模式之间。是数据库中全体数据的逻辑结构和特征的描 述,是所有用户的公共数据视图。 内模式:又称为存储模式或物理模式,是对数据物理结 构和存储方式的描述,是数据库中全体数据的内部表示 方式。一个数据库只有一个内模式。 外模式处于最外层,反映了用户对数据库的实际要 求;模式处于中层,反映了设计者对数据全局的逻辑要 求;内模式处于最底层,反映了数据的物理结构和存取 方式。 9.1 数据库系统概述(续) 两级映射 外模式/模式间的映射和模式/内模式间的映射。 外模式/模式间的映射:定义了外模式与模式之间的对应 关系,保证了逻辑数据的独立性。 模式/内模式间的映射:定义了内模式与模式之间的对应 关系,保证了物理数据的独立性。 9.2 数据库管理系统 数据库管理系统(DataBase Management System, DBMS)是位于用户与操作系统之间的数据管理软 件。是具有数据定义、管理和操纵功能的软件集合。 9.2 数据库管理系统 (续) 数据库管理系统的功能 (1)数据定义功能。 (2)数据操纵功能。 (3)数据库的运行管理。 (4)数据库的建立和维护功能。 9.2 数据库管理系统 (续) 数据模型 (1)层次数据型:亦称树型,是数据库系统中最早出现的 数据模型,像一棵倒挂的树,用来描述有层次联系的事 物。层次模型反映了客观事物之间一对多(1:n)的联系。 (2)网络数据模型:用来描述事物间的网状联系,反映了 客观事物之间的多对多(m:n)的联系。 (3)关系数据模型:关系数据模型把事物间的联系及事物 内部的联系都用一张二维表来表示,这种表称为“关 系” 。 9.2 数据库管理系统 (续) 数据库管理系统的类型 根据数据库所使用的数据模型,数据库也相应地分 为层次型数据库、网络型数据库和关系型数据库。目前, 还出现了不少新的数据库系统,如面向对象数据库系统、 分布式数据库系统、多媒体数据库系统等。 由于关系型数据库有严格的数学理论基础,简单灵 活,数据独立性高,与其他数据库相比有突出的优点。 数据库技术发展至今,绝大多数数据库为关系型的。 9.2 数据库管理系统 (续) 数据库管理系统的构成 (1)数据定义语言及其翻译处理程序。 数据定义语言DDL供用户定义数据库的模式、存储 模式、外模式、各级模式间的映射、有关的约束条件等。 (2)数据操纵语言及其翻译解释程序。 数据操纵语言DML用来实现对数据库的检索、插入、 修改、删除等基本操作。 (3)数据运行控制程序。 系统运行控制程序负责数据库运行过程中的控制与管 理 (4)实用程序。 9.3 数据库语言 数据定义语言 数据定义语言用于定义数据库的各级模式(外 模式、模式、内模式)及其相互之间的映射,定义数 据的完整性约束、保密限制等约束,各种模式通过数 据定义语言编译器翻译成相应的目标模式,保存在数 据字典中。 9.3 数据库语言(续) 数据操纵语言 数据操纵语言用于实现对数据库中的数据进行 存取、检索、插入、修改和删除操作。 数据操纵语言可分为两种类型: 一种是嵌入在C、C++等高级语言中,不独立使用,此类 语言称为嵌入式语言。 另一类是交互查询语言,可以独立使用简单的检索、更 新等操作,通常由一组命令组成,用于提取数据库中的 数据,这类语言称为自含式语言,包括数据操纵语言的 编译程序和解释程序。 9.3 数据库语言(续) 结构化查询语言SQL 结构化查询语言(Structured Query Language,SQL)语言结构简洁,功能强大,简单 易学。SQL语言的主要功能就是同各种数据库建立 联系,进行沟通。 SQL语句可以用来执行各种各样的操作,例如更 新数据库中的数据,从数据库中提取数据等。 目前绝大多数流行的关系型数据库管理系统,如 Oracle, Sybase, Microsoft SQL Server, Access等都 采用了SQL语言标准。 9.3 数据库语言(续) SQL语言构成 (1)数据查询语言(Data Query Language,DQL), 如SELECT语句。 (2)数据操纵语言(Data Manipulation Language, DML),如INSERT, UPDATE, DELETE等语句。 (3)数据定义语言(Data Definition Language,DDL), 如CREATE, ALTER, DROP等语句。 (4)数据控制语言(Data Control Language,DCL), 如COMMIT WORK, ROLLBACK WORK等。 9.3 数据库语言(续) SQL的特点 SQL语言是一个综合统一的语言。它集数据定义语言 DDL、数据操纵语言DML、数据控制语言DCL和数据查 询语言DQL于一体。 SQL语言是一个高度非过程化语言。 SQL语言提供了面向集合的操作方式。 SQL语言以同一种语法结构提供了两种使用方式。SQL 语言既是自含式语言,又是嵌入式语言。 9.4 几种新型的数据库系统 关系数据库 关系数据库是目前数据库中最重要的最流行的数据。目前常用 的数据库系统软件几乎都是关系数据库。 关系数据库结构: 元组:关系中的每一行称为一个元组 属性:关系中的每一列称为一个属性 候选键:若一个属性或属性集能唯一标识元组,且不含有 多余的属性或属性集,则称该属性或属性集为关系模式的 候选键。 主键:正在使用的候选键或用户特别指定的某一候选键称 为主键。 9.4 几种新型的数据库系统 (续) 关系数据库 三种基本的关系运算:选择、投影和连接 选择:从二维表中选出符合条件的记录,是一种从行的 角度对关系进行的运算。 投影:从二维表中选出所需要的列,是一种从列的角度 对关系进行的运算。 连接:是同时涉及两个二维表的运算,是将两个关系在 给定的属性上满足给定条件的记录连接起来而得到的一 个新的关系。 9.4 几种新型的数据库系统 (续) 关系数据库 关系的完整性 完整性规则:是对关系的某种约束条件,主要包括实体 完整性、参照完整性和用户定义的完整性三类。 实体完整性:是对组成主键字段的约束,若某字段为主键,则 该字段中所有的值不能取空值。 参照完整性:是对数据库中建立关联关系的关系间数据参照引 用的约束,即对组成外键的字段的约束。 用户定义的完整性:是针对某一具体关系数据库的约束条件, 反映了某一具体应用所涉及的数据必须满足的语义要求。 9.4 几种新型的数据库系统 (续) 分布式数据库 分布式数据库系统是在集中式数据库系统的基础上发展 来的。是数据库技术与网络技术结合的产物。分布式数 据库是由一组数据组成,这些数据在物理上分布在计算 机网络的不同结点上,逻辑在属于同一系统。 两种类型的分布式数据库系统 1. 一种是物理上分布的,但逻辑上却是集中的。 2. 另一种分布式数据库系统在物理上和逻辑上都是分布的, 也就是所谓联邦式分布数据库系统。 9.4 几种新型的数据库系统 (续) 多媒体数据库 多媒体数据库是数据库技术与多媒体技术结合的 产物。 主要特征: (1)多媒体数据库应该能够表示多种媒体的数据。 (2)多媒体数据库应能够协调处理各种媒体数据。 (3)多媒体数据库应提供比传统数据管理系统更强的适 合非格式化数据查询的搜索功能。 9.4 几种新型的数据库系统 (续) 并行数据库 并行数据库系统是数据库技术与并行计算技术相 结合的产物。 并行数据库系统是指在并行机上运行的具有并行 处理能力的数据库系统。 三种并行数据库系统的体系结构: (1)共享内存(Shared-Memory)结构。 (2)共享磁盘(Shared-Disk)结构。 (3)无共享资源(Shard-Nothing)结构。 9.4 几种新型的数据库系统 (续) 演绎数据库 演绎数据库通常也被称为逻辑数据库、演绎关系数据 库或虚关系数据库。 演绎数据库是将逻辑程序设计思想和关系数据库思想 结合起来。 演绎数据库具有很强的推理能力,即根据已知的事实 和规则进行推理,从而解决用户提出的各种问题。 演绎数据库的三方面内容: 实数据(事实)、规则和虚数据。 9.4 几种新型的数据库系统 (续) 主动数据库 主动数据库(Active Data Base)是相对于传 统数据库的被动性而言。是指在没有用户干预的情况 下,能够自动地对系统内部或外部所产生的事件做出 反应的数据库系统称为主动数据库。 主动数据库是在传统数据库基础上,结合人工 智能技术和面向对象技术而提出的。 主动数据库通常采用的方法是在传统数据库系 统中嵌入ECA(即事件—条件—动作)规则,在某 一事件发生时引发数据库管理系统去检测数据库当前 状态,看是否满足设定的条件,若条件满足,便触发 规定动作的执行。 9.4 几种新型的数据库系统 (续) 数据仓库 数据仓库是一个面向主题、集成、时变、非易失 的数据集合,支持管理部门的决策过程。 基本特征 (1)面向主题。 (2)数据仓库是集成的。 (3)数据仓库是不可更新的。 (4)数据仓库是随时间变化的。 分类 企业数据仓库(EDW)、操作型数据库(ODS)和 数据市集(DataMart) 9.5 数据库系统的应用 事务处理系统 事务:是用户定义的一个操作序列,这些操作要么全做 要么全不做,是一个不可分割的工作单位。 事务处理系统的任务就是保证整个事务或者完全成功, 或者什么也不做,返回到原始的状态。 事务处理系统的ACID特性: 原子性(Atomicity)、一致性(Consistency)、 隔离性(Isolation)和持续性(Durability) 9.5 数据库系统的应用 (续) 管理信息系统 管理信息系统(Management Information System, MIS)是一个以人为主导,利用计算机硬件、软件、网络 通信设备以及其他办公设备,进行信息的收集、传输、加 工、储存、更新和维护,以企业战略竞优、提高效益和 效率为目的,支持企业的高层决策、中层控制、基层运 作的集成化的人机系统。 MIS组成 辅助决策系统(DSS)、工业控制系统(CCS)、 办公自动化系统(OA)以及数据库、模型库、方法库、 知识库和与上级机关及外界交换信息的接口。 9.5 数据库系统的应用 (续) 决策支持系统 决策支持系统是一种协助人们做决策的资讯系统,是在 管理信息系统(MIS)和运筹学的基础上发展起来的新 型计算机学科。以数据仓库和联机分析处理(OLAP)相 结合而建立的辅助决策系统是决策支持系统的新形式。 9.5 数据库系统的应用 (续) 联机分析处理系统 联机分析处理(On-Line Analytical Processing, OLAP)使分析人员、管理人员或执行人员能够从多角度 对信息进行快速、一致、交互地存取,从而获得对数据 的更深入了解的一类软件技术。 联机分析处理OLAP支持复杂的分析操作,侧重决策支持, 并且提供直观易懂的查询结果,是数据仓库系统的主要 应用。 OLAP 分类: 基于多维数据库的MOLAP、基于关系数据库的 ROLAP、混合型HOLAP(Hybrid OLAP) 9.5 数据库系统的应用 (续) 数据挖掘系统 数据挖掘(Data Mining)是指从大量数据中提取或“挖 掘”知识 。 从商业角度来说,数据挖掘是指一种新的商业信息处理 技术,其主要特点是对商业数据库中的大量业务数据进 行抽取、转换、分析和其他模型化处理,从中提取辅助 商业决策的关键性数据。 从技术角度来说,数据挖掘就是指从大量的、不完全的、 有噪声的、模糊的、随机的实际应用数据中,提取隐含 在其中的、人们事先不知道的、但又是潜在有用的信息 和知识的过程。 数据挖掘与传统的数据分析的本质区别: 数据挖掘是在没有明确假设的前提下去挖掘信息、 发现知识.数据挖掘所得到的信息应具有先未知,有效和 可实用三个特征。
© Copyright 2024 ExpyDoc