数据库设计-7

七. 数据库设计

7.1 数据库设计概述

  • 广义:是数据库及其应用系统的设计,即设计整个数据库应用系统

    狭义:是设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统的一部分

  • 数据库设计

    是指对于一个给定的应用环境,设计一个优良的数据库逻辑模式物理结构,并据此建立数据库及其应用系统,使之能够有效的存储和管理数据,满足各种用户应用需求,包括信息管理要求和数据处理要求

    • 信息管理要求:在数据库中存储和管理需要的数据对象
    • 数据处理要求:对数据对象需要进行的处理:查询、增删改、统计和分析等。

7.1.1 数据库设计的特点

  • 基本规律

    • 技术、管理、基础数据
    • 管理
    • 基础数据:数据的收集、整理、组织和不断更新
  • 结构(数据)设计和行为(处理)设计相结合

    • 将数据库结构设计和数据处理设计密切结合

7.1.2 数据库设计方法

  • 手工设计法
  • 规范设计法
    • 典型方法:新奥尔良法
    • 基于E-R模型的设计方法
  • 数据库设计工具

7.1.3 数据库设计的基本步骤

  • 数据库设计可以分为六个阶段

    • 需求分析 (独立于任何数据库管理系统)是基础
    • 概念结构设计(独立于任何数据库管理系统)是关键
    • 逻辑结构设计(与选用的数据库管理系统密切相关)把概念结构转换成数据模型
    • 物理结构设计(与选用的数据库管理系统密切相关)
    • 数据库实施
    • 数据库运行和维护

7.1.4 数据库设计过程中的各级模式

7.2 需求分析

  • 需求分析:分析用户的需求,是数据库设计的起点

  • 重要性

    结果是否准确的反映了用户的实际要求,将直接影响到后面各个阶段的设计,并将影响到设计结果能否合理和实用


7.2.1 需求分析的任务

  • 调查的重点是“数据”和“处理”,获得用户对数据库的要求
    • 信息要求
    • 处理要求
    • 安全性和完整性要求

7.2.2 需求分析的方法

7.2.3 数据字典

  • 数据字典

    数据字典是关于数据库中数据的描述,称为元数据

    它不是数据本身,而是数据的数据

  • 数据字典在需求分析阶段建立,在数据库设计中不断修改,充实,完善

  • 数据字典是进行详细的数据收集和分析所得到的主要结果

  • 和dbms数据字典有区别

  • 数据字典的内容

    • 数据项
    • 数据结构
    • 数据流
    • 数据存储
    • 处理过程
  • 数据项是数据的最小组成单位

  • 若干个数据项可以组成一个数据结构

  • 通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容

  1. 数据项

    • 数据项是不可再分的数据单位
    • 数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的关系}
    • 关系规范化理论为指导,用数据依赖的概念分析和抽象了数据项之间的联系——函数依赖
    • 取值范围 与其他数据项的逻辑关系 定义了数据的完整性约束条件,是模式设计、完整性检查条件、触发器、存储过程的依据
  2. 数据结构

    • 数据结构反映了数据之间的组合关系
    • 一个数据结果可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成
    • 数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}
  3. 数据流

    • 数据流是数据结构在系统内部传输的路径
    • 数据流的描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}
    • 数据流来源:说明该数据流来自那个处理过程/数据存储
  4. 数据存储

    • 是数据结构停留或保存的地方,也是数据流的来源和去向之一
    • 数据存储描述={数据存储名,说明,编号,输入的数据流,输出的数据流,组成:{数据结构},数据量,存取频度,存取方式}
  5. 处理过程

    • 具体处理逻辑一般用判定表或判定树来描述
    • 数据字典中只需要描述处理过程的说明性信息
    • 处理过程描述{处理过程名,说明,输入:{数据流},输出:{数据流},处理:{简要说明}}

7.3 概念结构设计

7.3.1 概念模型

  • 将需求分析得到的用户需求抽象为信息结构即概念模型的过程

  • 概念模型就是现实世界的一个真实模型,是各种数据模型的共同基础,他比数据模型更独立于机器,更抽象,从而更稳定

  • 回顾

    • 实体:客观存在并且可以相互区别的事物称为实体,可以是具体 的人、事、物品、或抽象的概念、

    • 属性:实体所具有的某一特性叫做属性,一个实体可以由若干个属性刻画

    • 码:唯一标识实体的属性集称为码

    • 实体型:用实体名及其属性名集合来抽象和刻画同类实体称为实体型

    • 实体集:同一类型实体的集合称为实体集

    • 联系

      • 实体内部的联系:是指组成实体的各属性之间的联系
      • 实体之间的联系:通常是指不同实体集之间的联系

      实体之间的联系有一对一(1:1)

      ​ 一对多(1:m)

      ​ 多对多(m:n)

      等多种类型。

      概念模型的一种表示方法:实体-联系方法

      • 用E-R图来描述现实世界 的概念模型
      • E-R图的方法也称为E-R模型

7.3.2 E-R模型

7.4 逻辑结构设计

  • 把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的逻辑结构

  • 目前主要使用关系模型,关系模型的逻辑结构是一组关系模式的集合

7.4.2 数据模型的优化

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

  • 得到初步数据模式后,还应当适当的修改、调整数据库逻辑结构,以进一步提高数据库应用系统的性能,这就是数据模型的优化

  • 关系数据库的优化通常以规范化理论为指导

  • 方法:

    1. 确定函数依赖

    2. 对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系

    3. 按照数据依赖的理论对关系模式进行分析,考察是否存在部分函数依赖、传递函数依赖,多值依赖等,确定各关系模式分别属于第几范式

    4. 按照需求分析阶段得出的各种应用对数据处理的要求,分析对于这样的应用环境这些模式是否合适,确定是否要对他们进行合并或者分解

7.4.3 设计用户子模式

  • 数据库模式:全局模式
  • 用户子模式:视图机制
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值