Oracle 数据库优化的R方法(Method R)

简介:
导读: 
  好长时间没怎么看 Oracle 技术文档了,今天阅读了一篇 Oracle Response Time Optimization with Method R. 这是 Optimizing Oracle Performance 经典图书这本经典图书的主旨方法。R 代表响应时间(response time).具体的定义如下: 
  1. Target the tasks that are critical to the business. 
  2. Collect properly scoped, un-aggregated profile data for each task while the task is exhibiting the behavior you want to record. 
  3. React with the candidate repair that will have the greatest net payoff to the business. 
  a. Stop if the cost of the repair exceeds the cost of the problem. 
  4. Go to step 1. 
  这里面的核心元素是 Profile .Profile 要提供应用程序到最终用户的响应时间的详细描述.体现到 Oracle 数据库这一层,就是要得到扩展的 SQL Trace 数据。 
  是不是感觉有些"虚", R 方法和一些我们已知的数据库优化方法颇一些相似之处,但是 Cary Millsap 宣称 R 方法是目前已知 Oracle 优化方法中的最优秀的、最全面的。我们来看看一些简单比较: 
  R方法 vs OWI 方法 
  OWI(Oracle wait interface)只是R方法中的一个基本元素. R 方法是适用更广的(比如应用层)诊断指导策略(参见:How to Make an Application Easy to Diagnose); 
  R方法 vs YAPP 
  说来有趣, YAPP(Yet Another Performance Profiling Method) 方法的过程如下: 
  得到服务时间和等待时间及其组成部分 
  将所有组成部分排序 
  依次优化每个部分 
  对表中的每一项,减少每次执行的代价或执行次数 
  我们看看笛卡尔的方法论: 
  永远不接受任何我自己不清楚的真理,就是说要尽量避免鲁莽和偏见,只能是根据自己的判断非常清楚和确定,没有任何值得怀疑的地方的真理。 
  可以将要研究的复杂问题,尽量分解为多个比较简单的小问题,一个一个地分开解决。 
  将这些小问题从简单到复杂排列,先从容易解决的问题着手。 
  将所有问题解决后,再综合起来检验,看是否完全,是否将问题彻底解决了。 
  这是笛卡尔的方法论,内容引自不可以随便访问的维基百科.. 
  YAPP 其实不过是笛卡尔方法论的一个体现形式而已. 
  YAPP 只适用于 Oracle 层,对于 Web 应用层等则无能为力; R 方法适用的范围更广(其实是 YAPP 的进化版本); YAPP 也搞不定 Oracle 的 idle events . 
  R 方法 vs 瓶颈分析(bottleneck analysis) 
  瓶颈分析则首先要找到瓶颈, R 方法是以目标任务为导向的, 着眼于业务. 直接抓最关心的角度. 
  虽然现在应用还不够广泛,但 R方法(Method R)是一种在理论上比较完美的方法.其中的产生思想值得我们深思. 









本文转自 牛海彬 51CTO博客,原文链接:http://blog.51cto.com/newhappy/76983,如需转载请自行联系原作者
目录
相关文章
|
Oracle 关系型数据库
Oracle新建数据表的两种方法
Oracle新建数据表的两种方法
|
1月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
54 7
|
3月前
|
Oracle 安全 关系型数据库
Oracle数据恢复—Oracle数据库误删除的数据恢复方法探讨
删除Oracle数据库数据一般有以下2种方式:delete、drop或truncate。下面针对这2种删除oracle数据库数据的方式探讨一下oracle数据库数据恢复方法(不考虑全库备份和利用归档日志)。
|
5月前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库误删除的数据恢复方法
相信有很多oracle数据库用户都遇到过在操作Oracle数据库时误删除某些重要数据的情况,这个时候如果数据库没有备份且数据十分重要的,怎么才能恢复误删除的数据呢?北亚企安数据恢复工程师下面简单介绍几个误删除Oracle数据库数据的恢复方法。
|
5月前
|
SQL 存储 Oracle
Oracle数据库中游标的工作原理与优化方法
Oracle数据库中游标的工作原理与优化方法
|
6月前
|
Oracle 关系型数据库 数据库
oracle误删除数据的恢复方法
oracle误删除数据的恢复方法
57 0
|
7月前
|
SQL Oracle 安全
Oracle的PL/SQL异常处理方法:守护数据之旅的“魔法盾”
【4月更文挑战第19天】Oracle PL/SQL的异常处理机制是保障数据安全的关键。通过预定义异常(如`NO_DATA_FOUND`)和自定义异常,开发者能优雅地管理错误。异常在子程序中抛出后会向上传播,直到被捕获,提供了一种集中处理错误的方式。理解和善用异常处理,如同手持“魔法盾”,确保程序在面对如除数为零、违反约束等挑战时,能有效保护数据的完整性和程序的稳定性。
|
7月前
|
Oracle 关系型数据库
oracle 修改表空间文件路径方法
oracle 修改表空间文件路径方法
|
7月前
|
SQL Oracle 关系型数据库
Oracle之替代OR的另一种方法
Oracle之替代OR的另一种方法
304 0
|
7月前
|
分布式计算 Oracle 关系型数据库
一种Oracle->PolarDB全量数据校验的实现方法
本文主要介绍如何在Oracle迁移PolarDB过程中,如何做全量校验,以及实现原理。
179 6
一种Oracle->PolarDB全量数据校验的实现方法

推荐镜像

更多