赞
踩
需求分析就是分析用户的需求:是设计数据库的起点,结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。
需求分析的任务:由数据库设计人员和用户双方共同收集信息需求和处理需求;通过仔细分析;将这些需求按一定的规范要求以用户和设计人员都能理解接受的文档形式确定下来。
需求分析的三个步骤:
主要是了解企业的组织机构设置, 各个组织机构的职能、工作目标、职责范围,主要业务活动及大致工作流程,获得各个组织机构的业务数据及其相互联系的信息,为分析整理工作做好前期基础工作。
组织机构的情况: 组成, 职责, 作用, 现状, 问题,哪些业务适合计算机管理, 哪些不适合。
各个部门的业务活动现状(调查的重点): 输入和使用的数据, 加工处理方法, 数据的流程, 输出的数据及格式, 注意收集原始数据资料, 如台帐、单据、发票、收据、统计报表、文档、档案等。
外部要求:调查数据处理的响应时间、频度和如何发生的规则,以及经济效益的要求,安全性和完整性的要求。
协助用户明确对新系统的各种要求(调查的又一个重点): 信息要求, 处理要求, 安全性要求, 完整性要求, 未来规划中对数据的应用需求等。
确定新系统的边界: 哪些由计算机完成, 哪些由人工完成。
调查组织机构情况。
调查各部门的业务活动情况。
协助用户明确对新系统的各种要求,包括信息要求、处理要求、完全性与完整性要求。
确定新系统的边界。
跟班作业:通过亲身参加业务工作了解业务活动的情况。
开调查会:通过与用户座谈来了解业务活动情况及用户需求。
请专人介绍。
询问:对某些调查中的问题,可以找专人询问。
设计调查表请用户填写:调查表设计合理,则很有效。
查阅记录:查阅与原系统有关的数据记录。
目的是获得业务流程及业务与数据联系的形式描述。
采用数据流层次结构分析法(SA法)。
分析结果以数据流图(DFD图)表示, 再辅以数据字典(DD)作补充描述。
数据字典: 主要用于概念结构设计。
业务活动清单: 列出每一部门中最基本的工作任务。
其他需求清单: 如完整性、安全性、一致性要求。
结构化分析方法(SA方法)
SA方法从最上层的系统组织机构入手,采用自顶向下、逐层分解的方式分析系统。
SA步骤:
数据流图(DFD)
软件工程:可行性研究_并非任何问题都有简单明显的解决方法-CSDN博客
数据字典(DD)
软件工程:可行性研究_并非任何问题都有简单明显的解决方法-CSDN博客
概念结构设计:将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程。
目前应用最普遍的是实体关系(E-R)模型,它将现实世界的信息结构统一用属性、实体以及它们之间的联系来描述。
特点:
E-R方法概述: E-R方法,由P.P.S.Chen于1976年提出,是一个著名且实用的概念设计方法。这种方法通过属性、实体及实体间的联系(E-R图)描述现实世界的信息结构。
数据库:实体关系图(ER图)_数据库实体关系图-CSDN博客
E-R图提供了表示实体型、属性和联系的方法
一对一联系(1∶1)
如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1∶1。
一对多联系(1∶n)
如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1∶n。
多对多联系(m∶n)
如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体集B具有多对多联系,记为m∶n。
三个实体联系示意图:
单个实体型内的联系示意图:
联系的度:参与联系的实体型的数目
为了简化E-R图的处置,现实世界的事物能作为属性对待的,尽量作为属性对待。两条准则:
E-R图之间的冲突主要有三类:
属性域冲突,即属性值的类型、取值范围或取值集合不同。
同名异义,即不同意义的对象在不同的局部应用中具有相同的名字。
异名同义(一义多名),即同一意义的对象在不同的局部应用中具有不同的名字。
同一对象在不同应用中具有不同的抽象。
同一实体在不同分E-R图中所包含的属性个数和属性排列次序不完全相同。
实体间的联系在不同的E-R图中为不同的类型。
所谓冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其他联系导出的联系。
消除冗余主要采用分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。
并不是所有的冗余数据与冗余联系都必须加以消除,有时为了提高效率,不得不以冗余信息作为代价。
eg: 某个工厂物资管理的概念模型。物资管理涉及的实体及属性有:
仓库属性有:仓库号、面积、电话号码
零件属性有:零件号、名称、规格、单价、描述
供应商属性有:供应商号、姓名、地址、电话号码、账号
项目属性有:项目号、预算、开工日期
职工属性有:职工号、姓名、年龄、职称实体之间的联系有:
- 一个仓库可以存放多种零件,一种零件可以存放在多个仓库中,因此仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。
- 一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,因此仓库和职工之间是一对多的联系。
- 职工之间具有领导与被领导关系。即仓库主任领导若干保管员,因此职工实体型中具有一对多的联系。
- 供应商、项目和零件三者之间具有多对多的联系。即一个供应商可以供给若干项目多种零件,每个项目可以使用不同供应商供应的零件,每种零件可由不同供应商供给。
设计概念结构的四类方法:
数据抽象是概念设计的初步阶段。它涉及对现实世界中的实体(如人、事件、物体)进行处理,提取其共同的重要特征,忽视次要细节。这些特征通过各种概念被准确描述,形成特定的模型。
概念结构是对现实世界的一种抽象。
抽象的两种形式:
在数据库设计中,概念设计的目标是定义这些抽象对象的关系结构。
三种常用抽象:
通过这种优化,全局E-R图不仅能准确反映用户功能需求,还应保持清晰、高效的数据库设计原则。
逻辑结构设计的任务:将概念结构转换成特定DBMS所支持的数据模型的过程。关系数据库逻辑设计的结果是一组关系模式的定义 。
将概念结构转换为一般的关系、网状、层次模型;
将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;
对数据模型进行优化。
一个实体转换为一个关系模式
**原则:**关系的属性=实体型的属性;关系的码=实体型的码;关系模式的码(用下横线标出) = 实体型的码;
转换为:学生(学号,姓名,系别)
数据库逻辑设计的结果不是唯一的,得到初步数据模型后,还应该适当地修改、调整数据模型的结构,以进一步提高数据库应用系统的性能,这就是数据模型的优化。
★规范化过程可分为两个步骤:确定范式级别,实施规范化处理
eg.
课程关系模式内部存在下列数据依赖:课程号→课程名 课程号→学分 课程号→教室号
选修关系模式中存在下列数据依赖:(学号,课程号)→成绩
学生关系模式中存在下列数据依赖:学号→姓名 学号→性别 学号→出生日期 学号→所在系 学号→年级 学号→班级号
学生关系模式的学号与选修关系模式的学号之间存在数据依赖:选修.学号→学生.学号
课程关系模式的课号与选修关系模式的课号之间存在数据依赖:选修.课号→课程.课号
对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。
按照数据依赖的理论对关系模式进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式。
按照需求分析阶段得到的各种应用对数据处理的要求,分析对于这样的应用环境这些模式是否合适,确定是否要对它们进行合并或分解。
(并不是规范化程度越高的关系就越优。当一个应用的查询中经常涉及到两个或多个关系模式的属性时,系统必须经常地进行连接运算,而连接运算的代价是相当高的,可以说关系模型低效的主要原因就是做连接运算引起的,因此在这种情况下,第二范式甚至第一范式也许是最好的。)
对关系模式进行必要的合并和分解,提高数据操作的效率和存储空间的利用率。常用的两种分解方法是水平分解和垂直分解。
水平分解:把(基本)关系的元组分为若干子集合,定义每个子集合为一个子关系,以提高系统的效率。
垂直分解:把关系模式R的属性分解为若干子集合,形成若干子关系模式。
将概念模型转换为逻辑模型(数据库模式)后,还应根据局部应用的需求,结合具体DBMS的特点,设计用户的外(子)模式 。利用RDBMS提供的视图(View)功能设计。外模式,即用户可以直接访问的数据模式。
定义用户外模式时应该更注重考虑用户的习惯与方便。包括三个方面:
视图设计一般有3种设计次序:
自顶向下:先全局框架,然后逐步细化。
自底向上:先局部概念结构,再集成为全局结构。
由里向外:先核心结构,再向外扩张。
混合策略:1与2相结合,先自顶向下设计一个概念结构的框架,再自底向上为框架设计局部概念结构。
数据库的物理结构:数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于选定的数据库管理系统。
数据库的物理设计:为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。
确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构。
确定数据的存储结构。
决定数据在物理设备上如何存储(例如,使用何种文件系统或数据库存储引擎)。
设计数据的存取路径。
如何访问这些数据(例如,选择合适的索引结构)。
确定数据的存放位置。
确定系统配置。
对物理结构进行评价,评价的重点是时间和空间效率;若评价结果满足原设计要求,则可进入到物理实施阶段。否则,就需要重新设计或修改物理结构,有时甚至要返回逻辑设计阶段修改数据模型。
准备工作:
内容:
确定数据库物理结构主要指确定数据的存放位置和存储结构,
包括:确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。
影响数据存放位置和存储结构的因素:硬件环境和应用需求;要综合考虑存取时间、存储空间利用率和维护代价。(这三个方面常常是相互矛盾的。比如:消除一切冗余数据虽能够节约存储空间和减少维护代价,但往往会导致检索代价的增加。必须进行权衡,选择一个折中方案。)
数据库系统是多用户共享的系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。
数据库关系系统(DBMS)常用的存取方法有:
选择索引存取方法就是根据应用要求确定:对哪些属性列建立索引、对哪些属性列建立组合索引、对哪些索引要设计为唯一索引。
选贼索引存取方法的一般规则:
关系上定义的索引数过多会带来较多的额外开销,无论是维护还是查找。
选择Hash存取方法的规则:如果一个关系的属性主要出现在等值连接条件中或主要出现在等值比较选择条件中,而且满足下列两个条件之一
为了提高某个属性(或属性组)的查询速度,把这个或这些属性(称为聚簇码)上具有相同值的元组集中存放在连续的物理块上,称为聚簇。该属性(或属性组)称为聚簇码。许多关系型数据库管理系统都提供了聚簇功能。
4.3.1聚簇索引
建立聚簇索引后,基表中数据也需要按指定的聚簇属性值的升序或降序存放。也即聚簇索引的索引项顺序与表中元组的物理顺序一致。一个数据库可以建立多个聚簇,一个关系只能加入一个聚簇。
4.3.2聚簇索引的适用条件
很少对基表进行增删操作;很少对其中的变长列进行修改操作。
4.3.3聚簇索引的用图
4.3.4聚簇索引的局限性
4.3.5聚簇索引的适用范围
既适用于单个关系独立聚簇,也适用于多个关系组合聚簇
当通过聚簇码进行访问或连接是该关系的主要应用,与聚簇码无关的其他访问很少或者是次要的时,可以使用聚簇。尤其当SQL语句中包含有与聚簇码有关的ORDER BY, GROUP BY, UNION, DISTINCT等子句或短语时,使用聚簇特别有利,可以省去或减化对结果集的排序操作
4.3.6设计候选聚簇
常在一起进行连接操作的关系可以建立组合聚簇;
如果一个关系的一组属性经常出现在相等比较条件中,则该单个关系可建立聚簇;
如果一个关系的一个(或一组)属性上的值重复率很高,则此单个关系可建立聚簇。
检查候选聚簇索引中的关系,取消不必要的关系
从聚簇中删除经常进行全表扫描的关系
从聚簇中删除更新操作远多于连接操作的关系
从聚簇中删除重复出现的关系
原则:根据应用情况将易变部分与稳定部分分开存放,经常存取部分与存取频率较低部分分开存放。
可以将日志文件与数据库对象(表、索引等)放在不同的磁盘以改进系统的性能。
可以将比较大的表分别放在两个磁盘上,以加快存取速度,这在多用户环境下特别有效。
数据库数据备份、日志文件备份等由于只在故障恢复时才使用,而且数据量很大,可以考虑存放在磁带上。
确定系统配置:
系统都为这些变量(同时使用数据库的用户数、同时打开的数据库对象数、内存分配参数、缓冲区分配参数(使用的缓冲区长度、个数)、存储分配参数 、物理块的大小、物理块装填因子、时间片大小、数据库的大小、锁的数目等)赋予了合理的缺省值。在进行物理设计时需要根据应用环境确定这些参数值,以使系统性能最优。
在物理设计时对系统配置变量的调整只是初步的,要根据系统实际运行情况做进一步的调整,以切实改进系统性能。
评价物理数据库的方法完全依赖于所选用的DBMS 。
评价内容:
数据库实施阶段主要工作:
数据装载方法:人工方法;计算机辅助方法
数据筛选、输入、转换(工具)、校验,确保正确
数据库的试运行:应用程序调试完成,并且已有一小部分数据入库后,就可以开始对数据库系统进行联合调试,也称数据库的试运行。
主要工作包括:
数据库物理设计阶段在评价数据库结构估算时间、空间指标时,作了许多简化和假设,忽略了许多次要因素,因此结果必然很粗糙。
数据库试运行则是要实际测量系统的各种性能指标(不仅是时间、空间指标),如果结果不符合设计目标,则需要返回物理设计阶段,调整物理结构,修改参数;有时甚至需要返回逻辑设计阶段,调整逻辑结构。
重新设计物理结构甚至逻辑结构,会导致数据重新入库
由于数据入库工作量实在太大,所以可以采用分期输入数据的方法
先输入小批量数据供先期联合调试使用待试运行基本合格后再输入大批量数据逐步增加数据量,逐步完成运行评价。
在数据库试运行阶段,系统还不稳定,硬、软件故障随时都可能发生
系统的操作人员对新系统还不熟悉,误操作也不可避免
因此必须做好数据库的转储和恢复工作,尽量减少对数据库的破坏
在数据库运行阶段,对数据库经常性的维护工作主要是由数据库管理员完成的,包括:
数据库管理员要针对不同的应用要求制定不同的转储计划,定期对数据库和日志文件进行备份。
一旦发生介质故障,即利用数据库备份及日志文件备份,尽快将数据库恢复到某种一致性状态。
初始定义
修改定义
在数据库运行过程中,数据库管理员必须监督系统运行,对监测数据进行分析,找出改进系统性能的方法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。