最近参加Oracle的培训,对Oracle有了更加深入的认识,在此做个学习总结。

1、Oracle数据库调优不能仅指望修改几项数据库参数就能有明显效果,问题更多出在应用方面,教育开发者正确地使用数据库是一项任重道远的工作。

2、Oracle数据库性能瓶颈主要有:CPU,网络,磁盘I/O,进程间协调;

3、数据库反应时间是影响用户体验和体现数据库性能的重要指标,一般为2ms;

4、数据库响应时间是用户感知到的上层应用响应时间的一部分;

5、SQL中的JOIN和集合运算

6、物理数据库设计:

1)索引设计(Index Design):

索引是为了加快查询特定的几行的速度,但是会使insert变慢。

索引类型:Btree Indexes,Bit Mapped Indexes,Storage Indexes;

2)分区设计(Partition Design)

随着数据库的增大,分区策略能保证查询性能和方便管理。

分区类型:RANGE Partitioning(按日期分区,例如按年),HASH Partitioning(按哈希分布分区),LIST Partitioning(按列表分区,例如按省份),Composite Partitioning(2个维度上分区,例如RANGE-LIST)

分区数量一般在1万以下。

3)压缩设计(Compression Design)

好处:加速表扫描和磁盘占用,可以为OLTP缓存更多的行

坏处:UPDATEs, DELETEs变慢

tips: 如果数据表压缩后为10GB,如果把数据表放到内存中需要留10GB+的内存(最好为20GB),因为压缩过程需要占用额外内存。

4) Clustering

主要作用是最大化利用硬件I/O。

7、数据处理技术(Data Processing Techniques)

1) Row by row
         – Procedural processing one row at a time
     2) Arrays
          – Procedural processing of a set of rows at a time
     3) Manual Parallelism
         – Multiple threads/processes each performing row by row or array processing
      4) Set based processing
         – Process data in groups or sets of rows

(直接提交任务,Oracle数据库本身会进行任务优化)

使用场景:

8、Oracle资源管理器目的在于使数据库系统变得可控,而不至于因占用太多系统资源而崩溃。

9、Oracle数据库连接池连接数上限不是越高越好,一般设置为CPU线程总数能获得最佳性能。

设置前:

设置后:

铸剑团队签名:

【总监】十二春秋之,3483099@qq.com

【Master】戈稻不苍,han169@126.com

【Java开发】雨鸶,343691194@qq.com;思齐骏惠,qiangzhang1227@163.com;小王子,545106057@qq.com;巡山小钻风,840260821@qq.com

【VS开发】豆点,2268800211@qq.com

【系统测试】土镜问道,847071279@qq.com;尘子与自由,695187655@qq.com

【大数据】沙漠绿洲,caozhipan@126.com;张三省,570417591@qq.com

【网络】夜孤星,11297761@qq.com

【系统运营】三石头,261453882@qq.com;平凡怪咖,591169003@qq.com

【容灾备份】秋天的雨,18568921@qq.com

【安全】保密,你懂的。

原创作者:张三省

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Oracle性能优化——总体介绍的更多相关文章

  1. 【转载】我眼中的Oracle性能优化

    我眼中的Oracle性能优化 大家对于一个业务系统的运行关心有如下几个方面:功能性.稳定性.效率.安全性.而一个系统的性能有包含了网络性能.应用性能.中间件性能.数据库性能等等. 今天从数据库性能的角 ...

  2. 我眼中的 Oracle 性能优化

    恒生技术之眼 作者 林景忠 大家对于一个业务系统的运行关心有如下几个方面:功能性.稳定性.效率.安全性.而一个系统的性能有包含了网络性能.应用性能.中间件性能.数据库性能等等. 今天从数据库性能的角度 ...

  3. 降低磁盘IO使Oracle性能优化(转)

    文章转自:http://blog.chinaunix.net/uid-26813519-id-3207996.html 硬件方面虽然只占Oracle性能优化的一个方面(另一方面是软件),但是仍不可忽视 ...

  4. oracle性能优化之awr分析

    oracle性能优化之awr分析 作者:bingjava 最近某证券公司系统在业务期间系统运行缓慢,初步排查怀疑是数据库存在性能问题,因此导出了oracle的awr报告进行分析,在此进行记录. 导致系 ...

  5. Oracle性能优化1-总体思路和误区

    最近在看梁敬彬老师关于Oracle性能优化的一些案例,在这里做一些简单的总结 1.COUNT(*)与COUNT(列)哪个更快 drop table t purge; create table t as ...

  6. Oracle 性能优化的基本方法

    Oracle 性能优化的基本方法概述 1)设立合理的性能优化目标. 2)测量并记录当前性能. 3)确定当前Oracle性能瓶颈(Oracle等待什么.哪些SQL语句是该等待事件的成分). 4)把等待事 ...

  7. Oracle性能优化小结

    Oracle性能优化小结 原则一.注意where子句中的连接顺序 Oracle采用自下而上的顺序解析where子句,根据这个原理,表之间的连接必须卸载其他where条件之前,哪些可以滤掉最大数量记录的 ...

  8. Oracle的优化器介绍

    Oracle优化器介绍 本文讲述了Oracle优化器的概念.工作原理和使用方法,兼顾了Oracle8i.9i以及最新的10g三个版本.理解本文将有助于您更好的更有效的进行SQL优化工作. RBO优化器 ...

  9. oracle 性能优化建议小结

    原则一:注意WHERE子句中的连接顺序: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHER ...

随机推荐

  1. 团体程序设计天梯赛-练习集-L1-037. A除以B

    L1-037. A除以B 真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果. 输入格式: 输入在第一行给出两个整数A和B(-100 <= A, ...

  2. hadoop 安装问题总结

    安装启动步骤  [英语好的,直接手把手跟着来] http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/Sing ...

  3. 【转载】深入理解Java的接口和抽象类

    深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...

  4. eas之dep的前置脚本和后置脚本

    dep的前置脚本和后置脚本,什么时候写,是这样解释的:    前置脚本是在方法前执行,后置脚本是在方法后执行    1.比如保存扩展,如果你要在保存前校验某个字段的值,你要在前置脚本中写,如果要保存后 ...

  5. 关于vcruntime140D.dll丢失问题

    电脑磁盘占用率100%,又检测出硬盘磁道坏了,要么装win7,要么换个SSD,无奈重装环境. 遇到这个问题,之前的电脑就遇到过,网上交的下载这个文件装到C盘Windows的SysWOW64,对于实验室 ...

  6. Ecshop模板中html_options用法详解

    程序部分 <?php $smarty->assign('status_list', $_LANG['cs']); // 订单状态 $smarty->display("ind ...

  7. 【ABCD组】Scrum meeting 5

    前言 第5次会议在6月17日由组长在教9 405召开. 主要对下一步的工作进行说明安排,时长90min. 主要内容 分配下阶段任务,争取在这阶段完成软件的设计阶段 任务分配 姓名 当前阶段任务 贡献时 ...

  8. Netty学习总结(3)——Netty百万级推送服务

    1. 背景 1.1. 话题来源 最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我,咨询推送服务相关的问题.问题五花八门,在帮助大家答疑解惑的过程中,我也对问题进行了总结,大概可以归纳为 ...

  9. C语言——定义&&声明

    1.变量的定义&声明 变量的声明有两种情况: <1>一种是需要建立存储空间的.例如:int a 在声明的时候就已经建立了存储空间. <2>另一种是不需要建立存储空间的. ...

  10. SQL SERVER高级知识积累

    什么叫做高可用服务器? 高可用服务器简单来理解就是不宕机的服务器 什么叫走服务器的自动化灾备? 自动灾备的意思就是,让从服务器自动变成主服务器 sql server的聚合是什么? 事务会引起性能下降, ...