
数据库设计的六阶段:数据库的设计过程
6.1 数据库设计的六阶段
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术。具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。这个问题是数据库在应用领域的主要研究课题。数据库设计既是一项涉及多学科的综合性技术,又是一项庞大的工程项目。有人讲"三分技术,七分管理,十二分基础数据"是数据库建设的基本规律,这是有一定道理的。技术与管理的界面(称之为"干件")十分重要。数据库建设是硬件、软件和干件的结合。这是数据库设计的特点之一。数据库的设计应该和应用系统设计相结合,也就是说,整个设计过程中要把结构(数据)设计和行为(处理)设计紧密结合起来。这是数据库设计的特点之二。
6.1.1 数据库的设计过程
按照规范的设计方法,一个完整的数据库设计一般分为以下六个阶段:
⑴ 需求分析:分析用户的需求,包括数据、功能和性能需求;
⑵ 概念结构设计:主要采用E-R模型进行设计,包括画E-R图;
⑶ 逻辑结构设计:通过将E-R图转换成表,实现从E-R模型到关系模型的转换;
⑷ 数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存取路径;
⑸ 数据库的实施:包括编程、测试和试运行;
⑹ 数据库运行与维护:系统的运行与数据库的日常维护。
数据库设计的这六个阶段,用图6-1-1表示如下:
图6-1-1:数据库的设计过程
对于图6-1-1,需要说明的是:
⑴ 概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。从理论上讲,设计逻辑结构应该选择最适宜于相应概念结构的数据模型,然后对支持这种数据模型的各种DBMS进行比较,从中选出最合适的DBMS。但实际情况往往是已经给定了某种DBMS,设计人员没有其他的选择余地。目前DBMS产品一般支持关系、网状、层次三种模型中的一种,对某一种数据模型,各个机器系统又有许多不同的限制,提供不同的环境与工具。所以设计逻辑结构时一般要分三步进行:
① 将概念结构转换为一般的关系、网状、层次模型;
② 将转换的关系、网状、层次模型向特定的DBMS支持下的数据模型转换;
③ 对数据模型进行优化;
⑵ 在数据库的逻辑结构设计完成之后,要对数据模型进行优化。因为数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据模型的结构,这就是数据模型的优化。关系数据模型的优化通常以规范化理论为指导,优化时可采用在第五章"完整性约束与模式分解"的5.8.3小节中介绍的模式分解方法对关系模式进行规范化。如果在优化过程中发现数据库的逻辑结构有诸多问题,则需要返回到上一层修改或重新进行数据库的逻辑结构设计;
⑶ 其实将概念模型转换为全局逻辑模型之后,还应该根据局部应用的需求,结合具体DBMS的特点,设计用户的外模式,这一点在图6-1-1中没有体现。目前关系数据库管理系统一般都提供了视图的概念,可以利用视图来设计更符合局部用户需要的用户外模式。定义数据库全局模式主要是从系统的时间效率、空间效率、易维护等角度出发。由于用户外模式与模式是相对独立的,因此在定义用户外模式时可以注重考虑用户的习惯与方便,包括:
① 使用更符合用户习惯的别名;
② 可以对不同级别的用户定义不同的VIEW,以保证系统的安全性;
③ 简化用户对系统的使用;
⑷ 在数据库的物理结构设计完成之后,就可以针对系统常用的操作进行性能预测,评价所做的设计。如果发现目前的设计不能保证系统常用操作的性能要求的话,就需要返回到上两层重新调整数据库的逻辑结构设计;
当评价一个DBMS产品时,性能指标是一个主要的因素。一个DBMS是一个复杂的软件,而且不同的厂商可能将它们的系统定位于不同的市场。为此,他们对系统的某些特定部分进行更多的优化,或者选择不同的设计。例如,一些系统要求有效地运行复杂查询,而另一些系统用来在一秒中内运行很多简单事务。在每一类系统中,都有很多竞争产品。为了帮助用户在选择DBMS的过程中找到适合自身的系统,人们提出了几个性能基准测试。它们之中包括度量特定一类应用性能的基准测试和度量一个DBMS完成各种操作的好坏的基准测试(如,Wisconsin Benchmark)。
基准测试应该是可移植的、易于理解的,并且可以很自然地就扩展到大的问题实例上。它们应该能够度量峰值性能(如,每秒中处理事务的个数,即tps),同时也能度量在给定应用域内工作负载的性能价格比(如,$/tps)。现在已经建立了事务处理委员会(简称TPC)来定义事务处理和数据库系统的基准测试。其他著名的基准测试已经被学术研究者和工业组织提了出来。属于特定厂商的基准测试对于比较不同的系统没有多大的用处(尽管它们可能在特定工作负载下判断一个给定系统的好坏是有用的)。
在万维网上,通过URL可以获得联机版本的所有TPC基准程序描述以及基准程序结果。
⑸ 完成数据库的物理设计之后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序将数据库的逻辑设计和物理设计的结果严格地描述出来,成为DBMS可以接受的源代码。再经过调试产生目标模式,然后就可以组织数据入库了,这就是数据库实施阶段,即数据库的物理实现。数据库的物理实现包括两项重要的工作:一是数据载入;二是应用程序的编码和调试。
⑹ 在完成数据库的物理实现之后,进行系统的试验性运行。这一阶段实际运行数据库应用程序,执行对数据库的各种操作,测试应用程序的功能是否满足设计要求。如果不满足,对应用程序部分则要修改、调整,直到达到设计要求为止。如果在运行过程中发现系统的性能不满足要求,就需要返回到上一层,重新调整数据库的物理设计。
⑺ 数据库试运行合格后,数据库开发工作就基本完成,即可投入正式运行了。但是,由于应用环境在不断变化,数据库运行过程中物理存储也会不断变化,因此对数据库设计进行评价、调整、修改等维护工作是一个长期的任务。也是设计工作的继续和提高。在数据库运行阶段,对数据库的经常性的维护工作主要是由DBA完成的,它包括:
① 数据库的转储和恢复;
② 数据库的安全性和完整性控制;
③ 数据库性能的监督、分析和改造;
④ 数据库的重组织与重构造;
正像我们所强调的那样,这个设计步骤既是数据库的设计过程,也包括了数据库应用系统的设计过程。在设计过程中把数据库的设计和对数据库中数据处理的设计紧密结合起来,将这两方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计。事实上,如果不了解应用环境对数据的处理要求,或没有考虑如何去实现这些处理要求,是不可能设计一个良好的数据库结构的!
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
人工智能对CDA数据分析领域的影响 人工智能对 CDA(Certified Data Analyst,注册数据分析师)数据分析领域的影响是全方位、多层 ...
2025-08-07SPSS 语法使用详解 在当今数据驱动的时代,SPSS( Statistical Package for the Social Sciences)作为一款功能强大的统计分析软 ...
2025-08-07SASEM 决策树:理论与实践应用 在复杂的决策场景中,如何从海量数据中提取有效信息并制定科学决策,是各界关注的焦点。SASEM 决 ...
2025-08-07CDA含金量分析 在数字经济与人工智能深度融合的时代,数据驱动决策已成为企业核心竞争力的关键要素。CDA(Certified Data Analys ...
2025-08-07大数据时代对定性分析的影响 在大数据时代,海量、多样、高速且低价值密度的数据充斥着我们的生活与工作。而定性分析作为一 ...
2025-08-07K-S 曲线、回归与分类:数据分析中的重要工具 在数据分析与机器学习领域,K-S 曲线、回归和分类是三个核心概念与工具,它们各 ...
2025-08-07CDA 数据分析师考试全解析 在当今数字化时代,数据已成为企业发展的核心驱动力,数据分析师这一职业也愈发受到重视。CDA 数据分 ...
2025-08-07大数据时代的隐患:繁荣背后的隐忧 当我们在电商平台浏览商品时,系统总能 “精准” 推送心仪的物品;当我们刷短视频时,算法 ...
2025-08-07解析 F 边界检验:协整分析中的实用工具 在计量经济学的时间序列分析中,判断变量之间是否存在长期稳定的均衡关系(即协整关系) ...
2025-08-07CDA 数据分析师报考条件详解:迈向专业认证的指南 在数据分析行业蓬勃发展的当下,CDA 数据分析师认证成为众多从业者提升专业 ...
2025-08-07通过 COX 回归模型诊断异常值 一、COX 回归模型概述 COX 回归模型,又称比例风险回归模型,是一种用于生存分析的统计方法。它能 ...
2025-08-07评判两组数据与初始数据准确值的方法 在数据分析与研究中,我们常常会面临这样的情况:需要对通过不同方法、不同过程得到的两组 ...
2025-08-07CDA 数据分析师行业标准:构建数据人才的能力坐标系 在数据驱动决策成为企业核心竞争力的时代,CDA(数据分析师)行业标准作为 ...
2025-08-07反向传播神经网络:突破传统算法瓶颈的革命性力量 在人工智能发展的历史长河中,传统算法曾长期主导着数据处理与模式识别领域 ...
2025-08-07MySQL 统计连续每天数据:从业务需求到技术实现 在数据分析场景中,连续日期的数据统计是衡量业务连续性的重要手段 —— 无论是 ...
2025-08-07抖音数据分析师:驱动平台增长的幕后推手 在抖音这个日活用户数以亿计的超级平台上,每一次用户的滑动、点赞、评论,每一条 ...
2025-08-07基于 SPSS 的中介效应分析结果解读:揭示变量间的隐性关联 在社会科学与自然科学研究中,变量之间的关系往往并非简单的直接作用 ...
2025-08-07正态分布与偏态分布的核心区别解析 在统计学中,数据的分布形态是理解数据特征、选择分析方法的基础。正态分布与偏态分布作为两 ...
2025-08-07CDA 一级考试内容详解 CDA(Certified Data Analyst)即数据分析师认证,一级考试作为该认证体系中的入门级别考试,主要面向零基 ...
2025-08-07中介分析的 SPSS 结果解读:从原理到实践 在社会科学、医学、心理学等领域的研究中,变量之间的关系往往并非简单的直接影响,而 ...
2025-08-07