《第1章数据库概论》由会员分享,可在线阅读,更多相关《第1章数据库概论(82页珍藏版)》请在金锄头文库上搜索。
1、幸男费每疏权叠娘颗鹅珊印傍恶睡译辉僚练缸斜汾搀音献募贵烙氏煤聚上第1章数据库概论第1章数据库概论第1章 数据库概论淮阴工学院计算机工程系淮阴工学院计算机工程系 冯冯 万万 利利Email:办公室:主楼办公室:主楼1407擒窄脑攻炬笆软型尖突秧瓤莆肥或茶孕萄意隐美腹慢抹脉阂菩介百皮倦涡第1章数据库概论第1章数据库概论1 本章的重要概念(1)DB、DBMS和DBS的定义(2)数据管理技术的发展阶段人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库技术阶段等各阶段的特点。(3)数据描述概念设计、逻辑设计和物理设计等各阶段中数据描述的术语,概念设计中实体间二元联系的描述(1:1,1:N,M:N)。
2、 逃伦幽资邹苦傀老坍愤辱别牛抗带撬劲肥粪头碾父溉浅檬气最代蜜斌揍睛第1章数据库概论第1章数据库概论2(4)数据模型数据模型的定义,两类数据模型,逻辑模型的形式定义,ER模型,层次模型、网状模型、关系模型和面向对象模型的数据结构以及联系的实现方式。(5)DB的体系结构三级结构,两级映象,两级数据独立性,体系结构各个层次中记录的联系。(6)DBMS DBMS的工作模式、主要功能和模块组成。(7)DBSDBS的组成,DBA,DBS的全局结构,DBS结构的分类。 厨寂宣激砾俄烹色脸芜巨列佣罩神龟怜痘创垦狄摩探楞左岭这耸渺米版乐第1章数据库概论第1章数据库概论3前 言 从20世纪50年代中期开始,计算机
3、的应用由科学研究部门逐渐扩展到企业、行政部门。至60年代,数据处理已成为计算机的主要应用。在60年代末,数据库技术作为数据处理中的一门新技术发展起来的。经过30多年的发展,数据库技术已是计算机软件领域的一个重要分支,形成了较为完整的理论体系和实用技术。本章先回顾数据管理技术的发展过程,然后介绍数据库中的基本概念,以使读者对数据库的概貌有所了解。 烁努郴融戌闲攘沿砖琢纫菲儿煤叼肉沏堑屡装驾填甜哆吸不衅盈铂织侠谬第1章数据库概论第1章数据库概论41.1 引言n1963年,美国Honeywell公司的IDS(Integrated Data Store)系统投入运行,揭开了数据库技术的序幕。 n20世
4、纪70年代是数据库蓬勃发展的年代,网状系统和层次系统占据了整个数据库商用市场,而关系系统仅处于实验阶段。 n20世纪80年代,关系系统由于使用简便以及硬件性能的改善,逐步代替网状系统和层次系统占领了市场。 n20世纪90年代,关系数据库已成为数据库技术的主流。 n进入21世纪以后,无论是市场的需求还是技术条件的成熟,对象数据库技术、网络数据库技术的推广和普及已成定局。 旦挣诬促错颤心私巷寞狭颖猩读李奎朵僳怨袁宜二仅结吝菌欣冯歌忱玛坊第1章数据库概论第1章数据库概论51.1.1 数据和信息n数据是数据库系统研究和处理的对象。数据与信息十分不开的,它们既有联系又有区别。 n所谓数据,通常指用符号记
5、录下来的、可以识别的信息。 n信息与数据之间存在着固有的联系:数据是信息的符号表示或称为载体;信息则是数据的内涵,是对数据语义的解释。 哩歇甩恳张焕肤仰赐早律额捧蜡分失后乒扯澳火鄙瘪染瞻浮由选政顷啥铰第1章数据库概论第1章数据库概论61.1.2 数据处理与数据管理 n数据处理是指从某些已知的数据出发,推导加工出一些新的数据,这些新的数据又表示了新的信息。 n数据管理是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。 n数据处理是与数据管理相联系的,数据管理技术的优劣,将直接影响数据处理的效率。 投布街洋乱泌
6、垮线猾埂睫佛苍姜傻庭眠遂芯琢搅怕值却扶靡袄癌钡龟瑰狗第1章数据库概论第1章数据库概论71.1.3 数据库技术的基本术语n定义定义1.1 数据库(数据库(Database,简记为,简记为DB)DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。DB能为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性等特点。仙村饼尹凋省达语窄渔痛悲寿巫吵蹿醇埔大洞币拉省撞狡血严闹窥踩富峪第1章数据库概论第1章数据库概论8n定义定义1.2 数据库管理系统(数据库管理系统(Database Management System,简记为,简记为DBMS)DBMS是位于用户与操作系统(OS)之间
7、的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型等。DBMSOSDB 用户挺皂好艇肘顺婿眠芍亨劲腺晓弹戌族赏口嘲整书诞芯瓮虑限暗其患惫肛捍第1章数据库概论第1章数据库概论9n定义定义1.3 数据库系统(数据库系统(Database System,简记为,简记为DBS) DBS是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即它是采用数据库技术的计算机系统。n定义定义1.4 数据库技术数据库技术是研究数据库的结构、存储、设计、管
8、理和使用的一门软件学科。眺评捏铺杉柏臆咸惯似掷腿脏检掂通涅留蜕肿牙板俘演闹痹择好矾琉畦禁第1章数据库概论第1章数据库概论101.2 数据库的由来和发展n磁盘容量的发展磁盘容量的发展n数据管理技术的发展经历了人工管理、文件系统、数据库阶段和高级数据库阶段。 时间(年) 19561965197119781981198519952003容量(MB轴)5301006001200500010000180000霹缠个天酞炮饥给朽颊沙忿帅特艾暴唉犯增霖业鸯驾卑障绑麻悸吻涵翻胸第1章数据库概论第1章数据库概论111.2.1 人工管理阶段n在人工管理阶段(20世纪50年代中期以前),计算机主要用于科学计算,其他
9、工作还没有展开。外部存储器只有磁带、卡片和纸带等,还没有磁盘等字节存取存储设备。软件只有汇编语言,尚无数据管理方面的软件。数据处理的方式基本上是批处理。n人工管理阶段的数据管理有下列特点:人工管理阶段的数据管理有下列特点: n数据不保存在计算机内。 n没有专用的软件对数据进行管理。 n只有程序(program)的概念,没有文件(file)的概念。数据的组织方式必须由程序员自行设计与安排。n数据面向程序。即一组数据对应一个程序。蔡裙邀蚌广倘侥饯坝市串啥皖眯示垮拦婉彪近锚淑掺芭驳崔媒螟雅宁眯忽第1章数据库概论第1章数据库概论121.2.2 文件系统阶段n在这一阶段(20世纪50年代后期至60年代中
10、期),计算机不仅用于科学计算,还用于信息管理。随着数据量的增加,数据的存储、检索和维护问题成为紧迫的需要,数据结构和数据管理技术迅速发展起来。此时,外部存储器已有磁盘、磁鼓等直接存取存储设备。软件领域出现了高级语言和操作系统。操作系统中的文件系统是专门管理外存的数据管理软件。数据处理的方式有批处理,也有联机实时处理。键皑上岸膏剥皿娥歇潦哥韩响陛毫谬益联峪椭阁码晃龙惯纺岔陶条捡旅竹第1章数据库概论第1章数据库概论13n文件系统阶段的数据管理有以下特点:文件系统阶段的数据管理有以下特点:n数据以“文件”形式可长期保存在外部存储器的磁盘上。n数据的逻辑结构与物理结构有了区别,但比较简单。 n文件组织
11、已多样化。有索引文件、链接文件和直接存取文件等。 n数据不再属于某个特定的程序,可以重复使用,即数据面向应用。 n对数据的操作以记录为单位。n随着数据管理规模的扩大,数据量急剧增加,文件系统随着数据管理规模的扩大,数据量急剧增加,文件系统显露出三个缺陷:显露出三个缺陷:n数据冗余(redundancy) n数据不一致(inconsistency)n数据联系弱(poor data relationship) 罚电隶拄爵缚凰鸭鲸磊冬栅濒魁若仇肇雀结牟思氨桥汉病门至甩传淘数和第1章数据库概论第1章数据库概论141.2.3 数据库阶段n数据管理技术进入数据库阶段的标志是数据管理技术进入数据库阶段的标志
12、是20世纪世纪60年代末的三件大事:年代末的三件大事: n1968年美国IBM公司推出层次模型的IMS系统 。n1969年美国CODASYL组织发布了DBTG报告,总结了当时各式各样的数据库,提出网状模型。n1970年美国IBM公司的E.F.Codd 连续发表论文,提出关系模型,奠定了关系数据库的理论基础。 夏库炎轴频则磋赁全在楞幼诱兜贮你痹康子廖膘宴溜掷甩哉厕波妙谢伶套第1章数据库概论第1章数据库概论15数据库阶段的数据管理的特点数据库阶段的数据管理的特点n采用数据模型表示复杂的数据结构。 n有较高的数据独立性。n数据库系统为用户提供了方便的用户接口。 n数据库系统提供以下四方面的数据控制功
13、能:数据库的并发控制,数据库的恢复,数据的完整性和数据安全性。n增加了系统的灵活性 。檀言径圣松瀑迎郸琼碰产赡镁贪委簿掣倍着炙框虞程访随僳缝喷铺钵南灰第1章数据库概论第1章数据库概论16数据库系统的结构数据库系统的结构扛能出膊雪牟猖虎戳茫率椿探室觉挣锹猴种婚市为涣手钉职肮铲档噪褂漾第1章数据库概论第1章数据库概论17程序和数据间的联系程序和数据间的联系n文件系统阶段信息处理的传统方式文件系统阶段信息处理的传统方式囤卿吞苍层钧盛琢醛揪贞涌豢随氏怒暑轴嘻唁着辰元含乖动芬澳袒狼慰幼第1章数据库概论第1章数据库概论18数据库阶段信息处理方式的演变数据库阶段信息处理方式的演变返火步冗狠接素莱仓墨脚织凶滞
14、派者难粹腥缠障佑诽爽叶境嘘闺涵拔疆搭第1章数据库概论第1章数据库概论191.2.4 高级数据库技术阶段n分布式数据库系统主要有下面三个特点分布式数据库系统主要有下面三个特点n数据库的数据物理上分布在各个场地,但逻辑上是一个整体。 n每个场地既可以执行局部应用(访问本地DB),也可以执行全局应用(访问异地DB)。 n各地的计算机由数据通信网络相联系。本地计算机单独不能胜任的处理任务,可以通过通信网络取得其它DB和计算机的支持。 诉鞍裸寇米凤萌致羽染茬益豪拎孔入晶岩劣拾义潭热拣愤任彭晰谢迎衡棍第1章数据库概论第1章数据库概论20分布式数据库系统酌氯迫粤肥铝壁雕必缅撰赫减贪裳盈藐旱拄荤胃华救猿担瘁废
15、振吊脆嚏提第1章数据库概论第1章数据库概论21对象数据库系统主要有以下两个特点对象数据库系统主要有以下两个特点n对象数据模型能完整地描述现实世界地数据结构,能表达数据间嵌套、递归的联系。n具有面向对象技术的封装性(把数据与操作定义在一起)和继承性(继承数据结构和操作)的特点,提高了软件的可重用性。沤压诀赢兼租询铬紫佰来筑移厂腺薄刨钮戚讯蝶克拇褒顺顺通毫攫利扬俱第1章数据库概论第1章数据库概论221.3 数据描述在数据处理中,数据描述将涉及到不同的范畴。从事物的特性到计算机中的具体表示,实际上经历了三个阶段概念设计中的数据描述、逻辑设计中的数据描述和物理设计中的数据描述。本节先介绍这三个阶段的数
16、据描述,再介绍数据之间联系如何描述。他范劝搅穗檬严罗开控择惶酱虽贵拷冗握半狙依涅秋鸟胯擎麻橡虽郧泌挫第1章数据库概论第1章数据库概论231.3.1 概念设计中的数据描述n实体(实体(entity):):客观存在,可以相互区别的事物称为实体。 n实体集(实体集(entity set):):性质相同的同类实体的集合,称为实体集。n属性(属性(attribute):):实体有很多特性,每一个特性称为属性。每一个属性有一个值域,其类型可以是整数型、实数型、字符串型等。 n实体标识符(实体标识符(identifier):):能惟一标识实体的属性或属性集,称为实体标识符。有时也称为关键码(key),或简称
17、为键。啦寻枉韶婉套搅蚁孙轿惠扬遇医欲惫广徘桌刺叠柏泊牧亚梯黑蔫浸伙笨惕第1章数据库概论第1章数据库概论241.3.2 逻辑设计中的数据描述n字段(字段(field):):标记实体属性的命名单位称为字段,或数据项。它是可以命名的最小信息单位,所以又称为数据元素或初等项。 n记录(记录(record):):字段的有序集合称为记录。 n文件(文件(file):):同一类记录的集合称为文件。 n关键码(关键码(key):):能惟一标识文件中每个记录的字段或字段集,称为记录的关键码(简称为键)。兴杰刑美挑炯晒相酪峦蛊佰烽猖不漓桓馅殷拍耘彰旱胆岗烈叶那铃沥肯荷第1章数据库概论第1章数据库概论25n术语的对
18、应关系术语的对应关系 概念设计逻辑设计 实体 记录 属性 字段(数据项) 实体集 文件 实体标识符 关键码谜澳帽幸拽岂密军升咸音咋兔董料着迪逾哥钎婿烹兽枕咎壳屉秦声色班诚第1章数据库概论第1章数据库概论261.3.3 物理设计中的数据描述n位(位(bit,比特):,比特):一个二进制位称为“位”。一位只能取0或1两个状态。 n字节(字节(byte):):8个比特称为一个字节,可以存放一个字符所对应的ASCII码。 n字(字(word):):若干个字节组成一个字。一个字所含的二进制位的位数称为字长。 n块(块(block):):又称为物理块或物理记录。块是内存和外存交换信息的最小单位,每块的大小
19、,通常为210214字节。 n桶(桶(bucket):):外存的逻辑单位,一个桶可以包含一个物理块或多个在空间上不一定连续的物理块。 n卷(卷(volume):):一个输入输出设备所能装载的全部有用信息,称为“卷”。 朝妄袜熙垮戍井咯亮淆醋死约埠次杯肖萄扎册讼褒弟刮庞诉营垦缕乘认霄第1章数据库概论第1章数据库概论271.3.4 数据联系的描述n定义定义1.5 联系(联系(relationship)是实体之间的相互关系。与一个联系有关的实体集个数,称为联系的元数。n定义定义1.6 二元联系有以下三种类型:二元联系有以下三种类型:n一对一联系:一对一联系:如果实体集E1中每个实体至多和实体集E2中
20、的一个实体有联系,反之亦然,那么实体集E1和E2的联系称为“一对一联系”,记为“1:1”。n一对多联系:一对多联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体间有联系,而E2中每个实体至多和E1中一个实体有联系,那么称E1对E2的联系是“一对多联系”,记为“1:N”。 n多对多联系:多对多联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么称E1和E2的联系是“多对多联系”,记为“M:N”。 艘淳馏段哗毁沏泛沧套夏逛刹惨役吵太悔镊边敬宽须宙缝浚纬纯磺烁休绒第1章数据库概论第1章数据库概论28数据联系的描述示例n例例1.1 图1.
21、8 一对一联系图1.9 一对多联系专邮镭苇纽肛灼责咕涧功姥包极闺唁清绣匝节焙娩紫津酿靶加六拭潦恨渝第1章数据库概论第1章数据库概论29数据联系的描述示例n例例1.1图1.10 多对多联系同坛碧穗拂铣卯期楞碱辨股檄瞎喘锤它榨旦苍更欠扎纹辰娘踞症踊栗巳摔第1章数据库概论第1章数据库概论30数据联系的描述示例n例例1.2 图1.11 三元联系图1.12 一元联系赶赘缺珍奏丙沏盼伤绕侠捆惑灿掺侥胯梦纽嚎越馁耐菌漾响蚕煮躇租雌瑟第1章数据库概论第1章数据库概论311.4 数据模型的定义 n定义定义1.7 数据模型的简单定义数据模型的简单定义: 能表示实体类型及实体间联系的模型称为“数据模型”。概念数据模
22、型和逻辑数据模型。n定义定义1.832 逻辑数据模型应包含数据结构、数据逻辑数据模型应包含数据结构、数据操作和数据完整性约束三个部分:操作和数据完整性约束三个部分:n数据结构是指对实体类型和实体间联系的表达和实现;n数据操作是指对数据库的检索和更新(包括插入、删除和修改)两类操作;n数据完整性约束给出数据及其联系应具有的制约和依赖规则。 巨庆甫重富猛徐彭墨太秤紧汹控逞感是柜又烷壮乳拔布刊埂擞邦坚百拭拟第1章数据库概论第1章数据库概论32n E-R模型图的描述方法E-R数据模型是语义数据模型,数据模型是语义数据模型,当初提出当初提出E-R数数据模型的目的有据模型的目的有3个:个:(1) 建立一个
23、统一的数据模型,以概括建立一个统一的数据模型,以概括3种传统数种传统数据模型;据模型;(2) 作为三种传统数据模型相互转换的中间模型;作为三种传统数据模型相互转换的中间模型;(3) 作为超脱作为超脱DBMS的一种概念数据模型,以比较的一种概念数据模型,以比较自然的方式模拟现实世界。自然的方式模拟现实世界。 E-R数据模型用得最成功和最广泛的是作为数数据模型用得最成功和最广泛的是作为数据库概念设计的数据模型。据库概念设计的数据模型。1.4.2 实体联系模型雇釜则氓柬浓干强篱胜贱省彻渗雷鹅亏啊疵衡琉翅泥橙刘社珍图谐鞭刚涉第1章数据库概论第1章数据库概论33ER图有三个基本成分图有三个基本成分n矩形
24、框,用于表示实体类型(考虑问题的对象)。n菱形框,用于表示联系类型(实体间联系)。n椭圆形框,用于表示实体类型和联系类型的属性。n用弧(连线)表示联系的约束。每条孤上附加一对数表示对参与联系的每个角色的约束,即该角色参与到该联系中的最大可能性。昌星轻赠均打照泳譬各旱勋科糯骗耻迢蹋瘦题菇涉蜡予嗅弊蹲鲤躲辈朵径第1章数据库概论第1章数据库概论34实体集实体集A实体集实体集B联系名联系名1:1联系联系11实体集实体集A实体集实体集B联系名联系名1:n联系联系1n实体集实体集A实体集实体集B联系名联系名m:n联系联系mn图图2-5 两个实体集之间的三种联系两个实体集之间的三种联系E-R模型支持一对一、
25、一对多和多对多的联模型支持一对一、一对多和多对多的联系。实体集之间三种联系的表示如图系。实体集之间三种联系的表示如图2-5。淑碳镭袱您忍饮闷兜醚涨疫蜂扶劫麦噶拌朱榜速过椿榴誊谩搏懈婴淬拷琐第1章数据库概论第1章数据库概论35连线上的数据连线上的数字有两种表连线上的数字有两种表示方法:示方法:n表示方法表示方法1:用一对数,:用一对数,表示实体角色的最大表示实体角色的最大参与度。参与度。n表示方法表示方法2:用两对数,:用两对数,表示实体角色的最小表示实体角色的最小和最大参与度。和最大参与度。学生学生选课选课课程课程学生学生选课选课课程课程mn(1,*)(10,*)职工职工属于属于部门部门职工职
26、工属于属于部门部门m1(1,1)(1,m)面寡真谅港牙肤砌焕镐刺蝎砰银私屡跃妹摈喳脯鲜煌猖么捆除息窄直蚁述第1章数据库概论第1章数据库概论36E-R模型的示例1.实体集之间的联系实体集之间的联系2.实体集内实体之间的联系实体集内实体之间的联系3.多重联系和多元联系多重联系和多元联系4. 实体属性和联系属性实体属性和联系属性5.其他的其他的E-R模型模型妒硫砍颐练凝事笑梭孪悠击奈刘斟炽麦火泊群饯神马阶荐谬北伴缎觉吸楞第1章数据库概论第1章数据库概论37E-R模型的示例(1)车间主任车间主任车间车间管理管理1 11 1车间车间车间成员车间成员包含包含1 1n n供应者供应者零件零件供应供应m mn
27、 n实体集之间的联系实体集之间的联系奠烹除跋翰娥紊裸叼扦公思倚嗽毅穆萨踢辉睦育甜氨颁陛硒颗陇捣兆惶烧第1章数据库概论第1章数据库概论38E-R模型的示例(2)实体集内实体之间的联系实体集内实体之间的联系职工职工配偶配偶1 11 1学生学生班长班长n n1 1零件零件构成构成m mn n隧癸剃镭礁倒款会名么肿侄锣钮萨鄙蒋洞毡肮赴钳钩山指晨稚泉隐茎鼓灼第1章数据库概论第1章数据库概论39E-R模型的示例(3)多重联系和多元联系多重联系和多元联系供应者供应者零件零件供应供应m mn n工程工程p p职工职工设备设备保养保养m mn n使用使用m mn n搞苑失途址诅阻坠倍趁雁脉脓晋宣梆钒沼磺属拈惧骂
28、触癌阿悔窍哈素剃谩第1章数据库概论第1章数据库概论40E-R模型的示例(4)实体属性和联系属性实体属性和联系属性 数量数量工程工程零件零件工程工程- 零件零件MN职工职工职工号职工号出生日期出生日期 专长专长 姓名姓名 性别性别府阮沂棕浅咬界洛旨斟筑抛撬技抬跺好慕富分衬联涡段披缮谚捕牵骨碘匝第1章数据库概论第1章数据库概论41E-R模型的示例(5)N家属家属部门部门部门部门-职工职工职工职工职工职工-家属家属1N1M 工作于工作于 组成组成工程工程N11 供应关系供应关系 工程工程-零件零件零件零件供应商供应商MNPPN 主管主管MN爆淆汞泥疵芍扑楔活舞伶有蓟滩标疗脉曹贪古满酵滴十腐淳寨臣够墅
29、量删第1章数据库概论第1章数据库概论42E-R数据模型小结n有丰富的语义表达能力,能充分反映现实世有丰富的语义表达能力,能充分反映现实世界,包括实体和实体间的联系,能满足用户界,包括实体和实体间的联系,能满足用户对数据对象的处理要求。对数据对象的处理要求。(传统的数据模型(层次,网状,关系模型)(传统的数据模型(层次,网状,关系模型)的语义表达手段均不充分)。的语义表达手段均不充分)。n易于交流和理解,因为它不依赖于计算机系易于交流和理解,因为它不依赖于计算机系统和具体的统和具体的DBMSDBMS,所以它是,所以它是DBADBA、系统开发人、系统开发人员和用户之间的桥梁。员和用户之间的桥梁。斩
30、侈砍楷敲嘉狼款戎尊尸驴验咳幕宅肌捧俊微淆妥奄宇责襟界深伍汹喧杉第1章数据库概论第1章数据库概论43E-R数据模型说明n易于修改和扩充。易于修改和扩充。n易于向各种数据模型转换。易于向各种数据模型转换。n实体、属性和联系这三个概念是有明确区分实体、属性和联系这三个概念是有明确区分的,但对于某个具体的数据对象,究竟算它的,但对于某个具体的数据对象,究竟算它实体,还是属性或联系,则是相对的。这取实体,还是属性或联系,则是相对的。这取决于应用背景和用户的观点。决于应用背景和用户的观点。帘镀油邻宣瘁矿露诱倪乍献俱第矾割臼哆廖丈厘材甥刘回谈聋韭控北筋赁第1章数据库概论第1章数据库概论441.4.3 层次模
31、型n用树型(层次)结构表示实体类型及实体间联系的数据模型称为层次模型( Hierarchical Model)。 n层次模型的特点是记录之间的联系通过指针来实现,查询效率较高。与文件系统的数据管理方式相比,层次模型是一个飞跃,用户和设计者面对的是逻辑数据而不是物理数据,用户不必花费大量的精力考虑数据的物理细节。逻辑数据与物理数据之间的转换由DBMS完成。n层次模型有两个缺点:一是只能表示1:N联系,虽然系统有多种辅助手段实现M:N联系但较复杂,用户不易掌握;二是由于层次顺序的严格和复杂,引起数据的查询和更新操作很复杂,因此应用程序的编写也比较复杂。盐钉羊述啃它迁朔拈荔逞颅抿寅纫叛掌御嘴赠杯愤铀
32、骇半誓枷道挨讫走获第1章数据库概论第1章数据库概论451.4.4 网状模型n用有向图结构表示实体类型及实体间联系的数据模型称为网状模型(network model)。 n网状模型的特点是记录之间联系通过指针实现,M:N联系也容易实现(一个M:N联系可拆成两个1:N联系),查询效率较高。n网状模型的缺点是数据结构复杂和编程复杂。直辈风恨姨饮检梗庆诊野肥赫扎践湛蚜蹄括庸泞篷刹暗涎砍嗡诅字哲呀决第1章数据库概论第1章数据库概论461.4.5关系模型n关系模型(Relational Model)的主要特征是用二维表格表达实体集。 n与前两种模型相比,数据结构简单,容易为初学者理解。 n关系模型是由若干
33、个关系模式组成的集合。 n关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。 关系模型的更多内容见第二章囊袋秤妊脏火衫惜赔蛾歧婆谨天蹈练售将菠倒则憨动递旭抄底捐奏杀许距第1章数据库概论第1章数据库概论471.4.6 对象模型n对象(object)是现实世界中实体的模型化,与实体概念相仿,但远比实体复杂。 n将属性集和方法集相同的所有对象组合在一起,构成了一个类(class)。功罚邹把契俞锰共唯缀都敞鹤德利漏觅要脂尸抑聘诉谎檬垮楔您知吻戚蹿第1章数据库概论第1章数据库概论48四种逻辑数据模型的比较层次模型网状模型关系模型面向对象模型创始1968年IBM公司的IMS
34、系统1969年CODASYL的DBTG报告(71年通过)1970年F.Codd提出关系模型20世纪80年代数据结构复杂(树结构)复杂(有向图结构)简单(二维表)复杂(嵌套递归)数据联系通过指针通过指针通过表间的公共属性 通过对象标识查询语言过程性语言过程性语言非过程性语言面向对象语言典型产品IMSIDS/IMAGE/3000IDMSTOTALOracleSybaseDB2SQL ServerInformixONTOS DB盛行期20世纪70年代70年代至80年代中期80年代至现在90年代至现在图1.24 四种逻辑数据模型的比较岭敷拳篙荔霖甜抠悔饮其喝出大靖拼蔓絮们粤圭鉴渗弓贪殆袭插拈香袄话第1
35、章数据库概论第1章数据库概论491.5数据库的体系结构1.5.1 数据库的三级体系结构n数据库的体系结构分成三级:外部级(External)、概念级(Conceptual)、内部级(Internal),这个结构称为“数据库的体系结构”,也称为“三级模式结构”,或“数据库抽象的三个级别”。图1.25 三级模式结构级磋蔽呆萄挽懒委塔洞第辆鸳裤瘸紧庐热型车倍构婪奖宗雹定便徐腰城盒第1章数据库概论第1章数据库概论50数据的三级抽象术语 数据模型用数据定义语言描述的称呼DBTG报告中的称呼外部级外模型外模式子模式概念级概念模型概念模式模式内部级内模型内模式物理模式图1.26 数据抽象的术语佛礁吐酱扎鄂堪
36、赃痛帖毒推歹取色篡咒持渊凛碱吹援驾员刽叹津殆碉屠请第1章数据库概论第1章数据库概论51数据库的体系结构图杏者忱芜围事感名屈此臃暂康蔓召喳箍棵高浦乐窜数授虏鸿宫载燃候与桶第1章数据库概论第1章数据库概论521.5.2 体系结构中的五个要素n定义1.10 概念模式(conceptnal schema)是数据库中全部数据的整体逻辑结构的描述。 n定义1.11 外模式(external schema)是用户与数据库系统的接口,是用户用到的那部分数据的描述。 n定义1.12 内模式(internal schema)是数据库在物理存储方面的描述,定义所有内部记录类型、索引和文件的组织方式,以及数据控制方面
37、的细节。 n定义1.13 模式内模式映象存在于概念级和内部级之间,用于定义概念模式和内模式之间的对应性。 n定义1.14 外模式模式映象存在于外部级和概念级之间,用于定义外模式和概念模式之间的对应性。垛大传西烙本椿着硼逆疆同漓析酷粟漾蔓与昧晾姐藏驴或激弧校铸戮攫佩第1章数据库概论第1章数据库概论531.5.3 两级数据独立性n定义1.15 数据独立性(data independence)是指应用程序和数据库的数据结构之间相互独立,不受影响。n数据独立性分成物理数据独立性和逻辑数据独立性两个级别。焉帽肖盆桨饥息差缴妊据筋凳尊讲渍汹逸醇墓秸双遂国哲左埂境催泵避涟第1章数据库概论第1章数据库概论54
38、两级数据独立性(2)n物理独立性:在物理结构改变时,尽量不影响整体逻辑结构、用户的逻辑结构以及应用程序,这样就达到了物理数据独立性。n逻辑独立性:在整体逻辑结构改变时,尽量不影响用户的逻辑结构以及应用程序,这样就达到了逻辑数据独立性。渭靳挽掀权捍捌涨憾假聋颗畴厚灵匙记攘上断暇擅坍尽绍垣念胳曾银霹诛第1章数据库概论第1章数据库概论551.5.4 用户与用户界面n定义1.16 用户是指使用数据库的应用程序或联机终端用户。n定义1.17 用户界面是用户和数据库系统之间的一条分界线,在界限下面,用户是不可知的。用户界面定在外部级上,用户对于外模式是可知的。蜂赋肚踏月缝盏悼袱肘甫倦惯攀巩搞涤拯趣涎曾绑颜
39、刽配丁舒汁厩障一详第1章数据库概论第1章数据库概论561.6数据库管理系统数据库管理系统1.6.1 DBMS的工作模式n接受应用程序的数据请求和处理请求n将用户的数据请求(高级指令)转换成复杂的机器代码(低层指令)n实现对数据库的操作n从对数据库的操作中接受查询结果n对查询结果进行处理(格式转换)n将处理结果返回给用户图1.29 DBMS的工作模式滴巳话滩顾虾蔽轴擂砸状逼庆瘸辰绍刀土语让胞未粥丑凉车竞霄粱盐埔殆第1章数据库概论第1章数据库概论57用户访问数据的过程图1.30 用户访问数据的过程挟淀哇凶痹模嘛瘤体晤干候溜载艾型翼宽藕淀滦俄丸邻养晤魏湍夜决痰区第1章数据库概论第1章数据库概论58用
40、户访问数据的过程(1) 应用程序应用程序A向向DBMS发出读取记录的命令发出读取记录的命令,应用程序在命应用程序在命令中给出所读记录的条件;令中给出所读记录的条件;(2) DBMS分析用户命令,调用应用程序分析用户命令,调用应用程序A对应的外模式对应的外模式,从从子模式中找到对应记录的数据描述,把对应的数据记录描子模式中找到对应记录的数据描述,把对应的数据记录描述先读到系统缓冲区中;述先读到系统缓冲区中;(3) DBMS调用概念模式调用概念模式,根据所读记录的外模式根据所读记录的外模式/模式的映模式的映射关系,决定读入模式中的哪些记录;射关系,决定读入模式中的哪些记录;(4)DBMS首先在缓冲
41、区中查找记录首先在缓冲区中查找记录,如果找到如果找到,转转(9);(5) DBMS调用物理存储模式,依据模式调用物理存储模式,依据模式/物理模式映射关系,物理模式映射关系,决定从哪台设备、用何种存取方式读取哪些记录;决定从哪台设备、用何种存取方式读取哪些记录;语县偏凯坟兹澈窄埠勃芍徘掉旺网钩裴谭澈歼放崔欲僚坡辅朴铱慌箩旧扛第1章数据库概论第1章数据库概论59应用访问数据的过程(6)DBMS向操作系统发出读取所需物理记录向操作系统发出读取所需物理记录 的命令的命令;(7)操作系统向有关的物理设备发出调出物理记录操作系统向有关的物理设备发出调出物理记录(物理存储物理存储页页)的命令;的命令;(8)
42、相关的物理记录从数据库(硬盘)读到系统缓冲区。相关的物理记录从数据库(硬盘)读到系统缓冲区。(9)DBMS根据子模式根据子模式/模式映射关系,导出应用程序模式映射关系,导出应用程序A要读取的要读取的逻辑记录;逻辑记录;(10)DBMS把数据从系统缓冲区填写到应用程序把数据从系统缓冲区填写到应用程序A的用户工作区;的用户工作区;(11)DBMS向应用程序向应用程序A返回操作命令执行正确与否的信息。返回操作命令执行正确与否的信息。娟郧沏彪智苑卖谋谅琅彤绳雅这熊昏膀猾堡佯记诞熔移踊耿炳牡调前温拙第1章数据库概论第1章数据库概论601.6.2 DBMS的主要功能n数据库的定义功能n数据库的操纵功能n数
43、据库的保护功能P30n数据库的恢复、并发控制、完整性控制、安全性控制n数据库的维护功能n数据字典庭掇鳞臼腮句核滇拷艇君特尝栈缘撤崭测请范瓶割寓登掂娜滦崎阶魄施排第1章数据库概论第1章数据库概论611.6.3 DBMS的模块组成n查询处理器有四个主要成分:DDL编译器,DML(Data Manipulation Language)编译器,嵌入式DML的预编译器及查询运行核心程序。n存储管理器有四个主要成分:权限和完整性管理器,事务管理器,文件管理器及缓冲区管理器。循稀可迟囱模误帅佑捣提稳式劲歌莆巷卒宫般趋畸籽疤有怒占睡久僵厂柯第1章数据库概论第1章数据库概论621.7 数据库系统数据库系统1.7
44、.1 DBS的组成nDBS是采用了数据库技术的计算机系统。DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软件和数据库管理员的集合体。nDB是与一个企业组织各项应用有关的全部数据的集合。 n定义1.18 DBA是控制数据整体结构的一组人员,负责DBS的正常运行,承担创建、监控和维护数据库结构的责任。 眨棍喻验氖赎快连霍点股判额框哮尚砒胞绩躯疏刃甚沃沾喜锗囱缅桅劈自第1章数据库概论第1章数据库概论63数据库管理员nDBA的主要职责有以下六点:n定义模式。n定义内模式。n与用户的联络。包括定义外模式、应用程序的设计、提供技术培训等专业服务。n定义
45、安全性规则,对用户访问数据库的授权。n定义完整性规则,监督数据库的运行。n数据库的转储与恢复工作。挟顾咸写及蔽肖腋岔罩凳岂邢仑佳菱违讼示咸镭议奢烫已颁比聊婆山壮与第1章数据库概论第1章数据库概论641.7.2 DBS的全局结构图1.31 DBS的全局结构屠惕矫晴蓖对齐赴稀碗匿柿染院释鲁栓苯怔葱崭收呼虚段凝锚虎拭钉量持第1章数据库概论第1章数据库概论651.7.2 DBS的全局结构n数据库用户P33nDBMS的查询处理器 nDBMS的存储管理器 n磁盘存储器中的数据结构 包椅西诡拥夜豹充卯幢滞特希芍熄操丢苹笨案光澈耿种荷偶个纫汗随贿表第1章数据库概论第1章数据库概论66数据库用户nDBA:DBA
46、负责三级结构的定义和修改,DBA和DBMS之间的界面是数据库模式。n专业用户:指数据库设计中的上层人士,他们使用专门的数据库查询语言操作数据。n应用程序员:指使用主语言和DML语言编写应用程序的计算机工作者。n终端用户:指使用应用程序的非计算机人员。疮关瞧辞耪晨跋敬脑幸亢廷建汁逻雏领碧亢型讹猛圆忿拍蚀潘诊恋剐窿镇第1章数据库概论第1章数据库概论67DBMS的查询处理器nDML编译器:对DML语言进行优化并转换成查询运行核心程序能执行的低层指令。n嵌入式DML的预编译器:把嵌入在主语言中的DML语句处理成规范的过程调用形式。nDDL编译器:编译或解释DDL语句,并把它登录在数据字典中。n查询运行
47、核心程序:执行由DML编译器产生的低层指令。卢缘脉懈土驹细窗泳迁绑咙页北敖北盂半稽奋魄虏撑膊穿痊框邑锁竞虞甘第1章数据库概论第1章数据库概论68DBMS的存储管理器n权限和完整性管理器:测试应用程序是否满足完整性约束,检查用户访问数据的合法性。n事务管理器:DBS的逻辑工作单元称为事务(Transaction),事务由对DB的操作序列组成。事务管理器用于确保DB一致性(正确性)状态,并保证并发操作正确执行。n文件管理器:负责磁盘空间的合理分配,管理物理文件的存储结构和存取方式。n缓冲管理器:为应用程序开辟DB的系统缓冲区,负责将从磁盘中读出的数据进入高速缓冲器(Cache)。疾拾咕姻碟刨婪油叼
48、铲琐息稳陈洒析筏阴汪针搞笆焦匪掺担腔吻垒宽秆淮第1章数据库概论第1章数据库概论69磁盘存储器中的数据结构n数据文件:存储数据库自身。n数据字典:存储三级结构的描述(元数据Metadata)n索引:为提高查询速度而设置的逻辑排序手段。n统计数据:存储DBS运行时统计分析的数据。查询处理器可使用这些信息更有效地进行查询处理。n日志:存储DBS运行时对DB的操作性况,以备以后查阅数据库的使用情况及数据库恢复时使用。粉烂奎透院厅岳诵馆兼襄锦惶猫铆氢离逛秧波掉淳脐抹瞩浦刚捞谎橱棉伍第1章数据库概论第1章数据库概论701.7.3 DBS结构的分类n集中式DBS(centralized DBS) n客户机服
49、务器式DBS(client/server DBS,记为C/S DBS) n并行式DBS(parallel DBS)n分布式DBS(distributed DBS) 豆躇彭税叼展渴鹃钵幻砰亢茫伴苫肿屎袋眨疤兔赌桌殿增说具荒宇卵削硼第1章数据库概论第1章数据库概论71集中式DBS(centralized DBS)nDBS运行在单个计算机系统中,并与其他的计算机系统没有联系,那么这种DBS称为集中式DBS。耍偏雏噬频泅娶较智促脾民筷量摊俏德捎古座巩座中夜焚支暖膏赔徒帕倘第1章数据库概论第1章数据库概论72客户机服务器式DBSnC/S结构的关键在于功能的分布,一些功能放在前端机(客户机)上执行,一些功
50、能放在后端机(服务器)上执行。功能的分布在于减少计算机系统的各种瓶颈问题。n前端部分:由一些应用程序构成,如格式处理、报表输出、数据输入、图形界面等,用这些应用程序可实现前羰处理和用户界面。n后端部分:包括存取方法、查询优化、并发控制、恢复等系统程序,它们可完成事务处理和数据访问控制。色喂侩褐拉旧跋域瞻惮芬拯耳紫殊卖林抉拓遗狡是详圣旭韭肛躬峨词湘凿第1章数据库概论第1章数据库概论73并行式DBS(parallel DBS)n并行计算机系统使用多个CPU和多个磁盘进行并行操作,提高数据处理和I/O速度。并行处理时,许多操作同时进行。而不是采用分时的方法。n并行DBS的两个重要指标:n吞吐量:在给
51、定时间间隔内能完成任务的数目。n响应时间:完成一个任务所花费的时间。释笆丹道荤想以纺贱天将孙焦贴蒙亲鸣途洗蚤停菜仙冠儒叼蔼吭习瞅讲因第1章数据库概论第1章数据库概论74并行DBS的结构n共享内存型:所有的CPU共享一个公共的内存n共享磁盘型:所有CPU共享一组公共的磁盘n非共享型:所有CPU既不共享内存也不共享磁盘。n层次型:上述三种结构的组合。一般,顶层是非共享型,而下层结点是共享内存型或共享磁盘型。挠瘩账香嘿裙瘴舅塌螟赋栓婶沾值警诧葡州舌凯追镁掳砌郧忙尉谣弗淖桅第1章数据库概论第1章数据库概论75分布式DBS(distributed DBS)n分布式DBS是一个用通信网络连接起来的场地(S
52、ite,也称结点)的集合,每个场地都可以拥有集中式DBS的计算机系统。n分布式DBS的数据的特点:n分布式DBS的数据具有“分布性”特点,数据不是存储在同一场地,而是分别存储在不同场地。n分布式DBS的数据具有“逻辑整体性”特点。n分布式DBS中的数据在场地上分离,在管理上也是分离的。系统中的事务有本地和全局之分。洞槛象签冰布倍摈癌界荤婆瞥内处劣烦回纯绣丹楔暴弥当迅要魄慎举君作第1章数据库概论第1章数据库概论761.7.4 DBS的效益n灵活性n简易性n面向用户n有效的数据控制n加快应用系统的开发速度n维护方便n标准化恿谦脚眩憋劝取画映义如羹租倡切暑丫蜜韦靡策队鲍昔趴韶察宫蒂促绘劣第1章数据库
53、概论第1章数据库概论77小 结(一) n数据管理技术经历了人工管理、文件系统、数据库和高级数据库技术等四个阶段。数据库系统是在文件系统的基础上发展而成的,同时又克服了文件系统的三个缺陷:数据的冗余、不一致性和联系弱。n在数据库领域,应该准确使用术语,深刻了解实体间1:1、1:N和M:M三种联系的意义。鹅浇倪攫汤戍青拄殖乒药危材冒怎箍杠靖咸框针渝督磐啥瑟恫狮苯宫反侦第1章数据库概论第1章数据库概论78小 结(二)n数据模型是对现实世界进行抽象的工具,用于描述现实世界的数据、数据联系、数据语义和数据约束等方面内容。数据模型分成概念模型和结构模型两大类。前者的代表是实体联系模型,后者的代表是层次、网
54、状、关系和面向对象模型。关系模型是当今的主流模型,面向对象模型是今后发展的方向。纯贴汇葱秀绩福娱癣尼含钉旨竿构随咬深琴儿喘惶屹尧捞话朔琵夺住能涸第1章数据库概论第1章数据库概论79小 结(三)n数据库是存储在一起集中管理的相关数据的集合。数据库的体系结构是对数据的三个抽象级别。它把数据的具体组织留给DBMS去做,用户只需抽象地处理逻辑数据,而不必关心数据在计算机中的存储,减轻了用户使用系统的负担。由于三级结构之间往往差别很大,存在着两级映象,因此使DBS具有较高的数据独立性:物理数据独立性和逻辑数据独立性。爸腑捆范阎骗雁睹啦标钟避泡属劝廖益陆挎让害辑是堤炮蔷俏峭抛辱兰揉第1章数据库概论第1章数
55、据库概论80小 结(四)n数据独立性是指在某个层次上修改模式而不影响较高一层模式的能力。nDBMS是位于用户与OS之间的一层数据管理软件。数据库语言分成DDL和DML两类。DBMS主要由查询处理器和存储管理器两大部分组成。nDBS是包含DB和DBMS的计算机系统。DBS的全局结构体现了DBS的模块功能结构。穿邯厚纵轻镊个脂某劲黔幽饵戊雕贮淋白丹膏肾王综痕任捍召除肤栈潮配第1章数据库概论第1章数据库概论81 本章的重点篇幅 (1)教材P23的图1.24(四种逻辑数据模型的比较)。(2)教材P25的图1.27(DB的体系结构)。(3)教材P29的图1.29(DBMS的工作模式)。(4)教材P34的图1.31(DBS的全局结构)。 四颗闪椎懈棚灯腺蟹沏捞彦落芯天钠殆究裕厕沾邹恶哗棒伍垛抖呸曾裴摹第1章数据库概论第1章数据库概论82