欢迎来到天天文库
浏览记录
ID:62506315
大小:258.79 KB
页数:6页
时间:2021-05-10
《数据库生命周期.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、百度文库-让每个人平等地提升自我6百度文库-让每个人平等地提升自我6百度文库-让每个人平等地提升自我数据库的生命周期主要分为四个阶段:需求分析、逻辑设计、物理设计、实现维护。数据库的物理设计,包括索引的选择与优化、数据分区等内容。这些内容也非常丰富,而且可以自成体系,园子里也有很多好文章,故在本系列中不作主要关注。本文最后将给出一些链接供大家参考。1)来看看每一小步包含阶段1需求分析数据库设计与软件设计一样首先需要进行需求分析。阶段2逻辑设计我们需要与数据的创造者和使用者进行访谈。式的需求文档。数据库生命
2、周期的四个阶段又能细分为多个小步骤,我们配合图(的内容。需求文档中需包含:需要处理的数据;数据的自然关系;数据库实现的硬件环境、软件平台等;对访谈获得的信息进行整理、分析,并撰写正图(2)阶段1需求分析使用ER或UML建模技术,创建概念数据模型图,展示所有数据以及数据间关系。最终概念数据模型必须被转化为范式化的表。数据库逻辑设计主要步骤包括:6百度文库-让每个人平等地提升自我6百度文库-让每个人平等地提升自我a)概念数据建模在需求分析完成后,使用ER图或UML图对数据进行建模。使用ER图或UML图描述需求
3、中b)多视图集成会产生数据和关系的多个视图。这些视图必须进行当在大型项目设计或多人参与设计的情况下,化简与集成,消除模型中的冗余与不一致,最终形成一个全局的模型。多视图集成可以使用ER建模语义中的同义词(synonyms)、聚合(aggregation)、泛化(generalization)等方法。多视图集eg:集成零售商ER图与客户ER图成在整合多个应用的场景中也非常重要。零售商ER图如图(3)所示。客户视角,产品/客户数据库的ER模型简图如下:R图(4)以客户为关注点绘制的E注:现在市面上有许多辅助建
4、模工具可以绘制(4)相同语义的ER图如下:ER图。使用Sybase的PowerDesigner绘制与图其标记法与图(4)中略有不同,这将在今后的博文中加以说明。这里需要指岀的是辅助软件的使用不是设计的核心,大家不要被这些工具迷惑。将主要使用手绘。只要掌握了ER图的语义,使用这些软件都不会是件难事。所以后文中我们6百度文库-让每个人平等地提升自我多视图集成阶段2(b)6百度文库-让每个人平等地提升自我6百度文库-让每个人平等地提升自我CuEtamercust-noIcust-name・・・protHwpro
5、d-nameqtyiirstocK]createtablecustomer(cust_nointegercust_nam&char(15)Tcu^Laddrchar(30),阶段2(c)转化概念数据模型为SQL表图(6)c)转化概念数据模型为SQL表根据映射规则,把ER图中的实体与关系转化为SQL表结构。在这一过程中我们将识别冗余的表,并去除这些表。eg:把图(5)中的customer,product,salesperson实体转化为SQL表d)范式化范式化是数据库逻辑设计中的重要一步。范式化的目标是尽可
6、能去除模型中的冗余信息,从而消除关系模型更新、插入、删除异常(anomalies)。讲到范式化就会引岀函数依赖(FunctionalDependency)这一概念。函数依赖(FDs)源自于概念数据模型图,反映了需求分析中的数据关系语义。不同实体之间的函数依赖表示各个实体唯一键之间的依赖。实体内部也有函数依赖,反映了实体中键属性与非键属性之间的依赖。在保证数据完整性约束的前提下,基于函数依赖对候选表进行范式化(分解、降低数据冗余)。eg:对图(6)中的Salesperson表进行范式化,消除更新异常(upd
7、ateanomalies)6百度文库-让每个人平等地提升自我Salespersonsale&nameaddrdeptjob-levelSales-vacation(d)范式化图(7)阶段2阶段3物理设计数据库物理设计包括选择索引,数据分区与分组等。逻辑设计方法学通过减少需要分析的数据依赖,简化了大型关系数据库的设计,这也减轻了数据库物理设计阶段的压力。1.概念数据建模和多视图集成准确地反映了现实需求场景2.范式化在模型转化为SQL表的过程中保留了数据完整性数据库物理设计的目标是尽可能优化性能。物理设计阶段
8、,全局表结构可能需要进行重构来满足性能上的需求,这被称为反范式化。反范式化的步骤包括:1.辨别关键性流程,如频繁运行、大容量、高优先级的处理操作2.通过增加冗余来提高关键性流程的性能3.评估所造成的代价(对查询、修改、存储的影响)和可能损失的数据一致性阶段4数据库的实现维护当设计完成之后,使用数据库管理系统(DBMS)中的数据定义语言(DDL)来创建数据结构。数据库创建完成后,应用程序或用户可以使用数据操作语言(DML)来使用
此文档下载收益归作者所有