Lab3-1应用调优的示例.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Lab3-1应用调优的示例

Lab 3-1: 应用调优的示例 (2小时) 目标: 配置实验环境,了解对于SQL的调优过程和基本工具 Part1: ―――――――建立实验环境(30min)―――――――――――――――――― 0. 在本机安装db2 v9.5,缺省安装在:C:\Program Files\IBM\SQLLIB下 在c:盘建立一个目录 c:\db2tpcd 将实验脚本db2tpcd.rar拷贝到c:\db2tpcd下,并将所有文件解压到当前目录下 进入db2cmd 进入dos窗口,输入db2cmd 创建测试数据库 建立查看执行计划锁需要的系统表 进入C:\Program Files\IBM\SQLLIB\MISC 建立测试用数据表 进入c:\db2tpcd 表结构如下: 我们创建了一个模拟tpch(数据库工业标准测试)测试的数据库,库中一共有8张数据表,分别是: Nation 国家表 Region 区域表 Part 产品部件表 Supplier 供应商表 Partsupp 产品供应商关联表 Customer 客户表 Orders 订单表 Lineitem 订单详情表 我们装入部分测试数据,在db2cmd中执行: ldall.sql脚本文件的内容如下: 我们检查一下数据加载的正确性,分别执行 我们为这些测试数据表建立索引,在db2cmd中执行: lab3-1-idx1.sql为如上的3张表分别建立如下的索引: 检查一下索引是否成功建立,对part, supplier, partsupp分别执行以下命令 检查输出信息,确保索引已经成功建立。 建立索引后,我们收集一下相关的统计信息,在db2cmd中执行: runstats.sql运行如下的命令: 分别对PART, PARTSUPP, SUPPLIER运行以下命令,确保runstats已经成功执行: 其中,CARD为该表的记录数,NPAGES为该表所占有的存储空间(页数),STATS_TIME为收集统计信息的时间。 Part2: ―――――――问题描述(20分钟)―――――――――――――――――― 我们有如下的一个SQL语句: 目前,该SQL的运行速度不理想,我们希望通过调优提高这个SQL语句的执行效率。 首先,我们运行一下这个SQL,记录一个时间: 通过前后时间对比,我们发现这个SQL运行了大约2秒钟(不同的机器性能可能有差异)。 为了了解这个SQL的执行过程,我们开始分析它的执行计划: 在db2cmd中运行: 用文本编辑器打开lab3-1-before.exp,下面,我们详细解读这个执行计划, Part3: ―――――――问题的分析(20分钟)―――――――――――――――――― 下面我们暂停20分钟,考虑并对该问题进行分析。 Part4: ―――――――问题解答(30分钟)―――――――――――――――――― 在仔细分析的问题之后,我们尝试来解决这个问题,我们规划了一个新的索引方案,我们为建立新的索引: lab3-1-idx2.sql为 建立索引后,我们再收集一下相关的统计信息,在db2cmd中执行: runstats.sql运行如下的命令: 分别对PART, PARTSUPP, SUPPLIER运行以下命令,确保runstats已经成功执行: 其中,CARD为该表的记录数,NPAGES为该表所占有的存储空间(页数),STATS_TIME为收集统计信息的时间。 下面,我们再执行一下原来的SQL,在db2

文档评论(0)

s4as2gs2cI + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档