东南大学数据库技术第一章.ppt_第1页
东南大学数据库技术第一章.ppt_第2页
东南大学数据库技术第一章.ppt_第3页
东南大学数据库技术第一章.ppt_第4页
东南大学数据库技术第一章.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数 据 库 技 术 主 讲 人:黄 超 经济管理学院电子商务系 E-MAIL : 电 话 :n课程教材 n数据库教程施伯乐 丁宝康 杨卫东编著,电子工业出版 社 n课程参考书 n数据库系统简明教程王珊著,高等教育出版社 n 数据库系统概念Abraham Silberschatz,Henry F. Korth等著,杨冬青 唐世渭等译,机械工业出版社 n上机时间安排 n成绩考核 n平时作业(15%)+考勤(15%)+期末考试(70%) 第一章 数据库基本概念 第一节 数据管理技术的发展 n人工管理阶段(20世纪50年代中期以前) n主要特点 n数据不保存在计算机内; n不使用专用软件管理数据; n数据的组织方式由程序员自行决定; n数据不具备独立性,与程序一一对应(如下图); 应用程序 1 应用程序 2 应用程序 n . . . 数据集 1 数据集 2 数据集 n . . . 第一节 数据管理技术的发展 n文件系统阶段(20世纪50-60年代后期) n主要特点 n数据以文件形式保存在外部存储器上; n数据的逻辑结构与物理结构独立,由应用程序和操作系 统完成两者间的映射; n文件和程序间存在一一对应的关系,程序必须操作数据 的物理表示细节; n文件组织、形式多样化,文件间缺乏联系,由程序负责 数据间的关联; n文件组织的主要缺点在于数据冗余、数据的不一致和数 据间联系太弱。(见P3例1.1) 第一节 数据管理技术的发展 n数据库系统阶段(20世纪50-60年代后期) n出现的背景: n需求:随着数据管理规模的扩大,数据量剧增,多个应 用共享数据的要求越来越强烈; n硬件状况:出现大容量磁盘,硬件价格持续下降; n软件状况:软件价格上升,软件维护成本增加。为满足 多应用共享数据的需求,出现了专门的数据管理软件系 统数据库管理系统(DBMS)。 n主要特点 n采用复杂的数据模型,用于描述数据本身的结构以及数 据间的联系,这是数据库系统与文件系统的本质区别, 因此数据能够面向整个应用系统,而非单一的应用; 第一节 数据管理技术的发展 n数据的逻辑结构与物理结构独立性高,用户使用简单的 逻辑结构对数据进行操作,不关心数据的物理存储方式 ,简化了应用程序的开发和维护; n数据库管理系统提供数据安全性、完整性、并发、恢复 等数据控制功能,同时为用户提供了统一的访问接口, 用于对数据进行各种操作。 数据库 (DB) 数据库管理系统 (DBMS) 应用程序1 应用程序1 应用程序N . . . 第一节 数据管理技术的发展 人工管理阶段文件系统阶段数据库系统阶段 背 景 应用背景科学计算科学计算、管理大规模管理 硬件背景无直接存取存储设 备 磁盘、磁鼓大容量磁盘 软件背景没有操作系统有文件系统有数据库管理系统 处理方式批处理联机实时处 理、 批处理 联机实时处 理、 分布 处理、批处理 特 点 数据管理者用户(程序员)文件系统数据库管理系统 数据服务对象某一应用程序某一应用程序整个应用系统 数据共享程度无共享,冗余极大共享差,冗余大共享性高,冗余度小 数据的独立性不独立,完全依赖 于程序 独立性差具有高度的物理独立 性和逻辑独立性 数据的结构化无结构记录内有结构, 整体无结构 整体结构化,用数据 模型描述 数据控制能力应用程序控制应用程序控制由DBMS全面控制 第一节 数据管理技术的发展 n数据库系统基本术语 n数据:描述事物的符号记录,具有广义性、语义性、结构 性等特征 n数据库:是长期存储在计算机内、有组织、可共享、统一 管理的相关数据集合。 n数据库管理系统:位于用户和操作系统之间的数据管理软 件,主要功能包括数据定义(定义表、索引等对象)、数 据操纵 (查询、插入、删除等操作)以及数据控制(安全 性、完整性、并发、恢复等)。 n数据库系统:采用了数据库技术的计算机系统,包括数据 库、数据库管理系统、应用系统、数据库管理员、用户等 , 在不引起混淆的情况下简称为数据库。 第二节 数据描述 n什么是数据描述 n数据描述是指如何对数据进行表示,包括概念描述、逻辑 描述和物理描述三个层次。 n概念描述 n概念描述是对现实世界中的客观事物进行描述,常用到以 下几个基本术语: n实体:客观存在并可相互区分的事物。可以是具体的事 物,也可以是抽象的概念或联系; n属性:实体具有的某一特征,一个实体可以由若干个属 性来刻画; n实体集:同类实体的集合,如全体学生构成实体集。 第二节 数据描述 n实体标识符:唯一标识实体的属性或属性集合,也称为 “键”,例如身份证号、学号等; n联系:现实世界中事物内部和事物之间的联系反映到信 息世界,就成了实体内部各属性之间以及实体之间的 联系。两个实体之间的联系有三类: 乘客 乘客 乘客 乘客 座位 座位 座位 1:1 一对一联系 (1:1) 对于实体集对于实体集A A中的每中的每 个实体,实体集个实体,实体集B B中中 至多有一个实体与之至多有一个实体与之 联系,反之亦然。联系,反之亦然。 第二节 数据描述 车间 车间 工人 工人 工人 工人 工人 1:n 一对多联系(1:n) 对于实体集对于实体集A A中的每个实体,中的每个实体, 实体集实体集B B中有多个实体与之联中有多个实体与之联 系;反之,对于实体集系;反之,对于实体集B B中的中的 每个实体,实体集每个实体,实体集A A中至多有中至多有 一个实体与之联系。一个实体与之联系。 多对多联系(m:n) 对于实体集对于实体集A A中的每个实体,实中的每个实体,实 体集体集B B中有多个实体与之联系;中有多个实体与之联系; 反之,对于实体集反之,对于实体集B B中的每个实中的每个实 体,实体集体,实体集A A中中也有多个实体与也有多个实体与 之联系。之联系。 学生 学生 学生 课程 课程 课程 m:n 第二节 数据描述 n逻辑描述 n逻辑描述是对数据的逻辑结构进行表示,常用术语包括: n字段:标记实体属性,也称数据项,是数据库中的最小 操作单位; n记录:字段的有序集合为记录,一般一条记录用于描述 一个实体的相关属性集合; n文件:由同一类记录组成的集合称为文件,文件用于描 述实体集; n关键字:惟一标识每条记录的字段或字段集合。 n物理描述 n物理描述是对数据在存储设备上的存储方式进行表示,包 括物理联系、物理结构等存储细节。 第三节 数据抽象级别 n数据库中的数据模型 n用来描述数据库结构和语义(操作和约束)的工具,从而 对现实世界进行抽象。 n数据模型的三要素 n数据结构:描述系统的静态特性,包括与数据类型有关 的对象(如数据项、记录、表等),以及与数据间的联 系有关的对象,如表示各种约束的对象; n数据操作:描述系统的动态特性,是各种操作的集合, 主要有检索和更新两大类操作。数据模型必须定义这些 操作的确切含义、操作规则和实现语言等。 n完整性约束:是一组完整性约束规则的集合,用来保证 数据库中数据的正确性和一致性。 n数据模型包括四种:概念模型、逻辑模型、外部模型和内 部模型。 第三节 数据抽象级别 n概念模型 n表达用户需求观点的数据库全局逻辑结构模型; n概念模型按用户的观点描述客观世界的信息,不涉及这些 信息在计算机系统中的物理实现; n概念模型是数据库设计人员与用户之间进行交流的工具, 目前常用的是实体关系模型(ER模型)。 学生 学号 性别 姓名 课程 课程号 课程名 教师 编号 性别 姓名 课程成绩 分数 mm n n 讲授 n n 1 1 第三节 数据抽象级别 n逻辑模型 n表达计算机实现观点的数据库全局逻辑结构模型; n逻辑模型从数据库实现的观点出发对数据建模,独立于硬 件实现,但是依赖于软件实现; n逻辑模型是数据库设计人员与应用程序员之间进行交流的 工具,目前常用的包括层次模型、网状模型、关系模型和 对象模型等。 n上页中的的ER图可以转换为如下关系模型: 学生表 (学号#,性别,姓名) 教师表 (编号#,性别,姓名) 课程表 (课程号#,课程名,编号#) 课程成绩(学号# ,课程号# ,分数) 第三节 数据抽象级别 n外部模型 n表达用户使用观点的数据库局部逻辑结构模型; n外部模式是用户与数据库系统的接口,是用户用到的那一 部分数据的描述; n内部模型 n表达数据库物理结构的模型称为内部模型; n内部模型描述数据在磁盘或磁带上的存储方式(文件的结 构)、存储设备(外存的分配)和存取方法(如索引结构 )等; n内部模型与软硬件紧密相关,并与操作系统关系密切。 第三节 数据抽象级别 用户A需求 用户B需求 用户C需求 概 念 模 型 外部模型1外部模型2外部模型3 逻辑模型 内部模型 数据库 模型转换 模型映射 模型映射 用户1用户2用户3 DBMS 操作系统 第三节 数据抽象级别 n数据抽象过程 n即数据库设计过程,一般遵循如下步骤: (1)根据用户需求,设计数据库的概念模型; (2)根据转换规则,把概念模型转换为逻辑模型; (3)根据业务需要,设计不同的外部模式,满足不同用 户对数据操作的要求; (4)根据逻辑要求和业务要求,实现数据库的内部模型 。 其中(1)称为概念设计,(2)与(3)称为逻辑设计,( 4)称为物理设计。 第三节 数据抽象级别 n数据库的三层次结构和数据独立性 n现有的DBMS都采用三级模式结构(即外部模式、逻辑模 式和内部模式),提供两级映象功能,从而保证了数据的 物理独立性和逻辑独立性。 n物理独立性:当数据库的内模式修改时,即物理结构发生 变化时,仅需要改变逻辑模式/内模式间的映射方法即可 ,逻辑模式可以保持尽量不变。 n逻辑独立性:当数据库的逻辑模式发生变化时,如改变记 录的结构,仅需要改变外模式/逻辑模式间的映射方法, 从而保持外模式和应用程序尽量不变。 第四节 数据库管理系统 n数据库管理系统(DBMS)的主要功能 n数据定义:定义数据库的三级模式、映象、约束条件等; n数据操纵:对数据进行查询、插入、修改、删除等; n运行管理:提供并发控制、安全性检查、完整性检查、内 部维护(如索引、数据字典的自动维护)等; n数据组织、存储和管理:数据库通常包含系统数据(如数 据字典)和用户数据两大类,DBMS负责用不同的文件结 构和存取方式分别组织、存储和管理这些数据,以优化系 统性能; n数据库的建立和维护:数据库初始数据的载入、转换、转 存储等,以及数据库系统性能的监控; n数据通信接口:提供与其他软件系统进行通信的功能; 第四节 数据库管理系统 n数据库管理系统(DBMS)的组成 n数据定义语言(DDL)及其翻译处理程序:定义数据库的 三级模式、映象、约束条件等,翻译成内部形式存入数据 字典; n数据操纵语言(DML)及其编译程序:包括 宿主型DML (必须嵌入C等主语言才能执行)和自主型DML(交互式 的命令语言、可单独使用); n数据库运行控制程序:监视数据库的所有操作,包括并发 控制、安全检查、完整性检查、事务管理、日志管理等; n实用程序:用来完成数据库的建立、维护、格式转换、通 信等任务,包括数据初始装入程序、数据转储程序、数据 库恢复程序等。 第四节 数据库管理系统 n数据库管理系统(DBMS)的工作模式 n通用流程:DBMS接受用户的数据请求,将其转换为低级 指令,对数据库进行各种访问操作,并将操作的结果返回 给用户。 n流程举例(以读数据为例) n见下页图 数据库 (DB) 数据库管理系统 (DBMS)应用程序 数据请求 数据 (处理结果) 低级指令 数据 (查询结果) 第四节 数据库管理系统 3. DBMS调入模式,按子模式/模式映象,确定要读的逻辑记录4. DBMS调入内模式,按模式/内模式映象,确定要读的物理记录5. DBMS向OS发出读取所需物理记录的命令6. OS执行读数据的有关操作7. OS将数据从数据库存储区送到系统缓冲区8. DBMS按照子模式/模式映象,导出应用程序A所需的数据记录9. DBMS将数据记录从系统缓冲区送到应用程序A的用户工作区10. DBMS向应用程序A返回反映命令执行情况的状态信息 应用程序X 用户工作区 应用程序A 用户工作区 系统缓冲区 数据库 DBMS OS 外模式A 内模式 逻辑模式 外模式X 用户A用户X 1 2 3 4 5 6 7 8 9 10 1. 应用程序A向DBMS发出读数据命令2. DBMS进行语法语义检查、调入对应子模式、检查权限 第四节 数据库管理系统 nDBMS的实现细节 nDBMS建立在OS之上,调用OS的功能实现;而数据库应 用程序则建立在DBMS之上,调用DBMS的功能实现。根 据应用程序调用DBMS的方式,可将DBMS的实现方法分 为四类: nN方案:DBMS与应用程序融为一体; n2N方案:一个DBMS进程对应一个应用程序进程; nM+N方案:2N方案的改进; nN+1方案:整个系统只有一个DBMS进程; 第四节 数据库管理系统 N方案 DBMS与应用程序融为 一体, DBMS被设计成 一组静态库函数,应用 程序和DBMS模块之间 事先进行静态连接。N个 应用程序的系统有N个进 程。 AP1 DBMS AP2 DBMS AP3 DBMS U1U2 操作系统(OS) 数据库 文件 SGA SGA:共享全局区 U: 非数据库应用 优点:简单,不用考虑AP与DBMS的通信问题; 缺点:各AP进程的代码段无法共享,内存保留了DBMS 代码的多个副本,浪费内存,难以忍受。 第四节 数据库管理系统 2N2N方案方案 一个一个DBMSDBMS进程对应一个应进程对应一个应 用程序进程,每个应用程序用程序进程,每个应用程序 都有一个都有一个DBMSDBMS进程(影子进程(影子 进程)为之服务,另外还有进程)为之服务,另外还有 若干后台进程,负责读写数若干后台进程,负责读写数 据库、监控、写日志等,内据库、监控、写日志等,内 存中只有一个存中只有一个DBMSDBMS代码副代码副 本。本。NN个应用程序的系统大个应用程序的系统大 约约2N2N个进程。个进程。 AP1 DBMS AP2 DBMS AP3 DBMS U1U2 操作系统(OS) 数据库 文件 SGA SGA:共享全局区 U: 非数据库应用 优点:实现了DBMS代码段的多应用程序共享; 缺点:各进程的数据段和堆栈段仍是独立的,内存需求依 然很大;各进程之间的通信开销很大; 第四节 数据库管理系统 M+N方案 2N方案的改进,用M个 DBMS进程为N个应用程 序进程服务(MN), 由专门的分派进程负责 DBMS进程的调度 优点:减少了进程总数,提高了内存利用率,减少了通 信开销(相对于2N方案); 缺点:并没有克服2N方案的本质弱点(各进程的数据段 和堆栈段仍是独立的,内存需求依然很大)。 AP1AP2AP3 U1U2 操作系统(OS) 数据库 文件 SGA SGA:共享全局区 U: 非数据库应用 DBMS进程池 (M个) 第四节 数据库管理系统 N+1方案 整个系统只有一个DBMS 进程,多个应用程序进程 向其发服务请求消息,插 入DBMS进程的消息队列 , DBMS进程从消息队列 取请求消息、执行并返回 结果。 优点:N+1方案是各种方案中较优的; 缺点:实现起来比较复杂、消息通信机制开销较大。 AP1AP2AP3 U1U2 操作系统(OS) 数据库 文件 SGA SGA:共享全局区 U: 非数据库应用 DBMS进程池 第五节 数据库系统 n数据库系统的组成 n数据库:由物理数据库(业务数据库)和描述数据库(数 据字典)组成; n硬件:中央处

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论