数据库设计概述及需求分析

数据库设计概述

数据库设计
数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,
使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。
信息管理要求: 在数据库中应该存储和管理哪些数据对象 。
数据操作要求: 对数据对象需要进行哪些操作,如查询、增、删、改、统计等操作。

数据库设计的目标
为用户和各种应用系统提供一个信息基础设施和高效率的运行环境 。
高效率的运行环境:

  • 数据库数据的存取效率高
  • 数据库存储空间的利用率高
  • 数据库系统运行管理的效率高

数据库设计的基本步骤

  1. 需求分析

  2. 概念结构设计
    通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型

  3. 逻辑结构设计
    将概念结构转换为某个数据库管理系统所支持的数据模型,并对其进行优化

  4. 物理结构设计
    为逻辑数据结构选取一个最适合应用环境的物理结构
    包括存储结构和存取方法

  5. 数据库实施
    根据逻辑设计和物理设计的结果构建数据库
    编写与调试应用程序
    组织数据入库并进行试运行

  6. 数据库运行和维护
    经过试运行后即可投入正式运行
    在运行过程中必须不断对其进行评估、调整与修改

需求分析和概念设计独立于任何数据库管理系统。
逻辑设计和物理设计与选用的数据库管理系统密切相关
image

image

具体来讲各个阶段的工作是:
image
需求分析阶段:
综合各个用户的应用需求

概念设计阶段:
形成独立于机器特点,独立于各个数据库管理系统产品的概念模式 (E-R图)

逻辑设计阶段:

  1. 首先将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式
  2. 然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图(View),形成数据的外模式

物理设计阶段:
根据数据库管理系统特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式

需求分析

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

调查的重点是“数据”和“处理”,获得用户对数据库的要求

  1. 信息要求
    用户需要从数据库中获得信息的内容与性质
    由信息要求可以导出数据要求,即在数据库中需要存储哪些数据

  2. 处理要求
    用户要完成的处理功能;对处理性能的要求

  3. 安全性与完整性要求

分析方法: 结构化分析方法(简称SA方法)
SA方法从最上层的系统组织机构入手,采用自顶向下、逐层分解的方式分析系统。
对用户需求进行分析与表达后,需求分析报告必须提交给用户,征得用户的认可。
image

数据字典

数据字典的内容
1数据项,2数据结构,3数据流,4数据存储,5处理过程。

数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。
数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。

注意:

  1. 数据字典是关于数据库中数据的描述,即元数据,不是数据本身
  2. 数据字典在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善
  3. 数据字典是进行详细的数据收集和数据分析所获得的主要结果
  4. 注意和关系数据库管理系统中数据字典的区别和联系

数据项
是对数据项的描述,是不可再分的数据单位。
数据项描述={

  • 数据项名,数据项含义说明,别名,
  • 数据类型,长度,取值范围,取值含义,
  • 与其他数据项的逻辑关系,
  • 数据项之间的联系}

“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是设计 数据检验功能的依据。
可以用关系规范化理论为指导,用数据依赖的概念分析和表示数据项之间的联系。

数据结构
数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。

数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}

数据流
是数据结构在系统内传输的路径。

数据流描述={

  • 数据流名,说明,数据流来源,
    数据流来源:说明该数据流来自哪个过程

  • 数据流去向,组成:{数据结构},
    数据流去向:说明该数据流将到哪个过程去

  • 平均流量,高峰期流量}
    平均流量:在单位时间(每天、每周、每月等)里的传输次数
    高峰期流量:在高峰时期的数据流量

数据存储
是数据结构停留或保存的地方,也是数据流的来源和去向之一。

数据存储描述={

  • 数据存储名,说明,编号,

  • 输入的数据流 ,输出的数据流,
    输入的数据流:数据来源
    输出的数据流:数据去向

  • 组成:{数据结构},数据量,

  • 存取频度,存取方式}
    存取频度:每小时、每天或每周存取次数,每次存取的数据量等信息
    存取方法:批处理 / 联机处理;检索 / 更新;顺序检索 / 随机检索

处理过程
数据字典中只需要描述处理过程的说明性信息,具体处理逻辑一般用判定表或判定树来描述。

处理过程描述={

  • 处理过程名,说明,
  • 输入:{数据流},输出:{数据流},
  • 处理:{简要说明}}

简要说明:说明该处理过程的功能及处理要求

  • 功能:该处理过程用来做什么
  • 处理要求:处理频度要求,如单位时间里处理多少事务,多少数据量、响应时间要求等
  • 处理要求是后面物理设计的输入及性能评价的标准

数据库的逻辑结构设计和物理设计

posted @ 2022-06-17 21:33  kingwzun  阅读(1048)  评论(0编辑  收藏  举报