您当前位置: 唯学网 » 计算机等级考试培训 » 三级专题 »

计算机等级三级数据库技术考试真题及答案(2)

计算机等级三级数据库技术考试真题及答案(2)

唯学网 • 教育培训

2015-3-17 14:19

计算机等级三级

计算机等级

唯学网 • 中国教育电子商务平台

加入收藏

马上要进行2015年第一次计算机等级考试了,在最后的冲刺阶段除了做一些真题之外,还有就是要有一个好的心理素质,为了帮助考生参加考试,小编整理了2015年计算机等级考试三级数据库技术考试真题及答案的备考资料,希望能帮助考生顺利通过计算机等级三级考试。

【参考答案】

第一空:RETURNS

第一空:table

第三空:SELECT a.商品号,SUM(销售数量*(销售单价一进货单价))AS总利润FROM销售表a JOIN商品表b ON a.商品号=b.商品号WHERE a.商品号IN(SELECT商品号FROM商品表WHERE类别=@lb)GROUP BY a.商品号0RDER BY总利润DESC

第四空:RETURN@ProfitTable

3.【解题思路】

数据库性能优化的基本原则就是通过尽可能少的磁盘访问获得所需要的数据。SQL SERVER性能优化一般从数据库设计、应用程序编码、硬件优化、数据库索引、SQL语句、事务处理几个方面人手考虑问题。

(1) 分析阶段:在系统分析阶段往往有太多需要关注的地方,系统各种功能性、可用性、可靠性、安全性需求吸引了我们大部分的注意力,但必须注意的是,性能往往是很重要的非功能性需求,必须根据系统的特点确定其实时性需求、响应时间的需求、硬件的配置等。最好能有各种需求量化的指标。

(2)设计阶段:例如数据库逻辑设计规范化;合理的冗余;主键的设计;外键的设计;字段的设计;数据库物理存储和环境的设计;数据库的物理存储、操作系统环境及网络环境的设计,皆使得我们的系统在将来能适应较多用户的并发操作和较大的数据处理量。这里需要注意文件组的作用,适用文件组可以有效的把I/O操作分散到不同的物理硬盘,提高并发能力。

(3)系统设计:整个系统的设计,特别是系统结构的设计对性能具有很大的影响。对于一般的OLTP系统,可以选择C/S结构、三层的C/S结构等,不同的系统结构其性能的关键也有所不同。系统设计阶段应归纳某些业务逻辑在数据库编程阶段实现,数据库编程包括数据库存储过程、触发器和函数。用数据库编程实现业务逻辑的好处是减少网络流量并能更充分利用数据库的预编译和缓存功能;索引设计阶段可以根据功能和性能的需求进行初步的索引设计,这里需要根据预计的数据量和查询来设计索引,可能与将来实际使用时有所区别。

(4)编码阶段:编码阶段首先需要所有程序员具备优化意识,也就是在实现功能的同时具备考虑优化性能的思想。数据库是能进行集合运算的工具,所谓集合运算实际是批量运算,即是尽量减少在客户端进行大数据量的循环操作,而用SQL语句或者存储过程代替。这个阶段主要是注意在SQL语句等方面的优化,如:尽量少做重复的工作,用SELECT后跟需要的字段代替 SELECT*语句,注意事务和锁,注意I临时表和表变量的用法,慎用游标和触发器,尽量使用索引等。

(5)硬件优化:RAID(独立磁盘冗余阵列)是由多个磁盘驱动器(一个阵列)组成的磁盘系统。通过将磁盘阵列当作一个磁盘来对待,基于硬件的RAID允许用户管理多个磁盘。使用基于硬件的 RAID与基于操作系统的RAID相比较可知,基于硬件的RAID能够提供更佳的性能,如果使用基于操作系统的RAID,那么它将占据其他系统需求的 CPU周期,通过使用基于硬件的RAID,用户在不关闭系统的情况下能够替换发生故障的驱动器。利用数据库分区技术,可均匀地把数据分布在系统的磁盘中,平衡I/0访问,避免I/0瓶颈等。

(6)事务处理调优:数据库的日常运行过程中,可能面临多个用户同时对数据库的并发操作而带来的数据不一致的问题,如:丢失更新、脏读和不可重复读等。并发控制的主要方法是封锁,锁的含义即是在一段时间内禁止用户做某些操作以避免产生数据不一致。对于事务性能的调优,要考虑到事务使用的锁的个数(在所有其他条件相同的情况下,使用的锁个数越少,性能越好)、锁的类型(读锁对性能更有利)以及事务持有锁的时间长短(持有时间越短,性能越好)等情形。

【参考答案】

根据SQL Server 2008数据库的特性以及题目中的条件,综合给出以下的调优方案。

(1)表结构优化:重新优化数据库设计结构,规范数据库逻辑设计;设计主键和外键;设计合适大小的字段。

(2)硬件优化:购买一块同样大小的硬盘,将硬盘做成RAID5,用以提高数据库读写速度;增加服务器CPU个数;扩大服务器的内存。

(3)索引优化:采用对经常作为条件查询的列设计索引,在查询中经常用到的列上建立非聚簇索引,在频繁进行范围查询、排序、分组的列上建立聚簇索引,对于有频繁进行删除、插入操作的表不要建立过多的索引。

(4)采用视图:合理使用视图和分区视图,在需要更新和删除操作不多、查询操作频繁的表上建立索引视图。

(5)SQL 语句优化:选择运算应尽可能先做,并在对同一个表进行多个选择运算时,选择影响较大的语句放在前面,较弱的选择条件写在后面,这样就可以先根据较严格的条件得出数据较少的信息,再在这些信息中根据后面较弱的条件得到满足条件的信息。应避免使用相关子查询,把子查询转换成联结来实现。字段提取按照“需多少,提多少’’的原则,避免“SELECT*”,“SELECT*”需要数据库返回相应表的所有列信息,这对于一个列较多的表无疑是一项费时的操作,采用存储过程,使用存储过程提高数据处理速度。

以上是2015年计算机等级三级数据库技术考试真题及答案,在计算机培训栏目中我们整理了大量的辅导资料,包括网络工程师、软件工程师、电脑维修的基本常识、计算机等级考试培训等辅导材料,更多内容请点击我们的计算机培训栏目。

0% (0)
0% (10)
已有条评论