第十三章 优化数据访问_chuanzhi.pdfVIP

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
优化数据访问 概要 • 本章主要介绍数据库引擎如何访问数据。 – full scan table – Index 1. 找不出理想的访问路径 • 查询优化器正确的选择执行计划后,不意 味着执行计划一定能运行良好。 • 怎么办? – 调整SQL – 调整访问结构(add index ) • 本节重点: – 介绍几种检查手段,用来识别不理想的访问路 径 – 找出原因并加以解决。 1.1 识别 • 衡量访问路径的标准: – 处理数据时消耗的资源是否可接受。 • 可以接受的标准: – 一个访问路径所使用的资源和返回行的总数成正比例。 – 所以检查应该基于返回单行所用的资源总量。 • 关注效率,而不仅仅是速度。 – SQL语句使用越少资源,系统就会越具有扩展性、越快。 – 资源:CPU、MEMORY、磁盘和网络。 • 易于收集的度量: – 逻辑读数量 • 受制于CPU • 可能导致物理读 • 受制于串行操作,减少逻辑读有利于避免扩展性问题。 1.1 识别 • 经验法则: – 集中精力解决每个返回行具有较多逻辑读的访问路径上 每个返回行逻辑读个数 效率 5 好 10-15 可接受 15-20 低效 1.1 识别 • 举例: Select * from t where n1 between 6000 and 7000 and n2=19; TKPROF输出内容摘要: Rows Row Source Operation 3 TABLE ACCESS BY INDEX ROWID T (cr=27 pr=0 pw=0 time=0 us cost=21 size=1340 card=5) 24 INDEX RANGE SCAN T_N2_I (cr=3 pr=0 pw=0 time=0 us cost=1 size=0 card=20)(object id 61330) 注意: 只考虑访问路径层的数据,而不是整个SQL语句,因为SQL语句 层的数据可能会引起误导。 1.1 识别 • 举例: select sum(n1) from t where n2246; TKPROF输出内容摘要: Rows Row Source Operation 1 SORT AGGREGATE (cr=389 pr=0 pw=0 time=0 us) 160 TABLE ACCESS FULL T (cr=389 pr=0 pw=0 time=6996 us cost=106 size=1256 card=157) • 操作1 对操作2的结果使用了单行函数。结果,总是返回 单行而隐藏了访问路径的性能数据。 1.2 陷阱 • 检查logical read数量时,提防两个陷阱: – 读一致性(read consistency) – 行预取 1.2.1 read consistency • 事物的读一致性:Undo • 基于当前块以及回滚信息,数据块相同副本应该在运行时 创建。要运行这个操作,将产生若干个逻辑读。 • 参照实验read_cons

文档评论(0)

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

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

1亿VIP精品文档

相关文档