概论一基础篇-1绪论

Posted rttrti

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了概论一基础篇-1绪论相关的知识,希望对你有一定的参考价值。

1.1 数据库系统概述

1.1.1数据库四个基本概念

数据Data、数据库(DataBase - DB)、数据库管理系统(DataBase Management System - DBMS)、数据库系统(DataBase System - DBS)

1-数据Data

  • 定义:描述事物的符号记录称为数据

数据的语义:数据含义(数据语义与数据不可分)

2-数据库DataBase - DB

  • 定义:数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。(数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。)

三个基本特点:永久存储、有组织和可共享

3-数据库管理系统 - DBMS

  • 定义:位于用户和操作系统之间的数据管理软件,用于建立、使用和维护数据库。
DBMS主要功能:
  1. 数据定义功能:
    数据库管理系统提供数据定义语言(Data Definition Language - DDL),用户可通过它方便地对数据库中的数据对象的组成与结构进行定义。
  2. 数据操纵功能
    DBMS提供数据操纵语言(Data Manipulation Language - DML),用户可通过它操纵数据,实现对数据库的基本操作。
  3. 数据组织、存储和管理
  4. 数据库事务管理和运行管理
  5. 数据库的建立和维护功能(主要有以下四点)
    1. 数据库初始数据的输入、转换功能
    2. 数据库的存储、恢复功能
    3. 数据库的重组织功能
    4. 性能监视、分析功能

4-数据库系统 - DBS

  • 定义:数据库系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。

1.1.2 数据库管理技术的产生和发展

数据管理:对数据进行分类、组织、编码、存储、检索和维护。

发展史(数据库技术的飞跃)

人工管理阶段

特点:

  1. 数据不保存
  2. 应用程序管理数据
  3. 数据不共享
  4. 数据不具有独立性
文件系统阶段

特点:

  1. 数据可长期保存
  2. 由文件系统管理数据
  3. 数据共享性差,冗余度较大
  4. 数据独立性差
数据库系统阶段

1.1.3 数据库系统特点

1.数据结构化

数据库系统实现整体数据的结构化(数据库系统与文件系统本质区别)
整体结构化:数据库中的数据不再仅仅针对某一个应用,而是面向整个组织或企业;数据内部与整体均是结构化的,数据之间具有联系。

2.数据共享性高,冗余度低且易扩展

数据共享的含义及作用:

  1. 数据共享可大大减少数据冗余,节约存储空间。
  2. 数据共享还能避免你数据之间的不相容性与不一致性。
  3. 数据库系统弹性大且易于扩充

3.数据独立性高

数据独立性包括物理独立性和逻辑独立性
物理独立性: 指用户的应用程序和数据库中数据的物理存储时相互独立的。
逻辑独立性: 用户的应用程序与数据库的逻辑结构时相互独立的。

4.数据由DBMS统一管理和控制

数据库共享为并发共享(多个用户可同时存取数据库中数据甚至同一数据)
如下数据库中功能:

  1. 数据安全性保护(保护数据以防止不合法使用造成数据泄密和破坏)
  2. 数据完整性检查(数据的正确性、有效性和相容性)
  3. 并发控制
  4. 数据库恢复

总结

  1. 数据库是长期存储在计算机内有组织、大量、共享的数据集合。
  2. 数据库可供各种用户共享,具有最小冗余度和较高的数据独立性。
  3. 数据库管理系统在数据库建立、运用和维护时对数据库进行统一控制,保证数据完整性和安全性,并进行并发控制,发生故障后对数据库进行恢复。

1.2 数据模型

  • 定义:数据模型是对现实数据特征的抽象,是数据库系统的核心和基础。

要求:

  1. 比较真实地模拟现实世界
  2. 容易为人所理解
  3. 便于在计算机上实现

1.2.1 两类数据模型

  1. 概念模型:按用户观点对数据和信息建模,主要用于数据库设计
  2. 逻辑模型和物理模型
    1. 逻辑模型(按计算机系统观点对数据建模,主要用于实现DBMS)
      1. 层次模型
      2. 网状模型
      3. 关系模型
      4. 面向对象数据模型
      5. 对象关系数据模型
      6. 半结构化数据模型
    2. 物理模型(对数据最底层的抽象)

1.2.2 概念模型(现实世界到机器世界的一个中间层,用于信息世界的建模)

要求:

  1. 具有较强的语义表达能力,能方便、直接表达应用中的各种语义只是
  2. 应简单、清晰、易于理解

1.信息世界基本概念

  1. 实体 entity
    客观存在并可相互却别的事务
  2. 属性 attribu
    实体所具有的某一特性
  3. 码 key
    唯一标识实体的属性集
  4. 实体型 entity type
    用实体名及其属性名集合来抽象和刻画同类实体
  5. 实体集 entiity set
    同一类型实体的集合
  6. 联系
    1. 实体内部的联系:组成实体的各属性之间的联系
    2. 实体之间的联系:不同实体集之间的联系
    3. 实体之间的联系由一对一、一对多和多对多

2. 概念模型的一种表示方法:实体-联系方法

1.2.3 数据模型的组成要素(数据结构、数据操作和完整性约束)

  1. 数据结构
    数据结构描述数据库的组成对象以及对象之间的联系。
  2. 数据操作
    数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。
  3. 数据的完整性约束条件 (数据的完整性约束条件是一组完整性规则。(完整性规则是给定的数据模型中数据及其联系所具有的制约和一条规则)
    1. 数据模型应反映和规定其必须遵守的基本的和通用的完整性约束条件
    2. 数据模型还应提供定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定语义约束条件。

1.2.4 常用数据模型

  1. 层次模型 hierarchical model - 格式化模型
  2. 网状模型 network model - 格式化模型
  3. 关系模型 relational model (mysql)
  4. 面向对象数据模型 object oriented data model
  5. 对象关系数据模型 object relational data model
  6. 半结构化数据模型 semistructure data model (XML)

1.2.5 层次模型(最早出现,类似于树结构)

1.数据结构

要求:

  1. 有且只有一个节点没有双亲结点(根节点)
  2. 根以外的其他节点有且只有一个双亲结点

层次模型中每个节点表示一个记录类型,记录类型之间的联系用节点之间的连线表示(父子间的一对多)。

特点: 任何一个给定的记录值只能按其层次路径查看,没有一个子女记录值能脱离双亲记录值而存在。

2.数据操纵与完整性约束

数据操纵: 查询、删除、插入和更新

注:

  1. 插入时没有相应的双亲节点值则不能插入新值
  2. 删除时若删除双亲节点值则对应子女节点值也被同时删除

3.层次模型优缺点

  1. 优点
    1. 数据结构简单清晰
    2. 层次数据库查询效率高(性能优于关系数据库且不低于网状数据库)
  2. 缺点
    1. 现实世界众多模型不适于
    2. 若一节点有多个双亲节点,则用层次模型较笨拙。
    3. 查询子女节点必须通过双亲节点
    4. 因结构严密,层次命令趋于程序化

1.2.6 网状模型(DBTG系统)

1.数据结构

要求:

  1. 允许一个以上节点无双亲
  2. 一个节点可以有多于一个的双亲

网次模型中每个节点表示一个记录类型,节点之间的连线表示记录类型之间的父子联系(因双亲不唯一联系需被命名)

2.数据操纵与完整性约束(以DBTG为例)

  1. 支持记录码的概念
  2. 保证一个联系中双亲记录和子女记录之间一对多联系
  3. 可以支持双亲记录和子女记录之间的某些约束条件

3.优缺点

  1. 优点
    1. 更直观描述现实世界
    2. 性能良好,存取效率高
  2. 缺点
    1. 结构较复杂(且会趋于更复杂)
    2. DDL、DML复杂且需嵌入高级语言
    3. 需通过存储路径访问数据,编程复杂。

1.2.7 关系模型(最重要! MySQL)

1.数据结构(建立于严格数学概念基础)

一些术语:

  1. 关系:一个关系对应一张表 (一张二维表)
  2. 元组: 表中的一行即为一个元组 (记录或行)
  3. 属性:表中的一列即为一个属性 (列)
  4. 码(key):主键,可以唯一确定一个元组
  5. 域:一组具有相同数据类型的值的集合,属性的取值来自于某个域(性别:男/女)
  6. 分量: 元组中的一个属性值 (一条记录中的一个列值)
  7. 关系模式:对关系的描述 - 关系名(属性1,属性2,... ,属性n) (表头)

关系模型要求关系必须是规范化的(最基本要求:关系中的每一个分量必须是一个不可分的数据项)

网状模型可以更直观地描述现实世界,层次模型是网状模型的一个特例。

2. 关系模型的数据操纵与完整性约束

数据操纵:增删改查
完整性约束:实体完整性、参照完整性和用户定义的完整性

关系模型的数据操作都是集合操作,操作对象和操作结果都是关系
关系模型把存取路径向用户隐蔽了,用户只要指出干什么与找什么,而不必详细说明怎么干或怎么找。

3.优缺点

  1. 优点
    1. 建立于严格数学概念基础
    2. 关系模型概念单一,数据结构简单、清晰、易懂
    3. 存取路径对用户隐蔽,有更高的数据独立性、更好的安全保密性,简化数据库建立开发工作
  2. 缺点: 存取路径对用户隐蔽,查询效率不如格式化数据模型。为提高性能,DBMS需对查询请求进行优化。

1.3 数据库系统的结构

1.3.1 数据库系统模式的概念

数据库模型有‘型’和‘值’两个概念,‘型’是对某一类数据的结构和属性的说明,‘值’是型的一个具体赋值。
可笼统为:型为关系模式,值为一个元组。

模式是数据库中全体数据的逻辑结构和特征的描述,仅仅设计型的描述。
模式的一个具体值称为模式的实例;模式相对稳定而实例相对变动;模式反映数据的结构及其联系,实例反映数据库某一时刻的状态。

1.3.2 数据库系统的三级模式结构(外模式、模式、内模式)

1.模式(数据全局逻辑结构)

  • 定义:模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
    地位:是数据库系统模式结构的中间层,既不涉及物理存储与硬件环境,也与应用程序和开发工具无关。
    一个数据库只有一个模式。

2.外模式(数据局部逻辑结构)

  • 定义:外模式也称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,与某一应用有关的数据的逻辑表示。
    外模式通常是模式的子集。一个数据库可有多个外模式。
    DBMS提供外模式数据定义语言(DDL)严格定义外模式。

3.内模式

  • 定义:内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。

1.3.3 数据库的二级映像功能与数据独立性

使系统内部实现这三个抽象层次的联系和转换。

1.外模式/模式映像

模式改变时(关系、属性的增加...),由数据库管理员对各个外模式/模式的映像作相应改变,可使外模式保持不变。应用程序依据数据的外模式编写,从而应用程序不必修改,保证了数据与程序的逻辑独立性 - 简称数据的逻辑独立性。

2.模式/内模式映像

当数据库存储结构改变时(选择了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,使模式保持不变,从而应用程序也不必改变。保证数据与程序的物理独立性 - 简称物理独立性

1.4 数据库系统的组成

数据库系统一般由数据库、数据库管理系统、应用程序和数据库管理员构成。

1-硬件平台及数据库

对硬件资源的要求:

  1. 内存足够大以存放操作系统、数据库管理系统核心模块、数据缓冲区和应用程序。
  2. 磁盘会磁盘阵列等设备足够大以存放数据库
  3. 系统又较高通道能力以提升数据传送率。

2-软件

数据库系统软件主要包括:

  1. 数据库管理系统
  2. 支持数据库管理系统运行的操作系统
  3. 具有与数据库接口的高级语言及其编译系统以开发应用程序
  4. 以数据库管理系统为核心的应用开发工具。
  5. 为特定应用环境开发的数据库应用系统。

3-人员

  1. 数据库管理员 (DataBase Administrator - DBA)
    1. 决定数据库信息内容和结构
    2. 决定数据库存储结构和存取策略
    3. 定义数据安全性要求和完整性约束条件
    4. 监控数据库的使用和运行
    5. 数据库的改进和重组、重构
  2. 系统分析员和数据设计人员
    1. 系统分析员:负责应用系统的需求分析和规范说明
    2. 数据库设计人员:负责数据库中数据的确定以及数据库各级模式的设计
  3. 应用程序员
  4. 用户

以上是关于概论一基础篇-1绪论的主要内容,如果未能解决你的问题,请参考以下文章

数据库----基础篇绪论-----数据库系统概述

delphi基础篇之数据类型概论

大话数据结构溢彩加强版绪论篇

《数据库系统概论(第5版)》课后习答案 王珊萨师煊编著版 课后题解析 高等教育出版社出版 答

Bash概论 - Linux系列教程补充篇

机器学习基础概论