数据库系统概论

绪论

数据库系统概述

数据库的4个基本概念

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

    在现代计算机系统中数据的概念是广义的,可以是数字,也可以是文字、图形、图像、音频、视频等。
    
  • 数据库:存放数据的仓库。是长期储存在计算机内、有组织、可共享的大量数据的集合。

      数据库的数据具有永久存储、有组织、可共享三个基本特点
    
  • 数据库管理系统(DBMS):数据库管理系统和操作系统一样是计算机的基础软件,能科学地组织和存储数据,高效的获取和维护数据
    主要功能包括:

      1.数据定义功能:数据库管理系统提供数据定义语言(Data Definition Language,DDL),用于对数据库中的数据对象的组成与结构进行定义
      2.数据组织、存储和管理:数据库管理系统要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。
      3.数据操纵功能:数据库管理系统还提供数据操纵语言(Data Manipulation Language,DML)来实现对数据库的基本操作,如查询、插入、删除和修改等。
      4.数据库的事务管理和运行管理:数据库在建立、运用和维护时由数据库管理系统统一管理和控制,以保证事务的正确运行,保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
      5.数据库的建立和维护功能
      6.其他功能:与其他软件系统的网络通信功能、与另一个数据库管理系统或文件系统的数据转换功能,异构数据库之间的互访和互操作功能等。
    
  • 数据库系统:数据库系统是由数据库、数据库管理系统、应用程序和数据库管理员(DATABaseAdministrator,DBA)组成的存储、管理、处理和维护数据的系统。

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

  • 数据管理是指对数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心问题。而数据的处理是指对各种数据进行收集、存储、加工和传播的一系列活动的总和。

  • 数据管理技术经历了人工管理、文件系统、数据库系统三个阶段:

      1.人工管理阶段:数据不保存、应用程序管理数据、数据不共享、数据不具有独立性。
      2.文件系统阶段:数据可以长期保存、由文件系统管理数据、数据共享性差、冗余度大、数据独立性差。
      3.数据库系统阶段:解决多用户、多应用共享数据的需求,使数据为尽可能多的应用服务。
    
  • 数据库系统的特点:

      1.数据结构化
      2.数据的共享性高、冗余度低且易扩充
      3.数据独立性高,包括物理独立性和逻辑独立性
      4.数据由数据库管理系统统一管理和控制,包括数据的安全性保护、数据的完整性检查、并发控制、数据库恢复
    

数据模型

  • 数据模型是对现实世界数据特征的抽象,是用来描述数据、组织数据、对数据进行操作的。

  • 两类数据模型:概念模型、逻辑模型和物理模型

        概念模型:按用户的观点来对数据和信息建模,主要用于数据库设计。
        逻辑模型主要包括层次模型、网状模型、关系模型、面向对象数据模型和对象关系数据模型、半结构化数据模型等,它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现。
        物理模型:是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,或在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。
    
  • 信息世界主要涉及的一些概念:

    实体(entity):客观存在并可相互区别的事物
    属性(attribute):实体所具有的某一特性
    码(key):唯一标识实体的属性集
    实体型(entity type):用实体名及其属性名集合来抽象和刻画同类实体,称实体型
    实体集(entity set):同一类型实体的集合
    联系(relationship):事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系
    

实体之间的联系有一对一、一对多、多对多等多种类型。

  概念模型的一种表示方法:实体-联系方法(E-R方法,E-R模型)
  • 数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成。

  • 数据库领域中主要的逻辑数据模型有:

    层次模型、网状模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型,其中层次模型和网状模型统称为格式化模型.
    
    • 层次模型

      1.层次模型的数据结构:

      有且只有一个节点没有双亲结点,这个结点称为根结点;根以外的其他结点有且只有一个双亲结点。
      

      2.层次模型的数据操纵与完整性的约束:

      数据操纵主要有查询、插入、删除、更新。进行删除、插入、更新操作时要满足层次模型的完整性约束条件:插入操作时美哟相应的双亲结点值就不能插入它的子女结点值;删除操作时,如果删除双亲结点,则相应的子女结点值也将被删除。
      

      3.层次模型的优缺点:

      优点;结构简单清晰、查询效率高、提供了良好的完整性支持
      缺点:现实世界中很多联系是非层次性的,不适合用层次模型表示、查询子女结点必须通过双亲结点、由于结构严谨,层次命令趋于程序化
      
    • 网状模型

      1.网状模型的数据结构:

      允许一个以上的结点无双亲;一个结点可以有多于一个的双亲。
      

      2.网状模型的数据操纵与完整性约束:

      网状模型一般来说没有层次模型那样严格的完整性约束条件,但具体的网状数据库系统对数据操纵都加了一些限制,提供了一定的完整性约束
      

      3.网状模型的优缺点:

      优点:能够更为直接的描述现实世界;具有良好的性能,存取效率高
      缺点:结构比较复杂,不易使用,加重了编写应用程序的负担
      
    • 关系模型

      1.关系模型的数据结构:

      从用户观点看,关系模型由一组关系组成。每个关系的数据结构是一张规范化的二维表
      

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

      数据操纵主要包括查询、插入、删除和更新数据。这些操作必须满足关系的完整性约束条件
      

      3.关系模型的优缺点:

      优点:建立在严格的数学概念的基础上、数据结构简单、清晰、有更高的数据独立性、更好的安全保密性
      缺点:查询效率不如格式化数据模型,增加了开发数据库管理系统的难度
      

数据库系统的结构

在数据库模型中有“型”(type)和“值”(value)的概念。型是指对某一类数据的结构和属性的说明,值是型的一个具体赋值。
例如:学生记录定义为(学号,姓名,性别,系别,年龄,籍贯)这样的记录型,而(202011120,李小明,男,计算机系,18,广东广州)则是该记录型的一个记录值

  • 数据库系统模式的概念

    模式(schema)是数据库中全体数据的逻辑结构和特征的描述。
    
  • 数据库系统的三级模式结构

    数据库系统的三级模式是指数据库系统是由外模式、模式和内模式三级构成。
    1.模式(schema):也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
    2.外模式(external schema):也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
    3.内模式(internal schema):也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
    
  • 数据库的二级映像功能与数据独立性

    数据库系统的三级模式是数据的三个抽象级别,它把数据的具体组织留给数据库管理系统管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。
    为了能够在系统内部实现这三个抽象层次的联系和转换,数据库管理系统在这个三级模式之间提供了两层映像功能:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
    
    • 外模式/模式映像

       模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。
      
    • 模式/内模式映像

       数据库中只有一个模式,也只有一个内模式,所以模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变时(例如选用了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,
       可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性。
      

数据库系统的组成

  • 硬件平台及数据库

    要有足够大的内存、磁盘或磁盘阵列等设备存放数据库,要求系统由较高的通道能力,以提高数据传送率。
    
  • 软件

    数据库系统的软件主要包括:
    数据库管理系统、支持数据库管理系统运行的操作系统、具有与数据库接口的高级语言及其编译系统,便于开发应用程序、以数据库管理系统为核心的应用开发工具、为特定应用环境开发的数据库应用系统。
    
  • 人员

    DBA、系统分析员和数据库设计人员、应用程序员、用户
    

    这里的用户指最终用户,通过应用系统的用户接口使用数据库。常用的接口方式由浏览器、菜单驱动、表格操作、图形显示、报表书写等。

posted @ 2022-07-03 10:36  EPIHPANY  阅读(515)  评论(0)    收藏  举报