数据库原理与设计(第6章).ppt_第1页
数据库原理与设计(第6章).ppt_第2页
数据库原理与设计(第6章).ppt_第3页
数据库原理与设计(第6章).ppt_第4页
数据库原理与设计(第6章).ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

数据库原理与设计 第六章数据库设计 第六章数据库设计 本课程的重点内容要求及主要内容熟练掌握概念结构设计的方法熟练掌握逻辑结构设计的方法掌握需求分析的方法了解数据库物理设计与实施和维护的主要工作 6 1数据库设计概述 数据库设计是指对于一个给定的应用环境 构造最优的数据库模式 建立数据库及其应用系统 使之能够有效地存储数据 满足各种用户的应用需求 信息和处理要求 数据库和信息系统数据库是信息系统的核心和基础数据库设计是信息系统开发和建设的重要组成部分数据库系统的设计和开发是涉及多学科的综合性技术 6 1数据库设计概述 数据库设计的内容数据库的结构设计 静态 逻辑数据库设计局部逻辑结构全局逻辑结构物理数据库设计存储结构数据库的行为设计 动态 数据的装载应用程序设计 6 1数据库设计概述 数据库分析设计人员应具备的水平计算机技术数据库技术软件工程知识应用领域的知识数据库设计方法 规范设计法手工设计方法过程迭代逐步求精计算机辅助软件工程CASE 6 1数据库设计概述 数据库设计步骤系统需求分析需求收集和分析 结果得到数据字典描述的数据需求和数据流图描述的处理需求概念结构设计通过对用户需求进行综合 归纳与抽象 形成一个独立于具体DBMS的概念模型 可以用E R图表示逻辑结构设计将概念结构转换为某个DBMS所支持的数据模型 例如关系模型 并对其进行优化 6 1数据库设计概述 数据库物理设计为逻辑数据模型选取一个最适合应用环境的物理结构 包括存储结构和存取方法 数据库实施运用DBMS提供的数据语言 例如SQL 及其宿主语言 例如VB 根据逻辑设计和物理设计的结果建立数据库 编制与调试应用程序 组织数据入库 并进行试运行 数据库运行维护数据库应用系统经过试运行后即可投入正式运行 在数据库系统运行过程中必须不断地对其进行评价 调整与修改 6 1数据库设计概述 数据库使用维护阶段 系统需求分析阶段 概念结构设计阶段 逻辑结构设计阶段 物理结构设计阶段 数据库实施阶段 运行 维护数据库 数据入库 编制应用程序 将E R图转换成具体关系模式建立逻辑模型 用户视图 综合各个用户的应用需求 形成独立于DBMS的概念模型用E R图描述 安排物理存储 设计索引 6 2需求分析 需求分析的任务详细调查应用领域要处理的对象充分了解原系统的工作概况明确用户的各种要求 1 信息要求 2 处理要求 3 安全性要求 4 完整性要求确定新系统的功能考虑今后的扩充性 6 2需求分析 需求分析的步骤调查组织机构情况调查各部门的业务活动流程协助用户明确对新系统的各种需求确定新系统的边界分析系统功能分析系统数据编写系统分析报告 6 2需求分析 数据字典各类数据描述的集合数据项 数据结构 数据流 数据存储和处理过程主要文档 数据字典 数据流图注意将来的扩充与修改强调用户的参与 6 3概念结构设计 概念结构的主要特点真实 充分地反映现实世界易于理解 易于更改易于向数据模型转换独立于DBMS用E R图来表示概念模式概念结构设计的四种方法自顶向下 先全局 后细化自底向上 先局部 后集成由里向外 先核心 后扩充混合策略 自顶向下 自底向上 6 3概念结构设计 自底向上 概念结构设计的步骤抽象数据 设计局部视图集成局部视图 得到全局的概念结构数据抽象抽象 抽取所关心的共同特征 忽略非本质细节 三种抽象分类 Classification 定义某一类概念作为一组对象的类型 抽象了对象值和型之间的 ismemberof 的语义 聚集 Aggregation 定义某一类型的组成成分 抽象了对象内部类型和成分之间 ispartof 的语义 概括 Generalization 定义类型之间的一种子集联系 它抽象了类型之间的 issubsetof 的语义 6 3概念结构设计 设计分E R图的步骤是 选择局部应用在多层的数据流图中选择一个适当层次的数据流图 作为设计分E R图的出发点 逐一设计分E R图先从自然划分出发定义E R图 然后再进行必要的调整 调整原则是 能作为属性对待的 尽量作为属性对待 作为 属性 不能再具有需要描述的性质 属性 不能与其他实体具有联系实体和其属性值之间保持1 1或n 1的关系 6 3概念结构设计 例1 职工与职称之间 6 3概念结构设计 例2 在医院中 一个病人只能住在一个病房 病房号可以作为病人实体的一个属性 但如果病房还要与医生实体发生联系 即一个医生负责几个病房的病人的医疗工作 则病房应作为一个实体 病人 病房 居住 工号 姓名 性别 年龄 房号 面积 床数 n 1 医生 负责 姓名 性别 n m 6 3概念结构设计 例3 职工与子女之间 6 3概念结构设计 视图的集成两种方式多个分图一次集成逐步集成集成的两步合并 解决各分图之间的冲突 生成初步E R图修改和重构 消除不必要的冗余 形成基本E R图 6 3概念结构设计 合并属性冲突属性域冲突属性取值单位冲突 命名冲突同名异义异名同义结构冲突同一对象在不同的应用中具有不同的抽象同一实体在不同的分图中所包含的属性的个数及其排列顺序不一样联系在不同的分图中为不同的类型 6 3概念结构设计 消除不必要的冗余冗余的数据 可由基本数据导出的数据冗余的联系 可由其他联系导出的联系消除冗余的方法 分析并不是所有的冗余都必须消除 6 4逻辑结构设计 逻辑结构设计的任务是把概念结构设计阶段设计好的基本E R图转换为与选用的DBMS产品所支持的数据结构相符合的逻辑结构逻辑结构设计的三个步骤将E R图转换为一般的关系模型将关系模型转换为DBMS数据模型对数据模型进行优化 6 4逻辑结构设计 解决的问题如何将实体和实体间的联系转换为关系模式如何确定这些关系模式的属性和码关系模型的逻辑结构的三个组成要素实体实体的属性实体之间的联系 6 4逻辑结构设计 E R图向关系模型转换的原则一个实体型转换为一个关系模式 实体的属性就是关系的属性 实体的码就是关系的码一个联系转换为一个关系模式 相联系实体的主码和联系的属性转换为关系的属性1 1联系 每个实体的码均是该关系的候选码 1 n联系 多方实体的码是该关系的码 m n联系 相联系两个实体的码的并构成该关系的码 三者以上的联系 相联系实体的码的并构成该关系的码 相同主码的关系可以合并 E R图向关系模型转换实例 E R图向关系模型转换实例 部门 部门号 部门名 该关系模式由实体 部门 转换职工 职工号 职工名 职务 该关系模式由实体 职工 转换产品 产品号 产品名 该关系模式实体 产品 转换供应商 供应商号 姓名 该关系模式由实体 供应商 转换零件 零件号 零件名 该关系模式实体 零件 转换 E R图向关系模型转换实例 领导 部门号 职工号 该关系模式由联系 领导 转换 由于是1 1联系 故部门号和职工号均可作为该关系的候选码属于 职工号 部门号 该关系模式 属于 转换 由于是1 n联系 故职工号应为该关系的候选码负责 产品号 职工号 该关系模式由联系 负责 转换 由于是1 1联系 故职工号和产品号均可作为该关系的候选码参加 职工号 产品号 天数 联系 参加 所对应的关系模式 由于是m n联系 故职工号和产品号合起来为此关系的候选码供应 产品号 供应商号 零件号 供应量 联系 供应 所对应的关系模式 由于是三者以上的联系 故产品号 供应商号和零件号合起来为此关系的候选码 E R图向关系模型转换实例 对以上关系模式进行相应的合并后 部门 部门号 部门名 经理的职工号 该关系模式是关系模式 领导 与 部门 合并 包含了联系 领导 所对应的实体 职工 的码职工 职工号 部门号 职工名 职务 该关系模式是关系模式 职工 与 属于 合并 包含了联系 属于 所对应的实体 部门 的码产品 产品号 产品名 产品组长的职工号 该关系模式是关系模式 产品 与 负责 合并 已包含了联系 负责 所对应的实体 职工 的码 E R图向关系模型转换实例 供应商 供应商号 姓名 供应商实体对应的关系模式零件 零件号 零件名 零件实体对应的关系模式参加 职工号 产品号 天数 联系 参加 所对应的关系模式供应 产品号 供应商号 零件号 供应量 联系 供应 所对应的关系模式 6 4逻辑结构设计 数据模型的优化确定数据依赖按需求分析所得到的语义 分别写出每个关系模式内部各属性之间的数据依赖和不同关系模式属性之间的数据依赖对各关系模式之间的数据依赖进行极小化处理 消除冗余联系确定各关系模式的范式级别按照需求确定是否要对某些模式进行合并或分解对关系模式进行必要的分解 可以提高数据操作的效率和存储空间的利用率 6 4逻辑结构设计 设计用户子模式 利用视图概念设计更符合局部用户需要的用户外模式使用别名对不同级别的用户定义不同的view 以保证系统的安全简化用户对系统的使用预备性的定义一些view 以满足用户经常用到的复杂的查询 6 5数据库的物理设计 数据库的物理结构数据库在物理设备上的存储结构与存取方法物理设计为给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程分两步确定存取方法和存储结构评价物理结构的时间和空间效率 6 5数据库的物理设计 数据库的物理设计的内容和方法对要运行的事务进行分析对于查询事务 需得到如下信息所涉及的关系 查询 连接 投影所涉及的属性对于更新事务 需得到如下信息所涉及的关系及其属性 要更新的属性值了解所用RDBMS提供的存取方法和存储结构 6 5数据库的物理设计 关系模式存取方法选择索引 index 根据应用要求确定对关系的哪些属性列建立索引 或组合索引 以及哪些索引要设计成唯一索引有必要建立索引的情况如果一个 或一组 属性经常在查询条件中出现如果一个 或一组 属性经常在连接条件中出现如果一个属性经常作为最大值和最小值等聚集函数的参数 6 5数据库的物理设计 聚簇 Cluster 把在某些属性上有相同值的元组集中存放的方法可以减少I O操作 提高查询效率可建立聚簇的情况经常进行连接操作的关系 组 如果一个关系的一组属性经常出现在相等比较条件中如果一个关系的一个或一组属性上的值重复率很高 6 5数据库的物理设计 不适合建立聚簇的情况要经常进行全表扫描的关系更新操作多于连接操作的关系一个关系只能建立一个聚簇建立聚簇的全局考虑建立与维护聚簇的代价很大当通过使用聚簇码进行访问或连接是该关系的主要应用时 使用聚簇效果明显 6 6数据库的实施与维护 数据库实施主要包括以下工作 用DDL定义数据库结构组织数据入库小型系统用人工方法完成数据的入库中大型系统设计一个数据输入子系统辅助数据入库编制与调试应用程序与组织数据入库同步进行的数据库试运行 也称为联合调试功能测试 即实际运行应用程序 执行对数据库的各种操作 测试应用程序的各种功能 性能测试 即测量系统的性能指标 分析是否符合设计目标 6 6数据库的实施与维护 对数据库经常性的维护工作主要是由DBA完成的 它包括 数据库的转储和恢复定期对数据库和日志文件进行备份数据库的安全性 完整性控制根据用户的实际需要授予不同的操作权限根据应用环境化 不断修正完整性约束条件数据库性能的监督 分析和改进通过调整某些参数来进一步改进数据库性能 数据库的重组织和重构造重组织 重新安排存储位置 回收垃圾 减少指针链 提高系统性能重构造 调整数据库的模式和内模式 6 7小结 在设计过程中 数据库设计的六个阶段会有许多反复需求分析阶段综合各个用户的应用需求 现实世界的需求 概念设计阶段形成独立于机器特点 独立于各个DBMS产品的概念模式 用E R图来描述 逻辑设计阶段将E R图转换成具体的数据库产品支持的数据模型如关系模型 形成数据库逻辑模式 然后根据用户处理的要求 安全性的考虑 在基本表的基础上再建立必要的视图 VIEW 形成数据的外模式 物理设计阶段根据DBMS特点和处理的需要 进行物理存储安排 设计索引 形成数据库内模式 6 8习题 现有某个应用 涉及两个实体集 相关的属性为 实体集R A A1 A2 A3 实体集S B B1 其中A 和B 分别表示相应实体集的码 从实体集R到S是一对多 1 N 的联系 联系属性C1和C2 1 试画出相应的E R图 并设计相应的关系数据模型 2 如果将上述应用的数据库设计为一个关系模式 如下 RS A A1 A2 A3 B B1 C1 C2 指出该关系模式的码 3 上述第2题的关系模式RS最高满足第几范式 并说明理由 4 如果将上述应用的数据库设计为两个关系模式 如下 R1 A A1 A2 A3 B C1 C2 R2 B B1 指出关系模式R1 R2最高满足第几范式 在1NF BCNF之内 1 R A A1 A2 A3 S B B1 C B A C1 C2 2 RS的码为B 3 RS最高满足2NF 因为候选码均由单个属性组成的关系必为2NF 但由于非主属性A1 A2 A3对码B 存在传递函数依赖 故RS不属于3NF 4 R1最高满足2NF 非主属性A1 A2 A3对码B 存在传递函数依赖 R2最高满足BCNF 6 8习题 现有某个应用 涉及到两个实体集 相关的属性为 实体集R A A

温馨提示

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

评论

0/150

提交评论