导图社区 数据库系统概论5(绪论)
大数据专业必备知识总结—数据库系统概述,内容有绪论、数据库系统概述、数据模型、数据库系统的结构、数据库系统的组成等。
编辑于2022-04-08 01:02:17绪论
绪论
上一层:作为信息系统核心和基础的数据库技术得到越来越广泛的应用。————等,越来越多的应用领域采用数据库技术来存储和处理信息资源。
①从小型单项实务处理系统——大型信息系统;
②从联机事物处理(On-Line Transaction Processing,OLTP)——联机分析处理(On-Line Analysis Processing,OLAP);
③从一般企业管理到——计算机辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、电子政务(e-Government)、电子商务(e-Commerce、地理信息系统(GIS);
1.1数据库系统概述
1.1.1数据库的四个基本概念
(1)数据data
①数据是数据库中存储的基本对象
②定义:描述事物的符号记录称为数据
③数据的含义称为数据的语义 数据与其语义是不可分的
(2)数据库DataBase,DB
①数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合,
数据库中的数据是按一定的数据模型组织、描述和储存,具有较小的冗杂度(redundancy)较高的数据独立性(data independenctly)和易扩展性(scalability)并可为各种用户共享。
③②数据库数据基本特点:永久储存、有组织和可共享。
(3)数据库管理系统Database Management System,DBMS
(1)数据库管理系统位于用户和操作系统之间的一层数据管理软件,数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。
(2)主要功能
①数据定义功能
②数据组织、存储和管理
③数据操纵功能
④数据库的事务管理和运行管理
⑤数据库的建立和维护功能
⑥其他功能:通信给你听,数据转化功能,互访和互操作功能等
(4)数据库系统DataBas e System,DBS
数据库系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DataBase Administrator,DBA)组成的存储、管理、处理和维护数据的系统。
1.1.2数据管理技术的产生和发展
(1)人工管理阶段
①数据不保存
②应用程序管理数据
③数据共享
④数据不具有独立性
(2)文件系统阶段
①数据可以长期保存
②由文件管理系统管理数据
存在缺点:
①数据共享性差,冗杂度大
②数据独立性差
③数据库系统阶段
优点:从文件系统到数据库系统标志着数据管理技术的飞跃
1.1.3数据库系统的特点
(1)数据结构化
①数据库系统实现(整体数据的结构化),这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别
②*所谓“整体”结构化是指数据库中的数据不再仅仅针对某一个应用,而是面向整个组织或企业;不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。
(2)数据的共享性高、冗余度低且易扩充
①数据共享可以大大减少数据冗杂,节约存储空间。数据共享还能够避免数据之间的不相容性与不一致性。
②***使得数据库系统弹性大,易于扩充。
(3)数据独立性高
①物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的。
②逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的。
(4)数据由数据库管理系统统一管理和控制
①数据的安全性保护(security):指保护数据以防止不合法使用造成的数据泄密和破坏。
②数据的完整性检查(integrity):指数据的正确性、有效性和相容性
③并发控制(concurrency):对多用户的兵并发操作加以控制和协调
④数据库恢复(recovery):将数据库从错误状态恢复到某一已知的正确状态(亦称为完整状态或一致状态的功能)
总结:数据库系统是长期储存在计算机内有组织、大量、共享的数据集合。它可以供各种用户共享,具有最小冗杂度和较高的数据独立性。数据库管理系统在数据库建立、运用、维护是对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库进行并发控制,在发生故障后对数据库进行恢复。 数据库系统的出现使信息系统从(以加工数据的程序)为中心转向(围绕共享的数据库)为中心单位新阶段。
1.2数据模型
1.2.1两类数据模型
上:数据模型也是一种模型,它是对现实世界数据特征的抽象。也就是说数据模型是用来描述数据、组织数据和对数据进行操作的。
(1)概念模型:信息模型。。。图1.7概念模型实际上是现实世界到机器世界的一个(中间层次)
(2)逻辑模型和物理模型
1.2.2概念模型
(1)信息世界中的基本概念
①实体(entity):客观存在并可相互区别的实物称为实体。
②属性(attribute):实体所具有的某一特性
③码(key):唯一标识实体的属性集
④实体型(entity type):用实体名及其属性集合来抽象和刻画同类实体,称为实体型。
⑤实体集(entity set):同一实体类型的集合。
⑥联系(relationship):实体内部——实体的各个属性之间的联系;实体之间——不同实体集之间的联系:一对一,一对多,多对多)
(2)概念模型的一种表示方法:实体—联系方法(Entit-Relationship approach),该方法用E-R图来描述现实世界的概念模型,E-R方法也称为E-R模型。
1.2.3数据模型的组成要素
(1)数据结构:描述数据库的组成对象以及对象之间的关系
(2)数据操作:是指对数据库中各种对象(型)的实例高(值)允许执行的操作的集合,包括操作及有关的操作规则。
(3)操作的完整性约束条件:是一组完整性规则。
1.2.4常用的数据模型
(1)层次模型(hierarchical model)
(2)网状模型(network model)
(3)关系模型(relationship model)
(4)面向对象数据模型(object orienteddata model)
(5)对象关系数据模型(object relationship data model)
(6)半结构化数据模型(semi structure data model)
在格式化模型中数据结构的单位是(基本层次联系) 所谓层次(基本层次联系)是指两个记录以及它们之间的一对多(包括一对一)的联系)
1.2.5层次模型
1.层次模型的数据结构(满足如下两个条件的基本层次联系的集合为层次模型)
①有且只有一个结点没有双亲结点,这个结点称为根节点
②根以外的其他结点有且只有一个双亲结点
*层次模型像一颗倒立的树,结点的双亲是唯一的
例:教员学生层次数据库模型,(JYXSCCSJK的一个值)
2.数据层次的数据操纵与完整性约束
(1)数据操纵主要有查询,插入,删除和更新
(2)更新操作时要满足层次 模型的完整性约束条件
①如果没有相应的双亲结点值就不能插入它的子女结点值
②如果删除双亲结点值,则相应的子女结点值也应被同时删除
*双亲结点和相应的子女结点值保持一致
3.*突出优点(一对多)
用层次模型对(一对多)的层次联系的部门描述非常自然,直观,容易理解
4.层次模型的优缺点
(1)优点
①数据结构比较简单清晰
②层次数据库的查询效率高
③层次数据模型提供了良好的完整性支持
(2)缺点
①现实世界中很多联系是非层次的,如结点之间具有多对多联系,不适合用层次模型表示
②如果一个结点有多个双亲结点等,用层次模型表示这类联系就很笨拙,只能通过引入冗余数据(易产生不一致性)或创建非自然的数据结构(引入虚拟结点)来解决。对插入和删除操作的限制比较多,因此应用程序的编写比较复杂
③查询子女结点必须通过双亲结点
④由于结构严密,层次趋于程序化
前言说明
(1)数据库系统中数据的组织方式:(层次模型)
(2)典型代表:IBM公司的IMS(1968.大型商用IBM)
1.2.6网状模型
1.网状模型的数据结构(满足以下两个条件的基本层次联系集合称为网状模型)
(1)允许一个以上的结点无双亲
(2)一个结点可以有多余一个的双亲
*层次模型中子女结点与双亲结点的联系是唯一的, 而网状模型中子女结点与双亲结点的关系可以不唯一
例:学生选课,学生选课数据库的网状数据库模型
2.网状模型的数据操纵与完整性约束
*网状模型一般来说没有层次模型那样严格的完整性约束条件,但具体的网状数据库系统对数据操纵都加了一些限制,提供了一定的完整性约束
*例如,DBGT在模式数据定义语言中提供了定义DBGT数据库完整性的若干概念和语句主要有:
(1)支持记录码的概念,码即唯一标识记录的数据项的集合。例如,学生记录(图1.13)中学号是码,因此数据库中不允许学生记录中学号出现重复值
(2)保持一个联系中双亲记录和子女记录之间是一对多的联系
子主题
3.网状模型的优缺点
(1)优点
①能够较为直接的描述现实世界,如一个结点可以有多个双亲,结点之间可以有种联系
②具有良好的性能,存取效率较高
(2)缺点
①结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于用户最终掌握
②网状模型的DDL ,DML复杂,并且要嵌入某一种高级语言(如COBOL,C)中,用户不易掌握,不容易使用
③用于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节,加重了编写应用程序的负担。
前言说明
*可以表示非树形结构等非层次关系
(1)网状数据库系统采用(网状模型)作为数据的组织方式
(2)典型代表DBTG,亦称CODASYL系统(20时世纪70年代,由数据系统语言研究会(Conference On Data System Language,CODASYL)下属的数据库任务组(Data Base Task Group,DBGT)提出的
(3后来很多人采用DBGT模型或简化的DBGT模型,如:Cullinet software公司的IDMS、Univac公司的DMS1100、Honeywell公司的IDS/2、HP公司的IMAGE等)
1.2.7关系模型
1.关系模型的数据结构
(1)数据结构:是(关系)
(2)逻辑结构:是一张(二维表),由(行)和(列)组 从用户观点来看,关系模型由一组关系组成,每个关系的数据结构是一张规范化的二维表。
(3)关系模型中的一些术语
①关系(relation):一个关系对应通常说的一张表
②元组(tuple):表中的一行即为一个元组
③属性(attribute):表中的一列即为一个属性(给每个属性起一个名称,例:性别)
④码(key):也成为码键。表中的某个属性组,它可以唯一确定一个元组,如学号可以唯一确定一个学生,也就称为本关系的码
⑤域(domain):域是一组具有相同数据类型的值得集合。属性的取值范围来自某个域。如大学生年龄属性的域是(15~45岁),性别的域是(男,女)
⑥分量:元组中的一个属性值
⑦关系模式:对关系的描述,一般表示为:关系名(属性1,属性2,•••,属性n) 例如,上面的关系可描述为:学生(学号,姓名,年龄,性别,系名,年级)
(4)关系模型要求关系必须是规范化的(规范条件中最基本的一项是:关系中的每一个分量必须是不可分的数据项(即也就是说不允许表中还有表)
2.关系模型的数据操纵与约束性条件
①数据操纵(主要包括查询,插入,删除和更新数据)
②约束性条件实体完整性,参照完整性,用户定义的完整性
*关系模型种的数据操作室集合操作(即若干元组的组合,不像格式化模型中那样是单记录的操作方式 ),操作对象和操作结果都是关系,
*关系模型把存取路径向用户隐藏起来,用户只要指出“干什么”或“找什么”,不必详细说明“怎么干”或“怎么找”。从而提高了数据独立性,提高了用户生产率
3.关系模型的优缺点
(1)优点
①关系模式与格式化模型不同,它是建立在严格的数学概念的基础上
②关系模型的概念单一。无论是实体还是实体之间的联系都用关系来表示。对数据的搜索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易动易用。
③关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
(2)缺点
①由于存取路径对用户是隐蔽的,查询效率往往不如格式化模型。为了提高性能,数据库管理系统必须对用户的查询请求进行(优化),因此增加了开发数据库管理系统的难度。
前言说明
(1)数据的组织形式:关系模型
(2)1970,美国IBM公司San Jose研究室的研究员E.F.Codd首次提出关系模型,开创了数据库关系方法和关系数据理论的研究,为数据库技术奠定了理论基础,并于1981年获得ACM图灵奖
1.3数据库系统的结构
1.3.1数据库系统模式的概念
(1)在数据模型中有“型”(type)和“值”(value)的概念
(2)模式是相对稳定的,而实例是相对变动的。(数据不断更新,模式反应的是数据的结构及其联系,而实例反应的是数据库某一时刻的状态)
1.3.2数据库系统的三级模式结构
(1)模式(schema):模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图
(2)外模式(external scheme):外模式也称子模式(subschema),它是数据库用户(包括应用程序员和最终用户)能有看见和使用的局部数据的逻辑结构个特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
(3)内模式(internal schema):内模式也称存储模式(storage schema),一个数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
1.1.3数据库的二级映像功能与数据独立性
(1)外模式/模式映像
当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变
应用程序是一句数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
(2)模式/内模式映像
当数据库的存储结构改变时(例如选用了另一种存储结构)由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变
保证了数据与程序的物理独立设计性,简称数据的物理独立性。
@数据与程序之间的独立性使得数据的定义和描述可以从应用程序中分离出去。另外,
由于数据的存取由数据库管理系统,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。
1.4数据库系统的组成
1.4.1硬件平台及数据库
由于数据库系统的数据量大,加之数据库管理系统丰富的功能使得其自身规模很大, 因此整个数据库系统对硬件资源提出了较高的要求,这些要求是
①要有足够大的内存,存放操作系统、数据库管理系统的核心模块、数据缓冲区和应用程序。
②有足够大的磁盘或磁盘阵列等设备存放数据库,有足够大的磁带(或光盘)做数据备份
③要求系统有较高的通道能力,以提高数据传送率
1.4.2软件
数据库系统的软件主要包括
①数据库管理系统(数据库管理系统是为数据库的建立、使用和维护配置的系统软件)
②支持数据库管理系统运行的操作系统
③具有与数据库接口的高级语言及编译系统
④以数据库管理系统为核心的应用开发工具。(应用开发工具是系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代语言等多种软件工具。它们为数据库系统的开发和应用提供了良好的环境)
⑤为特定应用环境开发的数据库应用系统
1.4.3人员
开发高、管理和使用数据库系统的人员主要包括数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。b不同的人员涉及不同的数据抽象级别,具有不同的数据视图。这些人员分别包括如下职责。
(1)数据库管理员(DataBase Administrator,DBA) 两类共享资源:数据库,数据库管理系统软件,需要专门的管理机构来监督和管理数据库系统。 DBA负责全面管理和控制数据库系统。具体包括职责如下
①决定数据库中的信息内容和结构
②决定数据库的存储结构和存取策略
③定义数据的安全性要求和完整性约束条件
④监控数据库的使用和运行
⑤数据库的改进、重组和重构
(2)系统分析员和数据库设计人员
①系统分析员:负责应用系统的需求分析和规范说明,要和用户及数据库管理员相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。
②数据库设计人员:负责数据库中数据的确定及数据库各级模式的设计。SJKSJRY必须参与用户需求调查和系统分析,然后进行数据库设计。(很多情况下,数据库设计人员由数据库管理人员担任)
(3)应用程序员
①应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装
②无
(4)用户
(1)这里指最终用户(end user)最终用户提高应用系统的用户接口使用数据库。 常见的接口方式有浏览器、菜单驱动、表格操作、图形显示、报表书写等。
(2)最终用户可以分为如下三类
①偶然用户:不常访问数据库,但每次访问数据库时往往需要不同的数据库信息 (一般为企业或组织机构的高中级管理人员)
②简单用户:多数用户是简单用户,主要工作是查询和更新数据库,一般都是提高应用程序员精心设计并具有友好界面的应用程序存取数据库。 (银行的职员,航空公司的机票预订人员,宾馆总台服务员都属于这类用户。)
③复杂用户:(包括工程师,科学家,经济学家,科学技术工作者等具有较高的科学技术背景的人员。) 这类用户一般比较熟悉数据库管理系统的各种功能,能够直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的应用程序接口编制自己的应用程序。
小结
重点掌握:基本概念和基本知识方面
习题(书上有)