第七章 数据库设计
数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储还和管理数据。满足各种用户的应用要求,包括信息管理要求和数据操作要求。
信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象需要进行哪些操作,如查询,增删改统计等操作。
数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效率的运行环境。高效率的运行环境包括:数据库数据的存取效率,数据库存储空间的利用率,数据库系统运行管理的效率等都是高的。
数据库设计的特点:
“三分技术,七分管理,十二分基础数据”
结构(数据)设计和行为(处理)设计相结合
数据库设计的常用方法:
数据库设计的基本步骤:
需求分析
概念结构设计
逻辑结构设计
物理结构设计
数据库实施
数据库运行和维护
需求分析:
数据流图表达了数据和处理过程的关系;
数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
数据字典通常包括数据项、数据结构、数据流数据存储和处理过程5个部分。
其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流,数据存储的逻辑内容。
概念结构设计
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。
设计概念结构的常用四类方法:
自顶向下 即首先定义全局概念结构的框架,然后逐步细化。
自底向上 即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构。
逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构。
混合策略 即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略设计的各局部概念结构。
最常用的是自底向上方法。
概念结构是对现实世界的一种抽象,一般分为三类:分类 聚集 概括。
逻辑结构设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
一般分为三步:
将概念结构转换为一般的关系、网状、层级模型;
将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换
对数据模型进行优化。
关系数据模型的优化通常以规范化理论为指导。
关系数据模型的优化通常以规范化理论为指导。