Advertisement

数据库原理与应用笔记整理(1)

阅读量:

整理自中国人民解放军陆军工程大学的数据库原理与应用的MOOC课程

第一章 数据库系统概论

本章知识点

数据管理的三个阶段
1.人工管理
2.文件系统管理
3.数据库系统管理

人工管理

文件系统管理
数据分析特点:

  • 数据由文件系统进行管理
  • 数据能够长久保存
  • 应用能够访问数据
  • 具备一定程度的可共享特征
  • 存在冗余的数据存储结构
  • 具备设备独立性的特点
  • 不具备完整的数据独立特性

数据库(Database--DB)

  • 数据库是由计算机系统中组织、统一管理和可共享的一系列相关数据构成的一个长期存储集合
    数据管理的特点:
    * 采用全局的数据模型进行信息组织
  • 数据模型不仅刻画了单个数据对象的属性特征和行为规范,并且定义了不同对象之间的关联关系
    * 数据面向全局的应用领域
  • 基于全局的数据模型构建的数据库体系能够整合组织内所有相关信息,并通过统一的数据管理系统实现不同业务系统的互联互通
    * 数据由专门的DBMS系统进行集中统一管理和控制
  • 通过集中管理实现的优势明显体现在三方面:一是系统间的功能分离便于集中管理;二是提高了操作的安全性和可靠性;三是实现了对信息资源的有效控制
    数据库管理技术的主要优点:
  • 信息资源的有效共享性显著提升;知识表示更加灵活便捷;实现了对复杂事务处理的支持

元数据(meta-data):数据的描述信息
数据字典(data dictionary):系统数据库

数据库管理系统(Database Management System,DBMS)
功能为用户或应用程序提供访问数据库的方法,包括DB的建立、查询、更新及各种数据控制
1.数据库的定义

  • DBMS提供数据定义语言(Data Definition Language,DDL)来对数据库中的数据对象进行定义,指定其结构和约束等
    2.数据操纵
  • DBMS提供数据操纵语言(Data Manipulation Language,DML)来实现对数据库的基本操作,包括查询数据库以获得所
    需数据、更新数据库以反映现实世界的变化等
    3.数据的组织存储和管理
  • 分类组织、存储和管理各种数据,包括数据字典(存放数据库的定义、数据库是的统计信息等)、用户数据、
    数据的存取路径等
  • 确定以何种文件结构和存取方式在磁盘上组织这些数据
  • 实现数据之间的联系
    4.数据库的事务管理和管理(控制功能)
  • 对数据库的建立、运用和维护等进行统一管理、统一控制,保证数据的安全性、完整性、多用户的并发操作和发生故
    障后的系统恢复
    5.数据库的维护
  • 数据库数据的载入、转换
  • 数据库的转储、恢复
  • 数据库的重组和性能监视、分析

数据库系统(Database System, DBS)
基于数据库技术构建的计算机体系结构
通过使用数据库技术实现数据存储与维护,并为应用程序提供数据支持

_Database Administrator (DBA)

  • 对数据进行全面管理与控制
  • 制定数据存储方案与组织架构
  • 制定数据存储策略与访问方式
  • 规范数据库的安全性与完整性要求
  • 监控数据使用情况并优化管理
  • 优化数据库架构并重建方案

大多数DBMS遵循三级模式结构
1.外模式
2.概念模式
3.内模式

DBMS基于三层抽象结构设计,在面向用户提供便利的同时将数据复杂性和部分技术细节隐去。这种架构设计不仅增强了数据库独立性,还能进一步降低系统使用的负担

模式

实例

概念模式

单一数据库仅有一个概念模式;这一概念级别的数据视图描述了系统的全部属性及其相互之间的关系。基于某一特定的数据模型;该体系在综合考量各层次用户需求的基础上;有机整合形成一个逻辑整体。作为数据库架构体系的中间层;它既不涉及系统的物理存储细节和硬件环境;也不与其他应用开发工具及高级程序设计语言直接相关。在规范设定时;不仅需要规定系统中数据的逻辑结构;还需要规定各实体间的数据联系;并对系统的安全性与完整性要求进行规范设定。

外模式

基于概念模式所定义的全局数据中,数据库用户在应用需求、数据视角以及存取权限等方面呈现显著差异。这种差异使得基于不同用户的局部数据呈现出不同的特征。每个外模式实际上代表了一个特定用户对感兴趣的部分数据库结构及其特征的关注。值得注意的是同一外模式能够被同一个用户的多个应用程序共享。

内模式(internal schema)

单一数据库仅具有一个内模式。内模式表示了数据库物理存储结构及其存储机制的描述,并作为数据在数据库内部表示方式的一个高级别视图加以体现;也可视为数据的物理组织形式的一种规范性描述。无论采用何种具体存储设备,在设计内模式时均应假设其数据将被存储在一个抽象化的无限大线性地址空间中

某个学生选课系统关系数据库中学生信息的三级模式

在概念模式中,数据库中的学生S表信息由五个属性组成:学号SNO、姓名SN、性别SEX、出生日期SB以及所在系SD,并规定了每个属性的数据类型。
内模式中以一个长度为76字节的存储记录类型表示学生信息。该记录包含12个字节的前缀部分用于存储如记录长度、模式指针等控制信息,并对应学生概念模型中的五个属性。
此外该存储记录通过学号字段实现了索引功能。
在外模式中使用过程化SQL编程实现外部视图管理的用户对应于数据库中的外部视图服务。其中两个变量用于概念模型中学生S表中的学号SNO与姓名SN属性。
另一变量对应于其他表中的数据信息。
同样地按照C语言规则设定外模式结构时发现这些用户的实现不考虑学生所属系SD的信息。

从某种程度上来说, 概念模式与内模式之间的联系, 相当于设计与实现的关联. 而概念模式与外模式之间的联系, 则相当于全局与局部的关联.

三级层级结构仅用于展示数据的不同层次特征,并非实际存储位置描述;其中所提及的数据信息均以实体形式存在与物理数据库中

DBMS的工作模式

当一个请求需要查询数据库时,在物理数据库中提取出来的数据必须经过转化以便与用户的外部模式对应。在不同层次之间处理请求和结果的转换过程称为映射。通过提供中间层的映射关系,数据库管理系统实现了不同层次之间的信息关联。

二级映射

在外部层级与概念层级之间存在外模式与概念模式之间的映射关系,在这一层级间建立了用户的外层表与其对应的内层表间的元数据关联。
基于概念层次与内部层次之间的映射关系,在这一层级间建立了不同层次的数据关联。
由于用户所见的具体实体局部数据库中的逻辑数据模型可能与其整体的概念模型存在差异性(例如:同一实体的不同属性可能会拥有不同的数据类型、名称会有所变化,并且多个相关属性可能会整合为同一个外部标识符等),因此有必要明确外层表与其对应的概念层表之间的具体对应关系。
每个外层表都会对应有一个关于其与相关内层表之间映射关系的元数据表。
对于每一个外层表而言,在其内部层次上都需要明确如何表示这些元数据项及其对应的字段信息。
由于全局层面的数据模型与其物理存储实现之间可能存在差异(如:全局层面的数据模型与其物理存储实现之间可能存在差异),需要明确如何在内部层次上表示这些元数据项及其对应的字段信息。
应用程序依赖于这些具体的元数据信息来完成对外部事务系统的操作,并独立于具体的概念模型和内层实现细节。

小结:

大部分现代数据库管理系统(DBMS)并未彻底分离这三层模式,并且通常会部分地融合它们之间的关系。例如,在某些DBMS中,概念模式可能会包含与物理层相关的细节信息。并非所有DBMS都具备这种严格的三层架构体系;然而,在某种程度上支持层次化设计的体系架构能够有效地满足大部分数据库需求。

在数据库系统中,数据独立性主要包含两个方面:一是物理层面的数据独立性(即对外部操作者的隐藏),二是逻辑层面的数据独立性(即对业务人员的操作隐藏)。
数据库的结构决定着信息在计算机内部如何组织。
从用户角度来看,数据库设计的核心目标就是实现对信息呈现形式的有效控制。
从存储位置的角度来看,数据库设计的核心目标就是实现对信息布局方式的有效控制。

数据独立性

在面向应用的数据人工管理方法中, 数据需要由应用程序自主设计. 在程序编写过程中, 程序员需规范数据的存储布局. 存储架构发生变化时, 必须相应地进行系统调整. 重新配置数据模型时, 应用程序与其处理的对象之间呈现出紧密联系

通过模式定义语言将相关数据结构的说明存储到DBMS的数据字典中,并使程序系统从该数据字典中获取数据库结构信息的方式是通过使用该系统。程序系统负责管理这些数据在磁盘上的存储位置,并使这些位置以某种方式被组织起来以便于访问。程序系统处理这些细节时无需用户关心具体的物理存储架构。

在概念模型与实体模型之间建立对应关系时,在数据库结构发生变化时(也就是实体模型发生变化的时候),只需相应地调整这种映射关系即可尽量保持原有状态。为了实现这一目标,在处理内外模型的变化时应当采取隔离在外的方式进行处理(这将使得外模型以及应用程序受到的影响较小),从而使得数据具有物理独立性。

在处理系统设计时,在理解对象模型的过程中需要考虑内外模型之间的对应关系,并明确用户外模型与概念模型的对应关系。每当数据的逻辑结构发生变化时例如,在关系型数据库中增加新的表结构、新增字段或修改字段的数据类型等导致数据库的概念模型发生变更,则只需针对各外模型与概念模型之间的映射关系进行相应的调整即可。
因为应用程序是基于这些预设的结构设计编写的而由于依赖于这些预设的结构设计则应用程序无需做相应修改从而保证了数据的逻辑独立性同样无需改动外模型的能力。

小结:

全部评论 (0)

还没有任何评论哟~