微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 数据库系统设计全面介绍(上)

数据库系统设计全面介绍(上)

时间:11-30 来源: 点击:

  数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

  数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

  在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。

  一、数据库和信息系统

  (1)数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的

  功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。

  (2)数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在。

  (3)数据库设计是信息系统开发和建设的重要组成部分。

  (4)数据库设计人员应该具备的技术和知识:

  数据库的基本知识和数据库设计技术

  计算机科学的基础知识和程序设计的方法和技巧

  软件工程的原理和方法

  应用领域的知识

  二、数据库设计的特点

  数据库建设是硬件、软件和干件的结合

  三分技术,七分管理,十二分基础数据

  技术与管理的界面称之为"干件"

  数据库设计应该与应用系统设计相结合

  结构(数据)设计:设计数据库框架或数据库结构

  行为(处理)设计:设计应用程序、事务处理等

  结构和行为分离的设计

  传统的软件工程忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计的决策早期的数据库设计致力于数据模型和建模方法研究,忽视了对行为的设计

  如图:

  
 三、数据库设计方法简述

  手工试凑法

  设计质量与设计人员的经验和水平有直接关系

  缺乏科学理论和工程方法的支持,工程的质量难以保证

  数据库运行一段时间后常常又不同程度地发现各种问题,增加了维护代价

  规范设计法

  手工设计方

  基本思想

  过程迭代和逐步求精

  规范设计法(续)

  典型方法:

  (1)新奥尔良(New Orleans)方法:将数据库设计分为四个阶段

  S.B.Yao方法:将数据库设计分为五个步骤

  I.R.Palmer方法:把数据库设计当成一步接一步的过程

  (2)计算机辅助设计

  ORACLE Designer 2000

  SYBASE PowerDesigner

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

  数据库设计的过程(六个阶段)

  1.需求分析阶段

  准确了解与分析用户需求(包括数据与处理)

  是整个设计过程的基础,是最困难、最耗费时间的一步

  2.概念结构设计阶段

  是整个数据库设计的关键

  通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型

  3.逻辑结构设计阶段

  将概念结构转换为某个DBMS所支持的数据模型

  对其进行优化

  4.数据库物理设计阶段

  为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)

  5.数据库实施阶段

  运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果

  建立数据库,编制与调试应用程序,组织数据入库,并进行试运行

  6.数据库运行和维护阶段

  数据库应用系统经过试运行后即可投入正式运行。

  在数据库系统运行过程中必须不断地对其进行评价、调整与修改

  设计特点:

  在设计过程中把数据库的设计和对数据库中数据处理的设计紧密结合起来将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计

  设计过程各个阶段的设计描述:

  如图:

  五、数据库各级模式的形成过程

  1.需求分析阶段:综合各个用户的应用需求

  2.概念设计阶段:形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)

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

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

  六、数据库设计技巧

  1. 设计数据库之前(需求分析阶段)

  1) 理解客户需求,询问用户如何看待未来需求变化。让客户解释其需求,而且随着开发的继续,还要经常询问客户保证其需求仍然在开发的目的之中。

  2) 了解企业业务可以在以后的开发阶段节约大量的时间。

  3) 重视输入输出。

  在定义数据库表和字段需求(输入)时,首先应检查现有的或者已经设计出的报表、查询和视图(输出)以决定为了支持这些输出哪些是必要的表和字段。

  举例:假如客户需要一个报表按照邮政编码排序、分段和求和,你要保证其中包括了单独的邮政编码字段而不要把邮政编码糅进地址字段里。

  4) 创建数据字典和ER 图表

  ER 图表和数据字典可以让任何了解数据库的人都明确如何从数据库中获得数据。ER图对表明表之间关系很有用,而数据字典则说明了每个字段的用途以及任何可能存在的别名。对SQL 表达式的文档化来说这是完全必要的。

  5) 定义标准的对象命名规范

  数据库各种对象的命名必须规范。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top