数据库完好的设计原则与技巧教学提纲_.docx

上传人:安*** 文档编号:17837334 上传时间:2022-05-26 格式:DOCX 页数:8 大小:18.61KB
返回 下载 相关 举报
数据库完好的设计原则与技巧教学提纲_.docx_第1页
第1页 / 共8页
数据库完好的设计原则与技巧教学提纲_.docx_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《数据库完好的设计原则与技巧教学提纲_.docx》由会员分享,可在线阅读,更多相关《数据库完好的设计原则与技巧教学提纲_.docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据库完好的设计原则与技巧教学提纲_数据库完好的设计原则与技巧教学提纲数据库完好的设计原则与技巧数据库宝典概要:数据库是企业信息的核心,其应用水平的高低直接影响到企业管理水平。选择了一个高性能的数据库产品不等于就有一个好的数据库应用系统,假如数据库系统设计不合理,不仅会增加客户端和服务器端程序的编程和维护的难度,而且还会影响系统实际运行的性能。主要涉及数据库各种性能优化技术,进而避免磁盘I/O瓶颈、减少CPU利用率、大内存的设置和减少资源竞争。大型数据库的设计与开发要复杂得多,因而在设计、开发经过中,除了要遵循数据库范式理论、增加系统的一致性和完好性外,还要在总体上根据详细情况进行分布式设计,

2、紧紧把握集中控制、统一审核的基本原则,保证数据库设计构造紧凑、分布平衡、定位迅速。数据库设计考虑工作一、成立数据小组大型数据库数据元素多,在设计上有必要成立专门的数据小组。由于数据库设计者不一定是使用者,对系统设计中的数据元素不可能考虑周全,数据库设计出来后,往往难以找到所需的库表,因而数据小组最好由熟悉业务的项目骨干组成。数据小组的职能并非是设计数据库,而是通过需求分析,在参考其他类似系统的基础上,提取系统的基本数据元素,担负对数据库的审核。审核内容包括审核新的数据库元素能否完全、能否实现全部业务需求;对旧数据库假如存在旧系统的分析及数据转换;数据库设计的审核、控制及必要调整。二、设计原则规

3、范命名。所有的库名、表名、域名必须遵循统一的命名规则,并进行必要讲明,以方便设计、维护、查询。控制字段的引用。在设计时,能够选择适当的数据库设计管理工具,以方便开发人员的分布式设计和数据小组的集中审核管理。采用统一的命名规则,假如设计的字段已经存在,可直接引用;否则,应重新设计。库表重复控制。在设计经过中,假如发现大部分字段都已存在,开发人员应怀疑所设计的库表能否已存在。通过对字段所在库表及相应设计人员的查询,能够确认库表能否确实重复。并发控制。设计中应进行并发控制,即对于同一个库表,在同一时间只要一个人有控制权,其别人只能进行查询。必要的讨论。数据库设计完成后,数据小组应与相关人员进行讨论,

4、通过讨论来熟悉数据库,进而对设计中存在的问题进行控制或从中获取数据库设计的必要信息。数据小组的审核。库表的定版、修改最终都要通过数据小组的审核,以保证符合必要的要求。数据库完好的设计原则与技巧教学提纲数据库完好的设计原则与技巧教学提纲头文件处理。每次数据修改后,数据小组要对相应的头文件进行修改可由管理软件自动完成,并通知相关的开发人员,以便进行相应的程序修改。三、设计技巧注:下面例如都是从网络上查到的例子,有可能不恰当,请指出改正1分类拆分数据量大的表。对于经常使用的表如某些参数表或代码对照表,由于其使用频率很高,要尽量减少表中的记录数量。分好主从关系表的关系例如,银行的户主账表原来设计成一张

5、表,固然能够方便程序的设计与维护,但经过分析发现,由于数据量太大,会影响数据的迅速定位。假如将户主账表分别设计为活期户主账、定期户主账及对公户主账等,则能够大大提高查询效率。2索引设计。对于大的数据库表,合理的索引能够提高整个数据库的操作效率。在索引设计中,索引字段应挑选重复值较少的字段;在对建有复合索引的字段进行检索时,应注意根据复合索引字段建立的顺序进行。例如,假如对一个万多条记录的流水表以日期和流水号为序建立复合索引,由于在该表中日期的重复值接近整个表的记录数,用流水号进行查询所用的时间接近秒;而假如以流水号为索引字段建立索引进行一样的查询,所用时间不到秒。因而在大型数据库设计中,只要进

6、行合理的索引字段选择,才能有效提高整个数据库的操作效率。3数据操作的优化。在大型数据库中,怎样提高数据操作效率值得关注。将单元业务尽量一次提交执行,减少提交次数,这样减少了I/O操作。建议用ORM框架,个人建议用微软的EF4.1linqtoentity。4必要的工具。在整个数据库的开发与设计经过中,能够先开发一些小的应用工具,如自动生成库表的头文件、插入数据的初始化、数据插入的函数封装、错误跟踪或自动显示等,以此提高数据库的设计与开发效率。本人开发了一部分工具5避免长事务。对单个大表的删除或插入操作会带来大事务,较好的解决方法是,把整个事务分解成几个较小的事务,再由应用程序控制整个系统的流程。

7、这样,假如其中某个事务不成功,则只需重做该事务,因此既可节约时间,又可避免长事务。6适当超前。计算机技术发展日新月异,数据库的设计必须具有一定前瞻性,不但要知足当前的应用要求,还要考虑将来的业务发展,同时必须有利于扩展或增加应用系统的处理功能。数据库设计概要:基于第三范式的数据库表的基本设计,建立主键和索引的策略和方案,然后从数据库表的扩展设计和库表对象的放置等角度概述了数据库管理系统的优化方案。1.基本表的设计规范是第三范式3NF。第三范式的基本特征是非主键属性只依靠于主键属性。基于第三范式的数据库表设计具有很多优点:一是消除了冗余数据,节省了磁盘存储空间;二是有良好的数据完好性限制,即基于

8、主外键的参照完好限制和基于主键的实体完好性限制,这使得数据容易维护,也容易移植和更新;三是数据的可逆性好,在做连接Join查询或者合并表时不遗漏、也不重复;四是因消除了冗余数据冗余列,在查询Select时每个数据页存的数据行就多,这样就有效地减少了逻辑I/O,每个Cash存的页面就多,也减少物理I/O;五是对大多数事务(Transaction)而言,运行性能好;六是物理设计(PhysicalDesign)的机动性较大,能知足日益增长的用户需求。2.主键(PrimaryKey):主键被用于复杂的SQL语句时,频繁地在数据访问中被用到。一个表只要一个主键。主键应该有固定值不能为Null或缺省值,要

9、有相对稳定性,不含代码信息,易访问。把常用的列作为主键才有意义。短主键最佳小于25bytes,主键的长短影响索引的大小,索引的大小影响索引页的大小,进而影响磁盘I/O。主键分为自然主键和人为主键。自然主键由实体的属性构成,自然主键能够是复合性的,在构成复合主键时,主键列不能过多,复合主键使得Join*作复杂化、也增加了外键表的大小。人为主键是,在没有适宜的自然属性键、或自然属性复杂或灵敏度高时,人为构成的。人为主键一般是整型值知足最小化要求,没有实际意义,也略微增加了表的大小;但减少了把它作为外键的表的大小。3.外键ForeignKey:外键的作用是建立关系型数据库中表之间的关系参照完好性,主

10、键只能从独立的实体迁移到非独立的实体,成为后者的一个属性,被称为外键。4.索引(Index):利用索引优化系统性能是显而易见的,对所有常用于查询中的Where子句的列和所有用于排序的列创立索引,能够避免整表扫描或访问,在不改变表的物理构造的情况下,直接访问特定的数据列,这样减少数据存取时间;利用索引能够优化或排除耗时的分类*作;把数据分散到不同的页面上,就分散了插入的数据;主键自动建立了唯一索引,因而唯一索引也能确保数据的唯一性即实体完好性;索引码越小,定位就越直接;新建的索引效能最好,因而定期更新索引非常必要。索引也有代价:有空间开销,建立它也要花费时间,在进行Insert、Delete和U

11、pdate*作时,也有维护代价。索引有两种:聚族索引和非聚族索引。一个表只能有一个聚族索引,可有多个非聚族索引。使用聚族索引查询数据要比使用非聚族索引快。在建索引前,应利用数据库系统函数估算索引的大小。5.锁:锁是并行处理的重要机制,能保持数据并发的一致性,即按事务进行处理;系统利用锁,保证数据完好性。因而,我们避免不了死锁,但在设计时能够充分考虑怎样避免长事务,减少排它锁时间,减少在事务中与用户的交互,杜绝让用户控制事务的长短;要避免批量数据同时执行,尤其是耗时并用到一样的数据表。锁的征用:一个表同时只能有一个排它锁,一个用户用时,其它用户在等待。若用户数增加,则Server的性能下降,出现

12、“假死现象。怎样避免死锁呢?从页级锁到行级锁,减少了锁征用;给小表增加无效记录,从页级锁到行级锁没有影响,若在同一页内竞争有影响,可选择适宜的聚族索引把数据分配到不同的页面;创立冗余表;保持事务简短;同一批处理应该没有网络交互。6.查询优化规则尽可能少的行;避免排序或为尽可能少的行排序,若要做大量数据排序,最好将相关数据放在临时表中*作;用简单的键列排序,如整型或短字符串排序;避免表内的相关子查询;避免在Where子句中使用复杂的表达式或非起始的子字符串、用长字符串连接;在Where子句中多使用“与And连接,少使用“或(Or)连接;利用临时数据库。在查询多表、有多个连接、查询复杂、数据要过滤时,能够建临时表索引以减少I/O。但缺点是增加了空间开销。7.分割表分为水平分割表和垂直分割表两种

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 家庭教育

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁