第三章数据库系统设计的步骤和方法.ppt_第1页
第三章数据库系统设计的步骤和方法.ppt_第2页
第三章数据库系统设计的步骤和方法.ppt_第3页
第三章数据库系统设计的步骤和方法.ppt_第4页
第三章数据库系统设计的步骤和方法.ppt_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

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

文档简介

第三章 数据库系统设计的步骤和方法 主要内容 数据库设计概述数据库规划需求分析概念结构设计逻辑结构设计物理结构设计数据库的实施和维护 数据库设计概述 数据库设计步骤数据库设计的特点返回 数据库设计步骤 1 1 数据库系统的生存期 数据库应用系统从开始规划 分析 设计 实施 投入运行后的维护直到被新的系统取代而停止使用的整个期间 它通常将包含4个时期 或7个阶段 即规划时期 设计时期 需求分析 概念设计 逻辑设计 物理设计 实施时期和运行维护时期 数据库设计步骤 2 2 数据库系统的生存期内各阶段的主要任务如下 1 数据库规划时期2 数据库设计时期3 数据库实施时期4 数据库运行与维护时期返回 数据库规划时期 数据库规划时期 进行建立数据库的必要性和可行性分析 通过评审的可行性分析报告是这个时期的结束标记 返回 数据库设计时期 这个时期一般分为如下的4个阶段 需求分析阶段 概念结构设计阶段 逻辑结构设计阶段 物理结构设计阶段返回 需求分析阶段 1 需求分析阶段 利用数据库设计理论和方法 对现实世界的对象 组织 部门 企业等 即用户的现行系统进行详细调查 收集支持系统目标的基础数据及其处理需求 其主要需求有 信息需求 即数据库中应该存储哪些数据 处理需求 即对数据库的动态性能需求 如响应时间 处理方式等 安全性和完整性方面的需求 返回 概念结构设计阶段 概念结构设计阶段 在需求分析的基础上 通过对用户需求进行分析 归纳 抽象 形成一个独立于具体DBMS和计算机硬件结构的整体概念结构 即概念模式 返回 逻辑结构设计阶段 逻辑结构设计阶段 在概念结构设计的基础上 在一定的原则指导下将概念模式 E R图 转换为某个具体DBMS支持的数据模型相符合的 经过优化的逻辑结构 返回 物理结构设计阶段 物理结构设计阶段 为逻辑数据结构选取一个最适合应用环境的物理结构 包括存储结构和存取方法等 返回 数据库实施时期 数据库实施时期 用DBMS提供的数据定义语言 DDL 和其它实用程序将数据库逻辑结构设计和物理设结构计结果用DDL严格描述出来 成为DBMS可以接受的源代码 再经过调试产生目标模式 最后将数据装入数据库 返回 数据库运行与维护时期 数据库运行与维护时期 收集和登记数据库运行的情况记录 用于评价并改善数据库系统的性能 返回 数据库设计的特点 1 具有如下特点 1 反复性 Iterative 2 试探性 Tentative 3 多步性 multistage 4 面向数据 Data Oriented 返回 数据库设计的特点 2 反复性反复性 Iterative 数据库设计需要反复修改 逐步完善 因为前阶段的设计是后阶段设计的起点和基础 而后阶段设计也会向前阶段反馈 提出新的要求 返回 数据库设计的特点 3 试探性试探性 Tentative 由于设计过程中面临各种各样的要求和制约因素 且这些因素之间往往是矛盾的 导致数据库设计过程的试探性和设计结果的不唯一性 返回 数据库设计的特点 4 多步性多步性 multistage 数据库的设计常常由不同的人员分阶段进行 其目的是进行技术分工和分段把关 逐级审查 以保证设计的质量和进度 返回 数据库设计的特点 5 面向数据面向数据 Data Oriented 在数据库设计中实施以信息需求为主 兼顾处理需求的设计策略 说明 计算机应用系统设计的有两种方法 信息需求为主 兼顾处理需求的方法称为面向数据的方法 Data OrientedApproach 以处理需求为主 兼顾信息需求的设计方法称为面向过程的方法 Process OrientedApproach 返回 数据库规划 1 数据库规划工作的重要性 直接关系到整个数据库系统的成败 对一个企业或部门的信息化建设进程都将产生深远的影响 2 数据库规划时期的主要工作 确定数据库系统在企业或部门的计算机系统中的地位以及各个数据库之间的联系 分析企业的基本业务功能 确定数据库支持的业务范围 回答是建立一个综合的数据库 还是建立若干个专门的数据库等问题 并对建立数据库的必要性和可行性进行分析 返回 需求分析 1 需求分析的任务2 需求分析的步骤返回 需求分析的任务 通过详细调查用户的现行系统 手工系统或计算机系统 的工作情况 深入了解其数据的性质和数据的使用情况 数据的处理流程 流向 流量等 并仔细地分析用户在数据格式 数据处理 数据库安全性 可靠性以及数据的完整性方面的需求 按一定规范要求写出设计者和用户都能理解的文档 需求分析说明书 返回 需求分析的步骤 需求分析的任务可分解为以下三个步骤 1需求调查2分析整理3撰写需求分析说明书4评审返回 1 需求调查 需求调查的目的需求调查的内容需求调查的方式需求调查的策略返回 需求调查的目的 需求调查的目的 获得各个组织机构的业务数据及其相互联系的信息 为分析整理工作做好前期基础工作 返回 需求调查的内容 组织机构情况 各个组织机构的组成 各部门的职责 各部门管理工作存在的问题 各部门中哪些业务适合计算机管理 哪些业务不适合计算机管理 业务活动现状 各部门输入和使用的数据 加工处理这些数据的方法 处理结果的输出去向 输入 输出数据的格式 以及数据库中需要存储的数据 外部要求 调查数据处理的响应时间 频度和发生的规则 以及经济性 安全性及完整性要求 未来规划中对数据的应用需求等 返回 需求调查方式 个别交谈 仔细了解该用户业务范围的用户需求 特点是调查时不受其它人员的影响 开座谈会 获得不同业务之间的联系信息 特点是与会人员能互相启发 发调查表 获得设计人员关心的用户需求问题 特点是调查目的准确 但效果依赖于调查表设计的质量 跟班作业 获得业务活动情况和用户需求 特点是用户需求准确但比较费时 查阅记录 获得具体的业务细节 返回 需求调查的策略 对高层负责人 个别交谈方式 可获得有关企业高层管理活动和决策过程的信息需求以及企业的运行政策 未来发展变化趋势等与战略规划有关的信息 对中层管理人员 开座谈会 个别交谈或发调查表 查阅记录的调查方式 可获得企业的具体业务控制方式和约束条件 不同业务之间的接口 日常控制管理的信息需求并预测未来发展的潜在信息需求 对基层业务人员 发调查表 个别交谈 跟班作业或召开小型座谈会的调查方式 可获得每项具体业务的输入输出数据和工作过程 数据处理要求和约束条件等 返回 2 分析整理 分析整理的工作主要有 1 业务流程分析与表示2 需求信息的补充描述返回 业务流程分析与表示 业务流程分析与表示 通过业务流程分析 获得业务流程及业务与数据联系的形式描述 一般采用数据流分析法 分析结果以数据流图 DataFlowDiagram DFD图 表示 DFD图描述了数据与处理关系及其数据流动的方向 数据流图 数据流图中的主要图形元素 领书单 发票 数据流图 学生 学生 审查并开发票1 开领书单2 购书单 无效书单 教材存量表 数据流图 例 办理取款手续的 数据流与数据加工之间的关系 分层的数据流图 为了表达数据处理过程的数据加工情况 需要采用层次结构的数据流图 按照系统的层次结构进行逐步分解 并以分层的数据流图反映这种结构关系 能清楚地表达和容易理解整个系统 分层的数据流图 在多层数据流图中 顶层流图仅包含一个加工 它代表被开发系统 它的输入流是该系统的输入数据 输出流是系统所输出数据 底层流图是指其加工不需再做分解的数据流图 它处在最底层 中间层流图则表示对其上层父图的细化 它的每一加工可能继续细化 形成子图 分层的数据流图 数据流图 思考题 生产计划制定 生产作业过程记录 按泊位吞吐量统计的数据流程图 返回 需求信息的补充描述 需求信息的补充描述 除了用DFD图描述用户需求外 还需要用一些规范化表格对其细节信息进行补充描述 这些细节补充信息主要有 数据字典 业务活动清单 列出每一部门中最基本的工作任务 包括任务的定义 操作类型 执行频度 所属部门涉及的数据项以及数据处理响应时间要求 其它需求清单 如完整性 一致性要求 安全性要求以及预期变化的影响需求等 返回 1 数据字典 1 数据字典 对数据库 DFD图 中数据性质的描述 即元数据 而不是数据本身 它是对数据流程图上各个元素作出详细的定义和说明 数据字典包括的内容 数据项 数据结构 数据流 数据存储和处理过程 数据项 数据项 数据的基本单元 即最小单位 数据项的描述方法和内容是 数据项描述 数据项名 数据项含义说明 别名 数据类型 长度 取值范围 取值含义 与其他数据项的逻辑关系 领书单 发票 学生 学生 审查并开发票1 开领书单2 购书单 无效书单 教材存量表 返回 数据结构 数据结构 若干数据项组成的有意义的集合 反映了数据之间的组合关系 数据结构的描述方法和内容是 数据结构描述 数据结构名 含义说明 组成 数据项名列表 存折格式 数据结构的描述 存折 户名 所号 帐号 开户日 性质 印密 1 存取行 50户名 2 字母 24所号 001 999 帐号 00000001 99999999 开户日 年 月 日性质 1 6 注 1 表示普通户 5 表示工资户等印密 0 注 印密在存折上不显示存取行 日期 摘要 支出 存入 余额 操作 复核 数据结构的描述 符号含义举例 被定义为 与x a b 或 或x a b x a b 或m n重复x a x 3 a 8 可选x a 基本数据元素x a 连结符x 1 9 返回 领书单 发票 学生 学生 审查并开发票1 开领书单2 购书单 无效书单 教材存量表 发票 学号 姓名 书号 单价 数量 总价 书费合计发票 学号 姓名 发票行 书费合计发票行 书号 单价 数量 总价 各班学生用书表 系编号 专业和班编号 年级 书号 系编号 2 数字 2专业和班编号 3 数字 3年级 F M J S 书名 字母 数字 数据流 数据流 某一处理输入 输出 的数据项或者数据结构 数据流的描述方法和内容是 数据流描述 数据流名 说明 数据流来源 数据流去向 组成 数据结构 平均流量 高峰期流量 其中 数据流来源说明该数据流来自哪个处理过程 数据流去向说明该数据流将传送给哪个处理过程 平均流量是指单位时间 每天 每周 每月等 的传输次数 峰期流量则是指在高峰时期的数据传输次数 返回 数据存储 数据存储 处理过程中需要保存的数据集合 是数据流的来源和去向之一 它可以是手工凭证 手工文档 也可以是计算机文件等 数据存储的描述方法和内容是 数据存储描述 数据存储名 说明 编号 输入的数据流 输出的数据流 组成 数据结构 数据量 存取方式 其中 数据量是指每次存取多少数据 每天 或每小时 每周等 存取几次等 存取方法包括批处理或者联机处理 检索或者更新 顺序检索或者随机检索等 输入的数据流用于指明其来源 输出的数据流用于指出其去向 返回 处理过程 处理过程 处理过程也称加工过程 这里指数据库应用程序模块 其具体处理逻辑一般用判定表或判定树来描述 也可用程序流程图或盒图 N S 来描述 但在数据字典中只描述处理过程的说明性信息 其描述方法和内容是 处理过程描述 处理过程名 说明 输入 数据流 输出 数据流 处理 简要说明 其中 简要说明用于说明该处理过程的功能及处理要求 即该处理过程用来做什么 而不是怎样做 和处理要求 处理要求是物理设计的输入及性能评价的标准 返回 3 撰写需求分析说明书 撰写需求分析说明书 在需求调查的分析整理基础上 依据一定的规范 国家标准或企业标准 编写出需求分析说明书 返回 4 评审 评审的目的 确认需求阶段的任务是否完成 以保证设计的质量 避免重大的疏漏或者错误 评审人员构成 项目组成员 非项目组的专家和主管部门负责人 评审结果的作用 通过评审的需求分析说明书是需求分析阶段的结束标志 也是下一个设计阶段的输入 并作为项目验收和鉴定的依据之一 返回 概念结构设计 概念结构设计 把需求分析阶段得到用户需求 已用数据字典和数据流图表示 抽象为概念模型表示的过程 数据库概念结构设计中常用E R模型来描述概念结构 基本方法主要设计步骤返回 基本方法 1 将用户需求抽象为E R模式的基本方法 1 集中式设计法 2 分散 集成设计法 2 E R模式设计的策略 返回 集中式设计法 集中式设计法 根据用户需求由一个统一的机构或人员一次设计出数据库的全局E R模式 其特点是设计简单方便 容易保证E R模式的统一性与一致性 但它仅适用于小型或并不复杂的数据库设计问题 而对大型的或语义关联复杂的数据库设计并不适用 返回 分散 集成设计法 分散 集成设计法 设计过程分解成两步 首先将一个企业或部门的用户需求 根据某种原则将其分解成若干个部分 并对每个部分设计局部E R模式 然后将各个局部E R模式进行集成 并消除集成过程中可能会出现的冲突 最终形成一个全局E R模式 其特点是设计过程比较复杂 但能较好的反映用户需求 对于大型和复杂的数据库设计问题比较有效 返回 主要设计步骤 E R模式设计一般分为三步 设计局部E R模式 将局部E R模式集成为全局E R模式 对全局E R模式进行优化得到基于E R模型的数据库概念结构 1 设计局部E R模式2 合并局部E R模式3 优化全局E R模式返回 E R模式设计的策略 自上而下 先定义全局E R模式框架 然后逐步进行细化 即先从抽象级别高且普遍性强的实体集开始设计 然后逐步进行细化 具体化与特殊化处理 自下而上 先从具体的实体开始 然后逐步进行抽象化 普遍化与一般化 最后形成一个较高层次的抽象实体集 其设计过程与自上而下策略的过程相反 由内向外 也称为逐步扩张策略 即先从最基本与最明显的实体集着手逐步扩展至非基本 不明显的其它实体集 混合策略 将上面三种策略同时应用于E R模式设计过程之中 返回 1 设计局部E R模式 局部E R模式的设计一般又可分解为以下步骤 1 确定局部E R模式的范围2 定义实体型3 定义联系返回 三种数据抽象方法 分类聚集概括 职工 张小英 王丽平 柳勇 李成 职工 职工号 姓名 工资 性别 年龄 部门号 名称 领导 姓名 年龄 性别 工资 职工 超类 子类 确定局部E R模式的范围 确定局部E R模式的范围 将用户需求划分成若干个部分 其划分方法有 根据企业的组织机构对其进行自然划分 并为它们分别设计局部E R模式 根据数据库提供的服务种类进行划分 使得每一种服务所使用的数据明显地不同于其它种类 并为每一类服务设计一个局部E R模式 返回 定义实体型 定义实体型 每一个局部E R模式都包括一些实体型 即从选定的局部范围中的用户需求出发 确定每一个实体型的属性及其属性名和主键 区分实体与属性的一些原则 给实体集与属性命名 其原则是清晰明了便于记忆 并尽可能采用用户熟悉的名字 减少冲突 方便使用 确定实体标识 即确定实体集的主键 在列出实体集的所有候选键的基础上 选择一个作为主键 非空值原则 保证主键中的属性不出现空值 返回 区分实体与属性的原则 信息描述原则 一般地说 实体需要进一步用某些属性进行描述 而属性则不需要 依赖性原则 一般地讲 属性仅单向依赖于某个实体 且这种依赖是包含性依赖 如学生实体中的学号 学生姓名等均单向依赖于学生 一致性原则 一个实体由若干个属性组成 这些属性间有内在的关联性与一致性 如学生实体有学号 学生姓名 年龄 专业等属性 它们分别独立表示实体的某个特性 并在总体上协调一致 互相配合 构成了一个统一的整体 返回 定义联系 定义联系 即判断实体集之间是否存在联系 并定义实体集之间联系的类型 实体集之间的联系方式 定义联系的方法 为实体集之间的联系命名 联系的命名应反映联系的语义性质 通常采用某个动词命名 如 选修 讲授 使用 等 确定每个联系存在属性 并为其命名 返回 实体集之间的联系方式 存在性联系 如学校有教师 教师有学生等 功能性联系 如教师授课 教师参与管理学生等 事件联系 如学生借书 学生打网球等 返回 定义联系的方法 利用上面介绍的三种联系方式去检查E R模式中两个实体集之间是否存在联系 并确定这些联系的类型 1 1 1 n或n m 此外 还要考虑实体集内部是否存在联系 多个实体集之间是否存在联系 并尽量消去冗余的联系 返回 2 合并局部E R模式 合并局部E R模式为全局E R模式的过程可分成三步 1 确定公共实体型 2 合并局部E R模式 3 消除冲突 消除合并过程中局部E R模式之间出现的不一致描述 即冲突 3 消除冲突的方法 返回 确定公共实体型 确定多个局部E R模式之间的公共实体型 一般根据实体型名称和主键来认定公共实体型 即把同名实体型作为一个候选的公共实体型 把具有相同主键的实体型作为另一个候选的公共实体型 返回 合并局部E R模式 首先将两个具有公共实体型的局部E R模式进行合并 然后每次将一个新的 与前面已合并模式具有公共实体型的局部E R模式合并起来 最后再加入独立的局部E R模式 这样即可终获得全局E R模式 返回 冲突类型 两个局部E R模式之间可能出现的冲突类型 属性冲突 主要指属性值的类型 取值范围 或者计量单位的冲突 命名冲突 主要指同名异义和异名同义两种冲突 包括属性名 实体型名 联系名之间的冲突 同名异义 即不同意义的对象具有相同的名字 异名同义 即同一意义的对象具有不同的名字 结构冲突 返回 结构冲突 主要有表现为 同一对象在不同的局部E R模式中的抽象不一致 比如职工 在某个局部E R模式中抽象为实体 而在另一局部E R模式中则抽象为属性 同一实体在不同的局部E R模式中其属性组成不同 包括属性个数 次序等 实体集之间的联系在不同的局部E R模式中呈现不同的类型 如实体集A与B在某一局部E R模式中是多对多联系 而在另一局部E R模式中又是一对多联系 在某一局部E R模式中A与B发生联系 而在另一局部E R模式中A B C三者之间有联系 返回 消除冲突的方法 属性冲突和命名冲突一般通过设计人员之间的讨论 协商等方法即可得到解决 而结构冲突则需要全体设计人员和用户经过仔细分析 认真讨论 确定一个能够反映用户需求 全体用户共同理解和接受的统一结构之后才能解决 返回 物理结构设计 目前流行的商品化关系数据库管理系统 RDBMS 中 数据库的大量内部物理结构都由RDBMS自动完成 留给用户参与的物理结构设计内容主要有如下几种 聚簇设计 确定每个关系是否需要建立聚簇 若需要 应在什么属性列上建立 索引设计 确定每个关系是否需要建立索引 若需要 应在什么属性列上建立 分区设计 确定数据库数据存放在哪些磁盘上 数据如何分配 确定系统配置参数 根据DBMS产品提供了一些存储分配参数 数据库进行物理优化 评价物理结构 估算各种方案的存储空间 存取时间和维护代价 对估算结果进行权衡 比较 选择出一个较优的合理的物理结构 返回 聚簇设计 1 聚簇 Cluster 将有关的数据元组按聚簇属性顺序集中存放于一个物理块内或若干相邻物理块内或同一柱面内 以提高查询效率的数据存储结构 2 聚簇设计 根据用户需求确定每个关系是否需要建立聚簇 如果需要 则应确定在该关系的哪些属性列上建立聚簇 3 建立聚簇的特定情况返回 建立聚簇的特定情况 当对一个关系的某些属性列的访问是该关系的主要应用 而对其它属性的访问很少或是次要应用时 可以考虑对该关系在这些属性列上建立聚簇 如果一个关系在某些属性列上的值重复率很高 则可以考虑对该关系在这些组属性列上建立聚簇 如果一个关系一旦装入数据 某些属性列的值很少修改 也很少增加或删除元组 则可以考虑对该关系在这些组属性列上建立聚簇 返回 索引设计 1 索引 Index 设计的目的 提高数据库访问效率 2 建立索引的几种情况返回 建立索引的几种情况 在主键属性列和外键属性列上通常都可分别建立索引 不仅有助于唯一性检查和完整性检查 而且可以加快连接查询的速度 以查询为主的关系可建立尽可能多的索引 对等值连接 但满足条件的元组较少的查询可考虑建立索引 如果查询可以从索引直接得到结果而不必访问关系 则对此种查询可建立索引 比如 为查询某各属性的MIN MAX AVG SUM COUNT等函数值 可在该属性列上建立索引 返回 分区设计 1 分区设计 数据库中的数据 包括关系 索引 聚簇 日志等在多个磁盘上存放位置的设计 其目的是提高系统性能 2 磁盘分区设计的一般原则 减少访问冲突 提高I O并行性 分散热点数据 均衡I O负担 保证关键数据快速访问 缓解系统瓶颈 返回 数据库的实施和维护 数据库的实施 根据数据库的逻辑结构设计和物理结构设计的结果 在具体RDBMS支持的计算机系统上建立实际的数据库模式 装入数据 并进行测试和试运行的过程 数据库的建立与调整数据库系统的试运行数据库系统的运行和维护返回 数据库的建立与调整 1数据库的建立2数据库的调整3应用程序编制与调试返回 数据库的建立 数据库模式的建立 DBA利用RDBMS提供的工具或DDL语言先定义数据库名 申请空间资源 定义磁盘分区等 然后定义关系及其相应属性 主键和完整性约束 再定义索引 聚簇 视图和用户访问权限等 数据加载 在数据库模式定义后 将数据装入数据库的过程 返回 数据库的调整 数据库的修改和调整一般由DBA完成 主要包括下面一些内容 修改或调整关系模式与视图 使之更能适应用户的需要 修改或调整

温馨提示

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

评论

0/150

提交评论