第六章——数据库系统基础知识(6+15)
第六章——数据库系统基础知识
6.1 基本概念
数据库(Database,缩写为DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享
数据库管理系统(DatabaseManagementSystem,DBMS)是数据库系统的核心软件,要在操作系统的支持下工作,解决如何科学地组织和存储数据、如何高效地获取和维护数据的系统软件问题。其主要功能包括数据定义功能、数据操纵功能、数据库的运行管理、数据组织、存储、管理和数据库的建立与维护。
DBMS的特征:
- 数据结构化且统一管理
- 有较高的数据独立性
- 提供数据控制功能
DBMS 的分类:
- 关系数据库系统:是支持关系模型的数据库系统
- 面向对象的数据库系统:是支持以对象形式对数据建模的数据库系统
- 对象关系数据库系统:在传统的关系数据模型基础上,提供元组、数组、集合等更丰富的数据类型以及处理新的数据类型操作的能力,这样形成的数据模型称为对象关系数据模型。基于对象关系数据模型的DBS称为对象关系数据库系统。
6.2数据库三级模式两级映像
数据库系统采用三级模式结构,这是数据库管理系统内部的系统结构。
- 外模式:也称用户模式或子模式,是用户与数据库系统的接口,是用户用到的那部分数据的描述,由若干个外部记录类型组成。描述外模式的数据定义语言称为外模式DDL。
- 概念模式:也称模式,是数据库中全体数据的逻辑结构和特征的描述,它由若千个概念记录类型组成,只涉及行的描述,不涉及具体的值。概念模式的一个具体值称为模式的一个实例,同一个模式可以有很多实例。
- 内模式:也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,定义所有的内部记录类型,索引和文件的组织方式,以及数据控制方面的细节。描述内模式的数据定义语言称为内模式DDL。
- 外模式/模式映像:该映像存在于外部级和概念级之间,实现了外模式到概念模式之间的相互转换
- 模式/内模式映像:该映像存在于概念级和内部级之间,实现了概念模式到内模式之间的相互转换。
DBMS的两级映像功能保证了数据的独立性。
6.3 数据库的分析与设计过程
6.4 数据模型
6.4.1 基本概念
模型就是对现实世界特征的模拟和抽象
数学模型是对现实世界数据特征的抽象
数据模型是用来描述数据的一组概念和定义
数据模型的三要素是数据结构、数据操作、数据的约束条件。
数据结构是所研究的对象类型的集合,是对系统静态特性的描述
数据操作是对数据库中各种对象的实例(值)允许执行的操作的集合,包括操作及操作规则。数据操作是对系统动态特性的描述。
数据的约束条件是一组完整性规则的集合。对于具体的应用数据必须遵循特定的语义约束条件,以保证数据的正确、有效、相容。
6.4.2 ER模型
实体——联系模型简称ER模型,所采用的三个主要概念是实体、联系和属性。
6.4.3 关系模型
关系数据库系统采用关系模型作为数据的组织方式,在关系模型中用表格结构表达实体集以及实体集之间的联系,其最大特色是描述的一致性。
关系模型是由若干个关系模式组成的集合。一个关系模式相当于一个记录型,对应于程序设计语言中类型定义的概念。
关系模型的优点是概念单一,存储路径对用户是透明的,所以具有更好的数据独立性和安全保密性,简化了程序的开发和数据库的建立工作。
多对多需要新建一张关系映射表
3+1
除了要把三个实体变成三个关系模型,还要把他们之间多对多的联系也写成一个关系模式的形式
6.5 关系代数——关系模式相关名词
教学数据库的4个关系模式如下:
- 候选码(键):若关系中的某一属性或属性组的值能唯一标识一个元组,则称该属性或属性组为候选码。
- 主码(键):若一个关系有多个候选码,则选定其中一个为主码
- 主属性:包含在任何候选码中的诸属性称为主属性;不包含在任何候选码中的属性称为非主属性。互斥
- 外码(键):如果公共属性在一个关系中是主属性,那么这个公共属性被称为另一个关系的外码。由此可见,外码表示了两个关系之间的相关联系
- 全码:若关系模式的所有属性组都是这个关系模式的候选码,则称为全码,
6.6 数据库完整性约束
完整性规则提供了一种手段来保证当授权用户对数据库作修改时不会破坏数据的一致性,因此完整性规则是为了防止对数据的意外破坏
关系模型的完整性规则是对关系的某种约束条件,完整性分为3类:
- 实体完整性:规定基本关系R的主属性A不能取空值
- 参照完整性:若F是基本关系R的外键,它与基本关系S的主键相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值),或者等于S中某个元组的主键值
- 用户定义完整性:就是针对某一具体的关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求,有应用的环境决定
关系的三种类型:
- 基本关系(通常又称为基本表,基表),是实际存在的表,它是实际存储数据的逻辑表示
- 查询表:查询结果对应的表
- 视图表:由基本表或其他视图表导出的表,由于它本身不独立存储在数据库中,数据库中只存放它的定义,所以常称为虚表
B
6.5 关系代数——七种基本运算
关系代数表达式查询优化的原则如下:
- 提早执行选取运算。对于有选择运算的表达式,应优化成尽可能先执行选择运算的等价表达式,以得到较小的中间结果,减少运算量以及从外存读块的次数。
- 合并乘积与其后的选择运算为连接运算。
- 将投影运算与其后的其他运算同时进行,以避免重复扫描关系
- 将投影运算和其前后的二目运算结合起来,因为没有必要为去掉某些字段再扫描一遍关系。
- 在执行连接前对关系适当地预处理,就能快速地找到要连接的元组,
- 存储公共子表达式。对于有公共子表达式的结果应存于外存(中间结果),这样,当从外存读出它的时间比计算的时间少时,就可节约操作时间。
6.7 关系型数据库SQL简介
SQL是在关系数据库中最普遍使用的语言,它不仅包含数据查询功能还包括插入、删除、更新和数据定义功能。
SQL具有综合统一、高度非过程化、面向集合的操作方式,两种使用方式,语言简洁且易学易用等特点。
SQL支持关系数据库的三级模式结构:视图对应外模式、基本表对应模式、存储文件对应内模式。
6.8关系数据库的规范化
6.9数据库的控制功能
6.10 数据仓库与数据挖掘基础
数据仓库(Data Warehouse),可简写为DW或DWH,数据仓库是为了企业所有级别的决策制定计划过程,提供所有类型数据类型的战略集合。它出于分析性报告和决策支持的目的而创建。为需要业务智能的企业,为需要指导业务流程改进、监视时间,成本,质量以及控制等。数据仓库是依照分析需求、分析维度、分析指标进行设计的。
数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,它用于支持企业或组织的决策分析处理。是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。
数据挖掘(Data Mining)就是从大量的数据中,提取隐藏在其中的,事先不知道的、但潜在有用的信息的过程。数据挖掘的目标是建立一个决策模型,根据过去的行动数据来预测未来的行为。
6.11大数据基本概基本概念
大数据:一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。