首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某教务管理系统使用SQL Server 2008数据库管理系统,数据库软硬件配置信息如下: Ⅰ.数据库运行在两路Intel Xeon E5-2609 2.4GHz CPU(每路CPU4核心),128GB内存、2块300GB 15000转SAS硬盘(RA
某教务管理系统使用SQL Server 2008数据库管理系统,数据库软硬件配置信息如下: Ⅰ.数据库运行在两路Intel Xeon E5-2609 2.4GHz CPU(每路CPU4核心),128GB内存、2块300GB 15000转SAS硬盘(RA
admin
2018-06-19
31
问题
某教务管理系统使用SQL Server 2008数据库管理系统,数据库软硬件配置信息如下:
Ⅰ.数据库运行在两路Intel Xeon E5-2609 2.4GHz CPU(每路CPU4核心),128GB内存、2块300GB 15000转SAS硬盘(RAID 1)的服务器上;
Ⅱ.服务器操作系统为Windows 2003 32位企业版,安装SP2补丁;
Ⅲ.数据库为SQL Server 2008 Enterprise(32位),数据库中总数据量近130GB。
近—个学期以来,用户反映系统运行缓陧,经程序员定位,确定为数据库服务器响应缓慢,需要进行调优。
选项
答案
根据SQL Server 2008数据库的特性以及题目中的条件,综合给出以下的调优方案。 (1)表结构优化:重新优化数据库设计结构,规范数据库逻辑设计;设计主键和外键;设计合适大小的字段。 (2)硬件优化:购买一块同样大小的硬盘,将硬盘做成RAID5,用以提高数据库读写速度;增加服务器CPU个数;扩大服务器的内存。 (3)索引优化:采用对经常作为条件查询的列设计索引,在查询中经常用到的列上建立非聚簇索引,在频繁进行范围查询、排序、分组的列上建立聚簇索引,对于有频繁进行删除、插入操作的表不要建立过多的索引。 (4)采用视图:合理使用视图和分区视图,在需要更新和删除操作不多、查询操作频繁的表上建立索引视图。 (5)SQL语句优化:选择运算应尽可能先做,并在对同一个表进行多个选择运算时,选择影响较大的语句放在前面,较弱的选择条件写在后面,这样就可以先根据较严格的条件得出数据较少的信息,再在这些信息中根据后面较弱的条件得到满足条件的信息。应避免使用相关子查询,把子查询转换成联结来实现。字段提取按照“需多少,提多少”的原则,避免“SELECT*”,“SELECT*”需要数据库返回相应表的所有列信息,这对于一个列较多的表无疑是一项费时的操作,采用存储过程,使用存储过程提高数据处理速度。
解析
数据库性能优化的基本原则就是通过尽可能少的磁盘访问获得所需要的数据。SQLSERVER性能优化一般从数据库设计、应用程序编码、硬件优化、数据库索引、SQL语句、事务处理几个方面入手考虑问题。
(1)分析阶段:在系统分析阶段往往有太多需要关注的地方,系统各种功能性、可用性、可靠性、安全性需求吸引了我们大部分的注意力,但必须注意的是,性能往往是很重要的非功能性需求,必须根据系统的特点确定其实时性需求、响应时间的需求、硬件的配置等。最好能有各种需求量化的指标。
(2)设计阶段:例如数据库逻辑设计规范化;合理的冗余;主键的设计;外键的设计;字段的设计;数据库物理存储和环境的设计;数据库的物理存储、操作系统环境及网络环境的设计,皆使得我们的系统在将来能适应较多用户的并发操作和较大的数据处理量。这里需要注意文件组的作用,适用文件组可以有效的把I/O操作分散到不同的物理硬盘,提高并发能力。
(3)系统设计:整个系统的设计,特别是系统结构的设计对性能具有很大的影响。对于一般的OLTP系统,可以选择C/S结构、三层的C/S结构等,不同的系统结构其性能的关键也有所不同。系统设计阶段应归纳某些业务逻辑在数据库编程阶段实现,数据库编程包括数据库存储过程、触发器和函数。用数据库编程实现业务逻辑的好处是减少网络流量并能更充分利用数据库的预编译和缓存功能;索引设计阶段可以根据功能和性能的需求进行初步的索引设计,这里需要根据预计的数据量和查询来设计索引,可能与将来实际使用时有所区别。
(4)编码阶段:编码阶段首先需要所有程序员具备优化意识,也就是在实现功能的同时具备考虑优化性能的思想。数据库是能进行集合运算的工具,所谓集合运算实际是批量运算,即是尽量减少在客户端进行大数据量的循环操作,而用SQL语句或者存储过程代替。这个阶段主要是注意在SQL语句等方面的优化,如:尽量少做重复的工作,用SELECT后跟需要的字段代替SELECT*语句,注意事务和锁,注意临时表和表变量的用法,慎用游标和触发器,尽量使用索引等。
(5)硬件优化:RAID(独立磁盘冗余阵列)是由多个磁盘驱动器(一个阵列)组成的磁盘系统。通过将磁盘阵列当作一个磁盘来对待,基于硬件的RAID允许用户管理多个磁盘。使用基于硬件的RAID与基于操作系统的RAID相比较可知,基于硬件的RAID能够提供更佳的性能,如果使用基于操作系统的RAID,那么它将占据其他系统需求的cPu周期,通过使用基于硬件的RAID,用户在不关闭系统的情况下能够替换发生故障的驱动器。利用数据库分区技术,可均匀地把数据分布在系统的磁盘中,平衡I/O访问,避免I/O瓶颈等。
(6)事务处理调优:数据库的日常运行过程中,可能面临多个用户同时对数据库的并发操作而带来的数据不一致的问题,如:丢失更新、脏读和不可重复读等。并发控制的主要方法是封锁,锁的含义即是在一段时间内禁止用户做某些操作以避免产生数据不一致。对于事务性能的调优,要考虑到事务使用的锁的个数(在所有其他条件相同的情况下,使用的锁个数越少,性能越好)、锁的类型(读锁对性能更有利)以及事务持有锁的时间长短(持有时间越短,性能越好)等情形。
转载请注明原文地址:https://kaotiyun.com/show/BHlZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
数据库的基本特点是()。
操作系统限制程序的访问,不允许程序访问其授权区域之外的目标,这种技术属于哪种隔离方式?()
在关系数据库的规范化设计中,对模式分解的等价性进行评价的两条主要标准是具有无损连接性和【】。
SYBASE的企业解决方案包括,【】、数据复制和数据访问。
当前数据库技术的发展已形成各种类型的数据库应用技术,下述哪个(些)是这种发展的推动力? Ⅰ.应用的驱动 Ⅱ.多种技术与数据库技术的结合 Ⅲ.关系数据库的研究基础
设事务T1和T2,对数据库中的数据X进行操作,可能有如下几种情形,请问哪一种情形不会发生冲突操作?
在数据库管理系统中,下面哪个模块不是数据库定义的功能模块?
数据库三级模式之间引入两级映像的主要目的在于()。
有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#)。其中S#为学生号,SNAME为学生姓名,SEX为性别,C#为课程号,CNAME为课程名。要查询选修“计算机”课的全体女学生姓名的SQL语句是"SELECTSNAMEFR
操作系统的文件系统中,若按逻辑结构划分,可将文件划分成【】和记录式文件两大类。
随机试题
Ingeneral,theancientRomanswereapracticalpeople.Theycaredlessaboutphilosophyandpuremathematicsthan【C1】______The
下列有关银行业金融机构的说法,正确的是()。
只有中小型银行才存在声誉风险,大型规模的银行不存在声誉风险。()
“云南山川形势,东以曲靖为关,以沾益为蔽;南以元江为关,以车里为蔽;西以永昌为关,以麓川为蔽;北以鹤庆为关,以丽江为蔽。”说的是云南的()。
关于常规控制图要求总体特性值服从的分布,下列说法正确的有()。
我国嫦娥三号月球探测器于北京时间2013年12月2日1时30分,在四川西昌卫星发射中心成功发射。据此,回答下列小题。发射时,发射场及周围地区最可能处于()。
人们在剧烈运动后会感到非常口渴,这时为补充水分、恢复体力,适量饮用下列哪种饮料更为合适?()
Mr.WhiteWasunhappybecausehishairstoppedgrowing.Mr.Whitereturnedtothebarber’sshoptobuyMorecream.
Accordingtothewriter,greetingssuchas"Howdoyoufeel?Thispassagecanbeentitled______.
A、DevelopmentoftheNationalFlagB、PoweroftheNationalFlagC、TypesofFlagsD、UsesofFlagsAWhatisthebesttitleforthe
最新回复
(
0
)