数据库的逻辑结构设计和物理设计kingwzun

概念模型将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程就是概念结构设计。

描述概念模型的工具E-R模型

实体之间的联系(1)两个实体型之间的联系:

一对一联系(1∶1)学校里一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间具有一对一联系。

一对多联系(1∶n)一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系。

多对多联系(m∶n)一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,则课程与学生之间具有多对多联系。

(2)一般的,单个实体型and两个以上的实体型之间也存在着一对一、一对多、多对多联系。

联系的度:参与联系的实体型的数目2个实体型之间的联系度为2,也称为二元联系;3个实体型之间的联系度为3,称为三元联系;N个实体型之间的联系度为N,也称为N元联系

E-R图E提供了表示实体型、属性和联系的方法:

实体型:用矩形表示,矩形框内写明实体名。

实体与属性的划分原则:为了简化E-R图的处置,现实世界的事物能作为属性对待的,尽量作为属性对待。两条准则:

E-R图的集成一般需要分两步

(1)合并E-R图,生成初步E-R图各个局部应用所面向的问题不同,各个子系统的E-R图之间必定会存在许多不一致的地方,称之为冲突。

子系统E-R图之间的冲突主要有三类:

属性冲突

命名冲突

结构冲突

(2)消除不必要的冗余,设计基本E-R图冗余的数据:能由基本数据导出的数据,冗余的联系:能由其他联系导出的联系。注意:并不是所有的冗余数据与冗余联系都必须加以消除,有时为了提高效率,不得不以冗余信息作为代价。

消除冗余方法:

分析方法(主要采用)即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。

用规范化理论来消除冗余

由于规范化理论受到泛关系假设的限制,应注意下面两个问题:冗余的联系一定在D中,而D中的联系不一定是冗余的;当实体之间存在多种联系时,要将实体之间的联系在形式上加以区分。

逻辑结构设计的任务把概念结构设计阶段设计好的基本E-R图转换为与选用数据库管理系统产品所支持的数据模型相符合的逻辑结构。

对于我们来说就是指:将E-R图转换为关系模式

转换内容E-R图由实体型、实体的属性和实体型之间的联系三个要素组成。关系模型的逻辑结构是一组关系模式的集合。将E-R图转换为关系模型就是指:将实体型、实体的属性和实体型之间的联系转化为关系模式

一个实体型转换为一个关系模式。关系的属性:实体的属性关系的码:实体的码

实体型间的联系有以下不同情况

一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。①转换为一个独立的关系模式关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的候选码:每个实体的码均是该关系的候选码②与某一端实体对应的关系模式合并合并后关系的属性:加入对应关系的码和联系本身的属性合并后关系的码:不变

一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。①转换为一个独立的关系模式关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:n端实体的码②与n端对应的关系模式合并合并后关系的属性:在n端关系中加入1端关系的码和联系本身的属性合并后关系的码:不变可以减少系统中的关系个数,一般情况下更倾向于采用合并

一个m:n联系只能转换为一个关系模式关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:各实体码的组合

三个或三个以上实体间的一个多元联系转换为一个关系模式。关系的属性:与该多元联系相连的各实体的码以及联系本身的属性关系的码:各实体码的组合

具有相同码的关系模式可合并目的:减少系统中的关系个数合并方法:1将其中一个关系模式的全部属性加入到另一个关系模式中2然后去掉其中的同义属性(可能同名也可能不同名)3适当调整属性的次序

可以将部门压缩到职工可以将领导压缩到部门参加n:m所以必须独立负责:可以将职工压缩到产品中供应:n:m:p必须独立

数据库逻辑设计的结果不是唯一的。优化数据模式就是指:从一范式优化到到更高的范式优化。

确定数据依赖按需求分析阶段所得到的语义,分别写出每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间数据依赖。

对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。

按照数据依赖的理论对关系模式进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式。

按照需求分析阶段得到的各种应用对数据处理的要求,分析对于这样的应用环境这些模式是否合适,确定是否要对它们进行合并或分解。注意:并不是规范化程度越高的关系就越优非BCNF的关系模式虽然会存在不同程度的更新异常,但如果在实际应用中对此关系模式只是查询,并不执行更新操作,就不会产生实际影响。

对关系模式进行必要分解,提高数据操作效率和存储空间的利用率。

常用分解方法

水平分解把(基本)关系的元组分为若干子集合,定义每个子集合为一个子关系,以提高系统的效率。实际中:对符合80/20的,把经常被使用的数据(约20%)水平分解出来,形成一个子关系。水平分解为若干子关系,使每个事务存取的数据对应一个子关系。

垂直分解概念:把关系模式R的属性分解为若干子集合,形成若干子关系模式。分解原则经常在一起使用的属性从R中分解出来形成一个子关系模式优点可以提高某些事务的效率缺点可能使另一些事务不得不执行连接操作,降低了效率分解要求:垂直分解必须不损失关系模式的语义(保持无损连接性和保持函数依赖)

数据库的物理结构数据库在物理设备上的存储结构与存取方法。它依赖于选定的数据库管理系统。设计目标:为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。

关系数据库物理设计的内容

常用存取方法

1.确定数据的存放位置

基本原则根据应用情况将易变部分与稳定部分分开存放经常存取部分与存取频率较低部分分开存放例可以将比较大的表分别放在两个磁盘上,以加快存取速度,这在多用户环境下特别有效。可以将日志文件与数据库对象(表、索引等)放在不同的磁盘以改进系统的性能。

评价方法

对估算结果进行权衡、比较,选择出一个较优的合理的物理结构。

数据库结构建立好后,就可以向数据库中装载数据了。组织数据入库是数据库实施阶段最主要的工作。

数据装载方法人工方法计算机辅助数据入库

在组织数据入库的同时还要调试应用程序。

数据库应用程序的设计应该与数据设计并行进行。

应用程序调试完成,并且已有一小部分数据入库后,就可以开始对数据库系统进行联合调试,也称数据库的试运行。

主要工作包括:功能测试:实际运行应用程序,执行对数据库的各种操作,测试应用程序的各种功能。性能测试:测量系统的性能指标,分析是否符合设计目标。

数据的分期入库原因:重新设计物理结构甚至逻辑结构,会导致数据重新入库由于数据入库工作量实在太大,所以可以采用分期输入数据的方法

先输入小批量数据供先期联合调试使用,待试运行基本合格后再输入大批量数据,逐步增加数据量,逐步完成运行评价。

数据库的转储和恢复在数据库试运行阶段,系统还不稳定,硬、软件故障随时都可能发生。系统的操作人员对新系统还不熟悉,误操作也不可避免因此必须做好数据库的转储和恢复工作,尽量减少对数据库的破坏

在数据库运行阶段,对数据库经常性的维护工作主要是由数据库管理员完成的,包括:

数据库的转储和恢复数据库管理员要针对不同的应用要求制定不同的转储计划,定期对数据库和日志文件进行备份。一旦发生介质故障,即利用数据库备份及日志文件备份,尽快将数据库恢复到某种一致性状态。

数据库的安全性、完整性控制初始定义数据库管理员根据用户的实际需要授予不同的操作权限根据应用环境定义不同的完整性约束条件修改定义当应用环境发生变化,对安全性的要求也会发生变化,数据库管理员需要根据实际情况修改原有的安全性控制由于应用环境发生变化,数据库的完整性约束条件也会变化,也需要数据库管理员不断修正,以满足用户要求

数据库性能的监督、分析和改进在数据库运行过程中,数据库管理员必须监督系统运行,对监测数据进行分析,找出改进系统性能的方法。利用监测工具获取系统运行过程中一系列性能参数的值通过仔细分析这些数据,判断当前系统是否处于最佳运行状态如果不是,则需要通过调整某些参数来进一步改进数据库性能

数据库的重组织与重构造

重组织的形式

重组织的目标提高系统性能

重组织的工作

数据库管理系统一般都提供了供重组织数据库使用的实用程序,帮助数据库管理员重新组织数据库。

(2)数据库的重构造重构造原因数据库应用环境发生变化,会导致实体及实体间的联系也发生相应的变化,使原有的数据库设计不能很好地满足新的需求。

数据库重构造的主要工作根据新环境调整数据库的模式和内模式增加或删除某些数据项改变数据项的类型增加或删除某个表改变数据库的容量增加或删除某些索引

注意:重构造数据库的程度是有限的若应用变化太大,已无法通过重构数据库来满足新的需求,或重构数据库的代价太大,则表明现有数据库应用系统的生命周期已经结束,应该重新设计新的数据库应用系统了。

数据库的设计过程

需求分析综合各个用户的应用需求(现实世界的需求)。

概念结构设计概念模式(信息世界模型),用E-R图来描述。

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

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

THE END
1.数据库物理结构设计.ppt数据库数据库物理结构设计.ppt 22页内容提供方:kabudou 大小:3.14 MB 字数:约6.06千字 发布时间:2016-12-06发布于重庆 浏览人气:44 下载次数:仅上传者可见 收藏次数:0 需要金币:*** 金币 (10金币=人民币1元)数据库物理结构设计.ppt 关闭预览 想预览更多内容,点击免费在线预览全文 免费在线预览全...https://max.book118.com/html/2016/1202/67530865.shtm
2....一起看看数据库的物理设计数据库教程6:数据库的物理结构...为一个给定的逻辑数据模型,选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。 数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于选定的DBMS的实现。 关系数据库物理设计的内容: 为关系模式选择存取方法(建立存取路径)。 为关系、 索引、 日志、 备份等数据库文件选择物理存储结构...https://www.imooc.com/article/319973
3.数据库系统概论(第五版)——数据库设计4.数据库设计的方法:早期使用手工与经验相结合的方法;新奥尔良方法、基于E-R模型的设计方法、3NF(第三范式)的设计方法、面向对象的数据库设计方法、统一建模语言方法等。 5.数据库设计的基本步骤:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实施,数据库运行和维护。 https://www.jianshu.com/p/aef3709f4a5e
4.数据库原理?四数据库设计和规范化理论数据存放于物理数据库中,由数据库管理系统进行管理。数据字典有助于对这些数据进一步管理和控制,为设计人员和数据库管理员在数据库设计、实现和运行阶段控制有关数据提供一定的依据。 数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。 https://developer.aliyun.com/article/1232854
5.中国石油多项成果获2019年度石油石化企业管理现代化创新优秀成果...一是在注重顶层设计的同时,把从严治企、加强基础管理放到重要位置,一企一策、因地制宜,为成果推广应用营造良好的管理环境和条件。二是坚持问题导向,破解...中国石油东方地球物理公司 曹志高 陈志敏 张全红 李忠红 周立法 郭建海 王鑫 17. 以示范引领为核心的“三基”工作创新实践 中国石化中原油田分公司 ...https://www.zgsyqx.com/list.asp?id=5256&page=1
1.数据库:数据库设计(需求,设计,运行,维护)数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。 数据库设计的目标:是为用户和各种应用系统提供一个信息基础设施和高效率的运行环境。 https://blog.csdn.net/qq_42192693/article/details/109720940
2.数据库设计:架构和可伸缩性数据库正如你可以想象的那样,包含广泛的应用程序和要求。 为此,我们将讨论数据库创建者在创建数据库系统时必须完成的一些特定设计模式。 架构实施 数据库系统通常需要一些有关要存储在数据库中的数据的类型和结构的信息。 对于关系数据库系统,架构通过以下术语正式定义: ...https://docs.microsoft.com/zh-cn/learn/cmu-cloud-computing/cmu-cloud-storage/8-database-schema-scalability
3.数据库的物理结构设计物理结构设计是利用已确定的逻辑数据结构以及DBMS提供的方法、技术、以较优的存储结构、数据存取路径、合理的数据存储位置以及存储分配,设计出一个高效的、可实现的物理数据库结构。由于数据库的物理结构依赖于给定的计算机软件及硬件环境,依赖于所选用的DBMS。因此,设计数据库的物理结构应充分考虑数据库的物理环境,例如...https://www.xazcit.com/8486.html
4.系统数据库的概念结构,逻辑结构,物理结构设计方法由于自己在写这一部分的报告时,总感觉不能很好地理解概念含义,具体的设计目标也不知道用怎样的形式来表达。在做完相关报告之后,想着把老师指导之后改正的作业展示一下,希望可以给有类似问题的小伙伴一点点帮助。 系统的概念数据库设计 将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程就是概念结构设计,最后...https://cloud.tencent.com/developer/article/2153995
5.数据库系统mysql物理结构设计mysql的物理结构包括"""库 ---> 表 | 元数据 + 数据行 | 列+ 其他属性(行数,占用空间大小,权限) | 列名+ 数据类型 + 其他约束(非空\唯一\主键\非负数\自增长\默认值)""" 二、mysql物理结构 1、对于mysql来说,mysql的最底层是数据文件(这三个文件),也就是存储引擎打交道的是对象是数据文件。下一层是操作系统,下一...https://blog.51cto.com/u_16213649/7337992
6.空间数据库设计的过程和步骤开源地理空间基金会中文分会开放...为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。 数据库实施阶段 运用DBMS提供的数据语言(例如SQL)及其宿主语言(例如C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 https://www.osgeo.cn/post/7461g
7.干货:数据仓库基础知识(全)分别是:数据仓库技术、Hadoop。当数据为结构化数据,来自传统的数据源,则采用数据仓库技术来存储和处理这些数据,如下图: 2、数据仓库和数据库的区别? 从目标、用途、设计来说。 1)数据库是面向事务处理的,数据是由日常的业务产生的,并且是频繁更新的;数据仓库是面向主题的,数据来源多样化,经过一定的规则转换得到的...https://maimai.cn/article/detail?fid=1803634103&efid=UMsMFIZ9K0rf63yGMFOjHQ