zoukankan      html  css  js  c++  java
  • 数据库系统原理(第三章数据库设计 )

    一、数据库设计概述

    数据库的生命周期

     数据库设计的目标:

    • 满足应用功能需求(存、取、删、改),
    • 良好的数 据库性能(数据的高效率存取和空间的节省 共享性、完整性、一致性、安全保密性)

    数据库设计的内容

     数据库设计的方法

    • 直观设计法( 最原始的数据库设计方法)
    • 规范设计法:(新奥尔良设计方法:需求分析、概念结构设计、逻辑结构设计、物理结构设计 ; 基于E-R模型的数据库设计方法 ;基于第三范式的设计方法,是一类结构化设计方法)
    • 计算机辅助设计法( 辅助软件工程工具)

    数据库设计的过程

    二、数据库设计的基本步骤

    需求分析(数据库设计的起点)

    • 目标:是了解与分析用户的信息及应用处理的要求,并将结果按一定格式整理 而形成需求分析报告。
    • 作用:该分析报告是后续概念设计、逻辑设计、物理设计、数据库建立与维护的依据。

    需求分析的步骤:

    • 确定数据库范围(数据库的第一项工作)
    • 应用过程分析---了解并分析数据与数据处理间的关系
    • 收集与分析数据
    • 编写需求分析报告

    ********************确定数据库范围(数据库的第一项工作)**************

    (1)有效地利用计算机设备及数据库系统的潜在能力; (2)提高数据库的应变能力; (3)避免应用过程中对数据库做太多或太大的修改; (4)延长数据库的生命周期。

    ********************应用过程分析********************************************

    应用过程分析的结果是数据库结构设计的重要依据

    (1)用到哪些数据; (2)数据使用的顺序; (3)对数据作何处理和处理的策略以及结果;

    ******************************收集与分析数据*******************************

    数据收集与分析的任务是了解并分析数据的组成格式及操作特征,每个数 据元素的语义及关系等,并将它们收集起来整理归档。

    分析内容:

    静态结构 --- 不施加应用操作于其上时数据的原始状况(数据的( 静态结构 )是指不施加应用操作于其上时数据的原始状况, 这可通过数据分类表和数据元素表进行说明)

    • 数据分类表:用于数据的总体描述
    • 数据元素表:指通常意义下的数据项或属性

        

    动态结构 ---将应用操作施加于数据之上后数据的状况

    • 任务分类表:一个任务指为完成某一特定处理功能的相对独立的操作序列
    • 数据特征操作表:用以描述任务和数据之间的关系,它包括不同任务对数据执行不 同操作的频率

        

    数据约束 ---使用数据时的特殊要求

    • 1)数据的安全保密性
    • 2)数据的完整性
    • 3)响应时间
    • 4)数据恢复

    **************************编写需求分析报告*****************************

    概念结构设计(概念模型):独立于任何软件与硬件  主要目标:最大限度的满足应用需求;关系的规范化理论主要用于概念设计阶段。

    • 实体分析法 (自顶向下法)
    • 属性综合法 (自底向上法)
    • 概念模型 (自顶向下) 

    逻辑结构设计:目标将概念模型转换为等价的、并为特定DBMS所支持数据模 型的结构;在基本表的基础上再建立必要的视图,形成数据的外模式

    物理设计:具体任务主要是确定数据库在存储设备上的存储结构及存取方法, 因DBMS的不同还可能包括建立索引和聚集,以及物理块大小、缓冲区个 数和大小、数据压缩的选择等。

    数据库实施:

    • 加载数据(收集、分类、整理、校验、输入等)  输入与校验 不是由人工完成
    • 应用程序 设计
    • 数据库试 运行:有利于工作人员掌握并熟悉系统; 有利于正式运行时避免人为的操作不当等损害。

    数据库运行与维护:保证数据库的正常运行;系统维护中最困难的工作是 数据库重组与重构。

     三、关系数据库设计方法

    关系数据库设计过程与各级模式

     

     *************************E-R图的表示方法*********************************

    概念结构设计方法:

    1、局部信息结构设计   

    •   确定局部范围:局部范围主要依据需求分析报告中标明的用户视图范围来确定;往往与子模式范围相对应。
    •        选择实体:数据分类表是选择实体的直接依据。 实体选择的最大困难是如何区别实体与属性
    •   选择实体 的关键字 属性:实体的存在依赖于其关键字的存在。
    •   确定实体 间联系:数据间的联系必须在概念设计时确定。
    •   确定实体 的属性:属性分为标识属性和说明属性

    2、全局信息结构设计

    3、逻辑结构设计方法

    • 将E-R图转换为关系模型
    • 对关系数据模型进行优化
    • 设计面向用户的外 模式

    E-R图向关系模型的转换

    • 一个实体型转换为一个关系模式,实体的属性作为关系的属性,实体的码作为关系的码
    • 一个一对一联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并
    • 一个一对多联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并
    • 一个多对多联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为 关系的属性
    • 三个或以上实体间的一个多元联系可以转换为一个关系模式
    • 具有相同码的关系模式可合并

    数据模型的优化:

    数据库逻辑设计的结果,不是唯一的。

    • 1)确定各属性间的函数依赖关系
    • 2)对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。
    • 3)判断每个关系模式的范式,根据实际需要确定最合适的范式。
    • 4)按照需求分析阶段得到的处理要求,分析这些模式对于这样的应用环境 是否合适,确定是否要对某些模式进行合并或分解。
    • 5)对关系模式进行必要的分解,提高数据操作的效率和存储空间的利用率

    设计用户子模式

    • 1)可以通过视图机制在设计用户视图时,重新定义某些属性的别名,使 其更符合用户的习惯,以方便使用。
    • 2)可以对不同级别的用户定义不同的视图,以保证系统的安全性。
    • 3)简化用户对系统的使用。

    物理设计方法

    • 建立索引(逻辑连接  ):静态建立 索引 、  动态建立 索引
    • 建立聚集(物理聚集:聚集是将相关数据集中存放的物理存储技术。 数据聚集结构的一种有效方式是块结构方式。 数据聚集可在一个或多个关系上建立。

    各个局部ER图的冲突

  • 相关阅读:
    iOS 面试题搜集
    iOS 常用第三方类库、完整APP示例
    iOS 键盘遮挡输入 解决办法
    iOS UIColor RGB HEX
    iOS APP性能优化
    iOS Swift 数组 交换元素的两种方法
    iOS CoreData primitive accessor
    iOS Start developing ios apps (OC) pdf
    iOS 传值方式
    iOS IB_DESIGNABLE IBInspectable @IBDesignable @IBInspectable 加速UI开发
  • 原文地址:https://www.cnblogs.com/jalja/p/11595375.html
Copyright © 2011-2022 走看看