摘要:
好长时间没怎么看 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. 阅读全文
posted @ 2009-02-26 21:32
我的IT世界
阅读(194)
评论(0)
推荐(0)
摘要:
索引在各种关系型数据库系统中都是举足轻重的组成部分,其对于提高检索数据的速度起至关重要的作用。在Oracle中,索引基本分为以下几种:B*Tree索引,反向索引,降序索引,位图索引,函数索引,interMedia全文索引等。本文主要就前6种索引进行分析,由于interMedia全文索引涉及的内容可以单独写一篇文章,所以不在此对其做分析。 首先给出各种索引的简要解释: b*tree index:几乎所有的关系型数据库中都有b*tree类型索引,也是被最多使用的。其树结构与二叉树比较类似,根据rid快速定位所访问的行。 反向索引:反转了b*tree索引码中的字节,是索引条目分配更均匀,多用于并行服 阅读全文
posted @ 2009-02-26 21:28
我的IT世界
阅读(458)
评论(0)
推荐(0)
摘要:
消耗在准备新的SQL语句的时间是Oracle SQL语句执行时间的最重要的组成部分。但是通过理解Oracle内部产生执行计划的机制,你能够控制Oracle花费在评估连接顺序的时间数量,并且能在大体上提高查询性能。 准备执行SQL语句 当SQL语句进入Oracle的库缓存后,在该语句准备执行之前,将执行下列步骤: 1) 语法检查:检查SQL语句拼写是否正确和词序。 2) 语义分析:核实所有的与数据字典不一致的表和列的名字。 3) 轮廓存储检查:检查数据字典,以确定该SQL语句的轮廓是否已经存在。 4) 生成执行计划:使用基于成本的优化规则和数据字典中的统计表来决定最佳执行计划。 5) 建立二进制 阅读全文
posted @ 2009-02-26 21:26
我的IT世界
阅读(157)
评论(0)
推荐(0)
摘要:
Oracle数据库在不同的地域被人们广泛使用,所以就必须要有专业的Oracle人员懂得网络连接是怎么样影响数据库性能的。Oracle提供的TNS允许在每个数据库中进行分配通信。 TNS服务器被看作Oracle的逻辑数据请求中的绝缘体和远程服务器间的服务器。同样的,网络管理员有能力控制网络性能调谐性,但是Oracle管理员没有控制影响数据库性能的网络设置的权利。 可以利用下面我所说的重要的设置来改变分布式事物元的性能。其中包括了sqlnet.ora, tnsnames.ora, 和 protocol.ora文件中的参数,这些参数可以被用做改变设置和TCP包的大小,并且调整这些参数可以影响根本的. 阅读全文
posted @ 2009-02-26 21:24
我的IT世界
阅读(199)
评论(0)
推荐(0)
摘要:
Oracle数据库以其高可靠性、安全性、可兼容性,得到越来越多的企业的青睐。如何使Oracle数据库保持优良性能,这是许多数据库管理员关心的问题,根据笔者经验建议不妨针对以下几个方面加以考虑。 一、分区 根据实际经验,在一个大数据库中,数据空间的绝大多数是被少量的表所占有。为了简化大型数据库的管理,改善应用的查询性能,一般可以使用分区这种手段。所谓分区就是动态表中的记录分离到若干不同的表空间上,使数据在物理上被分割开来,便于维护、备份、恢复、事务及查询性能。当使用的时候可建立一个连接所有分区的视图,使其在逻辑上仍以一个整体出现。 1.建立分区表 Create t... 阅读全文
posted @ 2009-02-26 21:22
我的IT世界
阅读(176)
评论(0)
推荐(0)
摘要:
前一阵刚给同事做完一个tuning的培训,顺便把以前做过的case重新整理了一下,今天发出来。case的开始是客户开始抱怨一个批量处理的操作现在变得很慢,在开发的帮助下,我们可以在生产环境中轻易的测试这个操作,而且发现响应时间确实是比以前慢了。这一般是个好的开始,因为我们至少知道问题是什么。首先,我们通过session级别的trace,发现这个批处理在执行的过程中存在最多的等待事件是enqueue: PHP code:OVERALLTOTALSFORALLNON-RECURSIVESTATEMENTScallcountcpuelapseddiskquerycurrentrows-------- 阅读全文
posted @ 2009-02-26 21:19
我的IT世界
阅读(295)
评论(0)
推荐(0)
摘要:
1.选用适合的ORACLE优化器 ORACLE的优化器共有3种: 1.RULE(基于规则) 2.COST(基于成本) 3.CHOOSE(选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其进行覆盖. 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须经常运行analyze 命令,以增加数据库中的对象统计信息(object statistics)的准确性. 如果数据... 阅读全文
posted @ 2009-02-26 21:08
我的IT世界
阅读(198)
评论(0)
推荐(0)
摘要:
为了提高性能,我们针对Oracle数据库本身提供了的方法或方案进行过不少的尝试,主要包括: 共享服务器模式(MTS) 集群技术(Clustering)RAC 分区 并行处理(主要是并行查询) Oracle提供的这些特性确实是用来进行性能改善的,但我们往往忽略了对自身应用特性的分析,它们是否适合于我们.最近,通过对这方面知识的深入了解,发现我们以前存在一些错误的认识.我觉得有必要,大家一起来改变这种误解. 分析之前,先明确一下我们的应用特性.数据库应用大体可以分为OLAP和OLTP两大类,即:联机事务分析(数据仓库)和联机事务处理(事务应用)我们的应用系统,其应用特性主要是联机事务处理,又包含. 阅读全文
posted @ 2009-02-26 21:07
我的IT世界
阅读(142)
评论(0)
推荐(0)
摘要:
在过去的十年中, Oracle 已经成为世界上最专业的数据库之一。对于 IT 专家来说,就是要确保利用 Oracle 的强大特性来提高他们公司的生产力。最有效的方法之一是通过 Oracle 调优。它有大量的调整参数和技术来改进你的 Oracle 数据库的性能。 Oracle 调优是一个复杂的主题。关于调优可以写整整一本书,不过,为了改善 Oracle 数据库的性能,有一些基本的概念是每个 Oracle DBA 都应该遵从的。 在这篇简介中,我们将简要地介绍以下的 Oracle 主题: 外部调整:我们应该记住 Oracle 并不是单独运行的。因此我们将查看一下通过调整 Oracle 服务器以得. 阅读全文
posted @ 2009-02-26 21:04
我的IT世界
阅读(157)
评论(0)
推荐(0)
浙公网安备 33010602011771号