数据库系统概论(第五版)PPT第7章.ppt
《数据库系统概论(第五版)PPT第7章.ppt》由会员分享,可在线阅读,更多相关《数据库系统概论(第五版)PPT第7章.ppt(94页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、An Introduction to Database System数据库系统概论An Introduction to Database System第七章第七章 数据库设计数据库设计xx大学信息学院大学信息学院An Introduction to Database System第七章第七章 数据库设计数据库设计7.1 数据库设计概述数据库设计概述7.2 需求分析需求分析7.3 概念结构设计概念结构设计7.4 逻辑结构设计逻辑结构设计7.5 物理结构设计物理结构设计7.6 数据库的实施和维护数据库的实施和维护7.7 小结小结An Introduction to Database System7
2、.1 数据库设计概述数据库设计概述v 数据库设计数据库设计n数据库设计是指对于一个给定的应用环境,构造(设数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库计)优化的数据库逻辑模式逻辑模式和和物理结构物理结构,并据此建立并据此建立数据库及其应用系统数据库及其应用系统,使之能够有效地存储和管理数,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。数据操作要求。n信息管理要求:在数据库中应该存储和管理哪些数据信息管理要求:在数据库中应该存储和管理哪些数据对象对象。n数据操作要求:对数据对象需要进行哪些操作
3、,如查数据操作要求:对数据对象需要进行哪些操作,如查询、增、删、改、统计等操作。询、增、删、改、统计等操作。An Introduction to Database System数据库设计概述(续)数据库设计概述(续)v 数据库设计数据库设计n数据库设计的目标是为用户和各种应用系统提供一个数据库设计的目标是为用户和各种应用系统提供一个信息基础设施信息基础设施和高效率的和高效率的运行环境运行环境。n高效率的运行环境高效率的运行环境l数据库数据的存取效率高数据库数据的存取效率高l数据库存储空间的利用率高数据库存储空间的利用率高l数据库系统运行管理的效率高数据库系统运行管理的效率高An Introdu
4、ction to Database System7.1 数据库设计概述数据库设计概述7.1.1 数据库设计的特点数据库设计的特点7.1.2 数据库设计方法数据库设计方法7.1.3 数据库设计的基本步骤数据库设计的基本步骤7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式An Introduction to Database System7.1.1 数据库设计的特点数据库设计的特点1.数据库建设的基本规律数据库建设的基本规律n三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据 n管理管理 l数据库建设项目管理数据库建设项目管理 l企业(即应用部门)的业务管理企业(
5、即应用部门)的业务管理 n基础数据基础数据 l数据的收集、整理、组织和不断更新数据的收集、整理、组织和不断更新An Introduction to Database System数据库设计的特点(续)数据库设计的特点(续)2.结构(数据)设计和行为(处理)设计相结合结构(数据)设计和行为(处理)设计相结合 n将数据库结构设计和数据处理设计密切结合将数据库结构设计和数据处理设计密切结合v结构和行为分离的设计结构和行为分离的设计n传统的软件工程:重传统的软件工程:重 行为设计行为设计l忽视对应用中数据语义的分析和抽象,只要有可能就尽忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计
6、的决策量推迟数据结构设计的决策n早期的数据库设计:重早期的数据库设计:重 结构设计结构设计l致力于数据模型和数据库建模方法研究,忽视了行为设致力于数据模型和数据库建模方法研究,忽视了行为设计对结构设计的影响计对结构设计的影响An Introduction to Database System数据库设计的特点(续)数据库设计的特点(续)结构和行为分离的设计结构和行为分离的设计 现实世界现实世界概念模型设计概念模型设计子模式设计子模式设计物理数据库设计物理数据库设计逻辑数据库设计逻辑数据库设计建立数据库建立数据库数据分析数据分析功能分析功能分析功能模型功能模型功能说明功能说明事务设计事务设计应用设
7、计应用设计应用开发应用开发系统调试系统调试数据库设计数据库设计应用系统设计应用系统设计An Introduction to Database System7.1 数据库设计概述数据库设计概述7.1.1 数据库设计的特点数据库设计的特点7.1.2 数据库设计方法数据库设计方法7.1.3 数据库设计的基本步骤数据库设计的基本步骤7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式An Introduction to Database System7.1.2 数据库设计方法数据库设计方法v大型数据库设计是涉及多学科的综合性技术,又大型数据库设计是涉及多学科的综合性技术,又是一项庞大的工程
8、项目。是一项庞大的工程项目。v它要求多方面的知识和技术。主要包括:它要求多方面的知识和技术。主要包括:n计算机的基础知识计算机的基础知识n软件工程的原理和方法软件工程的原理和方法n程序设计的方法和技巧程序设计的方法和技巧n数据库的基本知识数据库的基本知识n数据库设计技术数据库设计技术n应用领域的知识应用领域的知识An Introduction to Database System数据库设计方法(续)数据库设计方法(续)v手工试凑法手工试凑法n设计质量与设计人员的经验和水平有直接关系设计质量与设计人员的经验和水平有直接关系n缺乏科学理论和工程方法的支持,工程的质量难以保缺乏科学理论和工程方法的支
9、持,工程的质量难以保证证n数据库运行一段时间后常常又不同程度地发现各种问数据库运行一段时间后常常又不同程度地发现各种问题,增加了维护代价题,增加了维护代价An Introduction to Database System数据库设计方法(续)数据库设计方法(续)v规范设计法规范设计法n手工设计方法手工设计方法n基本思想基本思想l过程迭代和逐步求精过程迭代和逐步求精n典型方法典型方法l新奥尔良(新奥尔良(New Orleans)方法)方法l基于基于E-R模型的数据库设计方法模型的数据库设计方法l3NF(第三范式)的设计方法(第三范式)的设计方法l面向对象的数据库设计方法面向对象的数据库设计方法l
10、统一建模语言(统一建模语言(UML)方法)方法An Introduction to Database System7.1 数据库设计概述数据库设计概述7.1.1 数据库设计的特点数据库设计的特点7.1.2 数据库设计方法数据库设计方法7.1.3 数据库设计的基本步骤数据库设计的基本步骤7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式An Introduction to Database System7.1.3 数据库设计的基本步骤数据库设计的基本步骤v数据库设计分数据库设计分6个阶段个阶段n需求分析需求分析n概念结构设计概念结构设计n逻辑结构设计逻辑结构设计n物理结构设计物理结
11、构设计n数据库实施数据库实施n数据库运行和维护数据库运行和维护 v需求分析和概念设计独立于任何数据库管理系统需求分析和概念设计独立于任何数据库管理系统 v逻辑设计和物理设计与选用的数据库管理系统密逻辑设计和物理设计与选用的数据库管理系统密切相关切相关An Introduction to Database SystemAn Introduction to Database System数据库设计的基本步骤(续)数据库设计的基本步骤(续)v参加参加数据库数据库设计的人员设计的人员n系统分析人员系统分析人员和和数据库设计人员数据库设计人员l自始至终参与数据库设计,其水平决定了数据库系统的自始至终参与
12、数据库设计,其水平决定了数据库系统的质量质量n数据库管理员和用户代表数据库管理员和用户代表l主要参加需求分析与数据库的运行和维护主要参加需求分析与数据库的运行和维护n应用开发人员应用开发人员l包括程序员和操作员包括程序员和操作员l在实施阶段参与进来,分别负责编制程序和准备软硬件在实施阶段参与进来,分别负责编制程序和准备软硬件环境环境An Introduction to Database System数据库设计的基本步骤(续)数据库设计的基本步骤(续)1.需求分析阶段需求分析阶段n是否做得充分与准确,决定了构建数据库的速度和质是否做得充分与准确,决定了构建数据库的速度和质量量2.概念结构设计阶段
13、概念结构设计阶段n通过对用户需求进行综合、归纳与抽象,形成一个独通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型立于具体数据库管理系统的概念模型3.逻辑结构设计阶段逻辑结构设计阶段n将概念结构转换为某个数据库管理系统所支持的数据将概念结构转换为某个数据库管理系统所支持的数据模型,并对其进行优化模型,并对其进行优化An Introduction to Database System数据库设计的基本步骤(续)数据库设计的基本步骤(续)4.物理结构设计阶段物理结构设计阶段n为逻辑数据结构选取一个最适合应用环境的物理结构为逻辑数据结构选取一个最适合应用环境的物理结构n包括
14、存储结构和存取方法包括存储结构和存取方法5.数据库实施阶段数据库实施阶段n根据逻辑设计和物理设计的结果构建数据库根据逻辑设计和物理设计的结果构建数据库n编写与调试应用程序编写与调试应用程序n组织数据入库并进行试运行组织数据入库并进行试运行6.数据库运行和维护阶段数据库运行和维护阶段n经过试运行后即可投入正式运行经过试运行后即可投入正式运行n在运行过程中必须不断对其进行评估、调整与修改在运行过程中必须不断对其进行评估、调整与修改An Introduction to Database System数据库设计的基本步骤(续)数据库设计的基本步骤(续)v设计设计一个完善的数据库应用系统一个完善的数据库
15、应用系统 往往是上述往往是上述6个个阶段的不断反复阶段的不断反复v这个设计步骤既是数据库设计的过程,也包括了这个设计步骤既是数据库设计的过程,也包括了数据库应用系统的设计过程数据库应用系统的设计过程v把数据库的设计和对数据库中数据处理的设计紧把数据库的设计和对数据库中数据处理的设计紧密结合起来,将这两个方面的需求分析、抽象、密结合起来,将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计互补充,以完善两方面的设计An Introduction to Database System数据库设计的基本步骤(续)数
16、据库设计的基本步骤(续)图图7.3 数据库设计各个阶段的数据设计描述数据库设计各个阶段的数据设计描述An Introduction to Database System7.1 数据库设计概述数据库设计概述7.1.1 数据库设计的特点数据库设计的特点7.1.2 数据库设计方法数据库设计方法7.1.3 数据库设计的基本步骤数据库设计的基本步骤7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式An Introduction to Database System7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式v数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的
17、数据库各级模式数据库的各级模式数据库的各级模式 An Introduction to Database System数据库设计过程中的各级模式(续)数据库设计过程中的各级模式(续)v数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的数据库各级模式需求分析阶段:需求分析阶段:综合各个用户的应用需求综合各个用户的应用需求数据库的各级模式数据库的各级模式 An Introduction to Database System数据库设计过程中的各级模式(续)数据库设计过程中的各级模式(续)v数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的数据库各级模式概念设计阶段:概念设计阶段
18、:形成独立于机器特点,独形成独立于机器特点,独立于各个数据库管理系统产立于各个数据库管理系统产品的品的概念模式概念模式(E-R图)图)数据库的各级模式数据库的各级模式 An Introduction to Database System数据库设计过程中的各级模式(续)数据库设计过程中的各级模式(续)v数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的数据库各级模式逻辑设计阶段:逻辑设计阶段:1.首先将首先将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库形成数据库逻辑模式逻辑模式2.然后根据用户处理的要求、安全
19、性的考虑,在基本表的基础上再建立然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图(必要的视图(View),形成数据的),形成数据的外模式外模式An Introduction to Database System数据库设计过程中的各级模式(续)数据库设计过程中的各级模式(续)v数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的数据库各级模式物理设计阶段:物理设计阶段:根据数据库管理系统特点和处理的需要,根据数据库管理系统特点和处理的需要,进行物理存储安排,建立索引,形成数进行物理存储安排,建立索引,形成数据库据库内模式内模式数据库的各级模式数据库的各级模式 An
20、 Introduction to Database System第七章第七章 数据库设计数据库设计7.1 数据库设计概述数据库设计概述7.2 需求分析需求分析7.3 概念结构设计概念结构设计7.4 逻辑结构设计逻辑结构设计7.5 物理结构设计物理结构设计7.6 数据库的实施和维护数据库的实施和维护7.7 小结小结An Introduction to Database System7.2 需求分析需求分析7.2.1 需求分析的任务需求分析的任务7.2.2 需求分析的方法需求分析的方法7.2.3 数据字典数据字典An Introduction to Database System需求分析需求分析(
21、续)(续)v需求分析就是分析用户的要求需求分析就是分析用户的要求n是设计数据库的起点是设计数据库的起点n结果是否准确地反映了用户的实际要求,将直接影响结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理到后面各个阶段的设计,并影响到设计结果是否合理和实用和实用An Introduction to Database System7.2.1 需求分析的任务需求分析的任务v详细调查现实世界要处理的对象(组织、部门、详细调查现实世界要处理的对象(组织、部门、企业等)企业等)v充分了解原系统(手工系统或计算机系统)工作充分了解原系统(手工系统或计算机系统)工作概况
22、概况v明确用户的各种需求明确用户的各种需求v在此基础上确定新系统的功能在此基础上确定新系统的功能v新系统必须充分考虑今后可能的扩充和改变新系统必须充分考虑今后可能的扩充和改变An Introduction to Database System需求分析的任务需求分析的任务(续)(续)v调查的重点是调查的重点是“数据数据”和和“处理处理”,获得用户对,获得用户对数据库的要求数据库的要求(1)信息要求)信息要求l用户需要从数据库中获得信息的内容与性质用户需要从数据库中获得信息的内容与性质l由信息要求可以导出数据要求,即在数据库中需要存储由信息要求可以导出数据要求,即在数据库中需要存储哪些数据哪些数据
23、(2)处理要求)处理要求l用户要完成的处理功能用户要完成的处理功能l对处理性能的要求对处理性能的要求(3)安全性与完整性要求)安全性与完整性要求An Introduction to Database System需求分析的任务需求分析的任务(续)(续)v确定用户最终需求的难点确定用户最终需求的难点n用户缺少计算机知识,不能准确地表达自己的需求,用户缺少计算机知识,不能准确地表达自己的需求,他们所提出的需求往往不断地变化。他们所提出的需求往往不断地变化。n设计人员缺少用户的专业知识,不易理解用户的真正设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求需求,甚至误解用户的需求v
24、解决方法解决方法n设计人员必须不断深入地与用户进行交流,才能逐步设计人员必须不断深入地与用户进行交流,才能逐步确定用户的实际需求确定用户的实际需求An Introduction to Database System7.2 需求分析需求分析7.2.1 需求分析的任务需求分析的任务7.2.2 需求分析的方法需求分析的方法7.2.3 数据字典数据字典An Introduction to Database System7.2.2 需求分析的方法需求分析的方法v调查清楚用户的实际需求并进行初步分析调查清楚用户的实际需求并进行初步分析v与用户达成共识与用户达成共识v分析与表达这些需求分析与表达这些需求An
25、 Introduction to Database System调查用户需求的步骤调查用户需求的步骤(1)调查组织机构情况)调查组织机构情况(2)调查各部门的业务活动情况)调查各部门的业务活动情况(3)协助用户明确对新系统的各种要求,包括信)协助用户明确对新系统的各种要求,包括信 息要求、处理要求、完全性与完整性要求息要求、处理要求、完全性与完整性要求(4)确定新系统的边界)确定新系统的边界An Introduction to Database System常用调查方法常用调查方法(1)跟班作业)跟班作业n通过亲身参加业务工作了解业务活动的情况通过亲身参加业务工作了解业务活动的情况(2)开调查
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 概论 第五 PPT
限制150内