数据库第一章
数据库的4个基本概念:
数据
是数据库中存储的对象
定义:描述事物的符号记录
种类:数字,文字,图形,图像,音频。。。
数据库
定义:数据库是长期存储在计算机内,有组织的,可共享的大量数据的集合。
基本特征:
- 数据按照一定的数据模型组织,描述和储存。
- 可各种用户分享。
- 冗余度小
- 数据独立性高。
- 易扩展。
数据库管理系统
定义:
- 位于用户与操作系统之间的一层数据管理软件。
- 是基础软件,是一个大型复杂的软件系统。
用途:
科学的组织和储存数据,高效的获取和维护数据。
功能:
数据定义功能:
- 提供数据定义语言。
- 定义数据库中的数据对象。
数据组织,存储,和管理:
- 分类组织,存储,和管理各种数据。
- 确定组织数据的文件结构和存储方式。
- 实现数据之间的联系
- 提供多种存储方法提高存储效率
数据操作功能
- 提供数据操纵语言
- 实现对数据库的基本操作
数据库的事务管理和运行管理
- 数据库在建立、运行和维护时由数据库管理系统统一管理和控制。
- 保证数据的安全性,完整性,多用户对数据的并发使用。
- 发生故障后的系统恢复。
数据库系统
构成:
- 数据库
- 数据库管理系统
- 应用系统
- 数据库管理员
数据库系统特点:
- 数据结构化
- 是 数据库的主要特征之一
- 整体结构化
.不在仅仅针对某一个应用,而是面向全组织
.不仅数据内部结构化,整体是结构化的,数据之间具有联系
.数据记录可以变长
.数据的最小的存取单位是数据项
- 数据的共享性高,冗余度低且易扩充
.数据面向整个系统,可以被多个用户,多个应用共享使用,
共享的好处:
减少数据冗余,节约存储空间
避免数据之间的不相容性与不一致性
使系统易于扩充
- 数据独立性高
- 物理独立性:值用户的应用程序与数据库中的物理存储是相互独立的。当数据的物理存储改变了,应用程序不改变。
- 逻辑 独立性 指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,应用程序不用改变。
- 数据由数据库管理系统统一管理和控制
- 数据的安全性保护
- 数据的完整保护
- 并发控制
- 数据库恢复
- 数据模型分为两类(两个不同的层次)
(1) 概念模型 也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。
(2) 逻辑模型和物理模型
-
-
- 逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
-
物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
信息世界中的基本概念
- 实体 客观存在并可相互区别的事务称为实体
- 属性 实体所具有的某一特征为属性
- 码 唯一表示实体的属性集称为码
- 实体性 用实体名及其属性名集合来抽象和刻画同实体称为实体性
- 实体集 同一类型实体的集合称为实体集
- 数据模型的数据结构
- 描述数据库的组成对象,以及对象之间的联系
- 描述的内容
1. 与对象的类型、内容、性质有关
2. 与数据之间联系有关
- 数据结构是对系统静态特性的描述
- 数据的完整性约束条件
- 一组完整性规则的集合
- 完整性规则:给定的数据模型中数据及其联系所具有的制约和依存规则
- 用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容
- 数据模型对完整性约束条件的定义
- 反映和规定必须遵守的基本的通用的完整性约束条件。
- 提供定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。
常用的数据模型
- 层次模型(Hierarchical Model)
- 网状模型(Network Model)
- 关系模型(Relational Model))
- 面向对象数据模型(Object Oriented Data Model)
- 对象关系数据模型(Object Relational Data Model)
- 半结构化数据模型(Semistruture Data Model)
从数据库应用开发人员角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构。
从数据库最终用户角度看来,数据库系统的结分为:
- 单用户结构
- 主从式结构
- 分布式结构
- 客服-服务器
- 浏览器-应用服务、数据库服务器多层结构
数据库系统的概念
型:对某一类数据的结构和属性的说明
值:是型的一个具体赋值
模式:
- 数据库逻辑结构和特征的描述
- 是型的描述,不涉及具体值
- 反应的是数据的结构与联系
- 模式是相对稳定的
实例:
- 模式的一个具体值
- 反映数据库某一时刻的状态
- 同一模式可以有很多实例
- 实例随数据库中的数据的更新而变动
一个数据库中只有一个模式
模式的地位:数据库系统模式结构的中间层
- 与数据的物理存储细节和硬件换景无关
- 所有用户的公共数据视图
模式的定义:
- 数据的逻辑结构
- 数据之间的联系
- 数据有关的安全性,完整性要求
外模式(子模式或者用户模式)
- 数据库用户使用的局部数据的逻辑结构和特征的描述
- 数据库用户的数据视图,是与某一用户有关的数据的逻辑表示。
地位:介于模式与应用之间
- 模式与外模式的关系:一对多
- 外模式通常是模式的子集
- 一个数据库可以有多个外模式,反映了不同用户的应用需求,看待数据的方式,对数据保密的要求
- 对模式中统一数据,在外模式中的结构,类型,长度,保密级别都可以不同
- 外模式与应用的关系:一对多
- 同一外模式也可以为某一用户的多个应用系统所使用
- 但一个应用程序只能使用一个外模式
外模式的用途:
- 保证数据库安全性的一个有力措施
- 每一个用户只能看见和访问所对应的外模式的数据
内模式:
- 是数据物理结构和存储方式的描述
- 是数据在数据库内部的表示方式
- 记录的存储方式
- 索引的组织方式
- 数据是否压缩存储
- 数据是否加密
- 数据存储记录结构的规定
- 一个数据库只有一个内模式
数据库的二级映像功能与数据独立性:
- 三级模式是对数据的三个抽象级别
- 二级映像在数据库管理系统内部实现这三个抽象层次的联系和转换
- 外模式/模式映像
- 模式/内模式映像
外模式/模式映像:
模式:描述的是数据的全局逻辑结构
外模式:描述的是数据的局部逻辑结构
同一模式可以有任意多个外模式
每一个外模式,数据库系统都有一个外模式/模式映像,定义外模式与模式之间的对应关系。
映像定义通常包含在各自外模式的描述中
保证数据的逻辑独立性:
- 当模式改变时,数据库管理员对外模式/模式映像做相应改变,使外模式保持不变。,
- 应用程序是依据数据的外模式编写的,应用程序不必修改,保证了数据与程序的逻辑结构性,简称数据的逻辑结构性。
模式/内模式映像:
- 式/内模映像定义了数据全局逻辑结构与存储结构之间的对应关系
- 数据库中模式/内模式中映像是唯一的
- 该映像定义通常包含在模式描述中
- 保证数据的物理独立性
- 当数据库的存储结构改变了,数据库管理员修改模式/内模式映像,使模式保持不变。
- 应用程序不受影响,保证数据与程序的物理独立性,简称数据的物理独立性
- 数据库模式
- 即全局逻辑结构是数据库的中心与关键
- 独立于数据库的其他层次
- 设计数据库模式结构时应首先确定数据库逻辑模式
- 数据库的内模式
- 依赖于它的全局逻辑结构
- 独立于数据库的用户视图,即外模式
- 独立于具体的存储设备
- 将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,一达到较好的时间与空间效率
- 数据库的外模式
- 面向具体的应用程序
- 定义在逻辑模式上
- 独立于存储模式和存储设备
- 当应用需求发生较大变化,相应外模式不能满足其视图需要时,该外模式就得做相应改动
- 设计外模式时应充分考虑到应用的扩充性
- 特定的应用程序
- 在外模式描述的数据结构上编织的
- 依赖于特定的外模式
- 于数据库的模式和存储结构独立
- 不同的应用程序有时可以共用同一个外模式
- 数据库的二级映像
- 保证了数据库外模式的稳定性
- 从底层保证了应用程序的稳定性,除非应用本身需求本身发生变化,否则应用程序一般不需要修改
- 数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去
- 数据的存储有数据库管理系统管理
- 简化了应用程序的编制
- 大大减少了应用程序的维护和修改
硬件平台及数据库
-
-
-
- 数据库系统对硬件资源的要求
- 足够大的内存
- 足够大的磁盘或磁盘阵列等设备
- 较高的通道能力
- 数据库系统对硬件资源的要求
-
-
软件:
- 数据库管理系统
- 支持数据库管理系统运行的操作系统
- 与数据库接口的高级语言及编译系统
- 以数据库系统为核心的应用开发程序
- 为特定应用环境开发的数据库应用系统
人员:
- 数据库管理员
- 系统分析员和数据库设计员
- 应用程序员
- 最终用户