您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据结构与算法 > 实验5-数据库监视与性能优化
实验项目名称:数据库监视与性能优化实验学时:4同组学生姓名:实验地点:实验日期:实验成绩:批改教师:批改时间:一、实验目的和要求1、利用索引优化查询性能、优化SQL语句。2、了解通过对SQLprofiler跟踪系统运行数据。二、实验仪器和设备设备:奔腾Ⅳ或奔腾Ⅳ以上计算机;环境:WINDOWS7或WINDOWSXP、MicrosoftSQLServer2008。三、实验过程1、完成以下的实验。1)使用对象资源管理器创建、管理索引①为员工表创建一个索引名为“emp_id”的唯一性非聚集索引,索引关键字是“员工号”,填充因子80%。②重命名索引,将索引“emp_id”重命名为“员工表_员工号”。③删除索引“员工表_员工号”。2)使用T-SQL语句创建、管理索引①为员工表创建一个索引名为“emp_id”的唯一性非聚集索引,索引关键字是“员工号”,填充因子80%。②重命名索引,将索引“emp_id”重命名为“员工表_员工号”。③为员工参与项目表创建一个索引名为“员工_项目_index”的非聚集复合索引,索引关键字为“员工号”,升序,项目编号,降序,填充因子50%。④删除索引“员工表_员工号”和“员工_项目_index”。3)索引前后的执行计划①删除员工表中员工号上的主键。按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表和员工参与项目表中的员工号都没有索引)②为员工参与项目表创建一个索引名为“员工参与项目_员工号”的非聚集索引,索引关键字为“员工号”,升序;按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号没索引,员工参与项目表中的员工号有非聚集索引)③重建员工表中员工号上的主键,删除“员工参与项目_员工号”的非聚集索引。按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号有聚集索引,员工参与项目表中的员工号没有非聚集索引)④为员工参与项目表创建一个索引名为“员工参与项目_员工号”的非聚集索引,索引关键字为“员工号”,升序。按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号有聚集索引,员工参与项目表中的员工号有非聚集索引)四、实验结果与分析1-11-21-3usexmglagodropindex员工表.员工表_员工号2-1usexmglagocreateuniqueNONCLUSTEREDindexemp_idon员工表(员工号)with(fillfactor=80)2-2usexmglagosp_rename'员工表.emp_id','员工表_员工号'2-3usexmglagocreateNONCLUSTEREDindex员工_项目_indexon员工参与项目(员工号asc,项目编号desc)with(fillfactor=50)2-4usexmglagodropindex员工表.员工表_员工号dropindex员工参与项目.员工_项目_index3-1select姓名,职责,项目名称from员工表,项目表,员工参与项目where员工表.员工号=员工参与项目.员工号and项目表.项目编号=员工参与项目.项目编号I/O=0.003125+0.003125+0.003125=0.009375CPU开销=0.0001581+0.0001581+0.000046+0.0001691+0.0000189=0.00055023-2createnonclusteredindex员工参与项目_员工号ON员工参与项目(员工号asc)select姓名,职责,项目名称from员工表,项目表,员工参与项目where员工表.员工号=员工参与项目.员工号and项目表.项目编号=员工参与项目.项目编号I/O=0.003125+0.003125+0.003125=0.009375CPU开销=0.0001669+0.0001581+0.0000376+0.0180447+0.0001691=0.01887943-3DROPindex员工参与项目.员工参与项目_员工号select姓名,职责,项目名称from员工表,项目表,员工参与项目where员工表.员工号=员工参与项目.员工号and项目表.项目编号=员工参与项目.项目编号I/O=0.003125+0.003125+0.003125=0.009375CPU开销=0.0000376+0.0001669+0.0001581+0.0001581+0.0000189=0.00053963-4createnonclusteredindex员工参与项目_员工号on员工参与项目(员工号asc)select姓名,职责,项目名称from员工表,项目表,员工参与项目where员工表.员工号=员工参与项目.员工号and项目表.项目编号=员工参与项目.项目编号I/O=0.003125+0.003125+0.003125=0.009375CPU开销=0.0000376+0.0001669+0.0001581+0.0001581+0.0000209=0.0005416五、实验体会这次试验,充分了解了数据库中索引的使用。索引便捷了我们对数据的查询,提高了工作效率。所以在以后的学习中要重视索引的作用。
本文标题:实验5-数据库监视与性能优化
链接地址:https://www.777doc.com/doc-6207640 .html