浅谈Oracle数据库性能优化的目标
Oracle性能优化保证了Oracle数据库的健壮性,为了保证Oracle数据库运行在最佳的性能状态下,在信息系统开发之前就应该考虑数据库的优化策略。从数据库性能优化的场景来区分,可以将性能优化分为如下三种形式:
1、从来没达到过性能要求的数据库优化。
该类故障一般出现在压力测试或者业务系统刚上线时,可能需要通过修改应用架构,大规模优化SQL语句来进行改进,此类优化难度最大,耗时也最长。
2、量变引起质变的数据库优化。
该类故障通常是由数据库并发加大,数据量增多引起的,优化难度一般,但代价可能较高。在国内,很多客户都是通过增加硬件投入来解决该类性能问题的。
3、突发性的数据库性能故障优化。
该类故障优化的难度最低,但时间紧迫性更强,需要DBA能够快速解决问题。
从数据库性能优化的时间点来分,又分以下2点:
1、事前优化。
指的是业务系统上线前的优化。在事前优化过程中,系统设计、开发、产品优化、平台优化的全过程都很重要。实践经验表明,事前优化对于系统的平稳运行有着根本性的影响,而且优化代价也最低。
2、事后优化。
指的是业务系统上线后的优化。由于事后优化受到宕机时间、代码版本控制、代码内核不容易更改等因素影响,所以事后优化往往只能缓减系统性能下降的症状,治标不治本。系统上线之后,如果爆发出大规模的性能问题,那通常都会是灾难性的,任何容灾在这时都起不了作用。
千万别将数据库的优化全部寄托于系统的参数优化和硬件升级上。数据库性能优化并没有统一的标准步骤,“不管黑猫白猫,捉到老鼠就是好猫”,这句话在性能优化领域也同样适用。一个性能优化项目的目标如下:
1、增大数据库吞吐量。
如通过数据库优化增加每秒执行的事务数。
2、高效利用服务器硬件资源。
如开启并行充分利用CPU资源和存储I/O资源加快执行速度。
尽管引起数据库性能故障的原因千变万化,但解决方法还是有一定的规律可循的。
浅谈Oracle数据库性能优化的目标的更多相关文章
- 浅谈MySQL 数据库性能优化
MySQL数据库是 IO 密集型的程序,和其他数据库一样,主要功能就是数据的持久化以及数据的管理工作.本文侧重通过优化MySQL 数据库缓存参数如查询缓存,表缓存,日志缓存,索引缓存,innodb缓存 ...
- [原创]浅谈H5页面性能优化方法
[原创]浅谈H5页面性能优化方法 前阶段公司H5页面性能测试,其中测试时也发现了一些性能瓶颈问题,接下来我们在来谈谈H5页面性能优化,仅仅是一些常用H5页面性能优化措施,其实和Web页面性能优化思路大 ...
- oracle数据库性能优化方案精髓整理收集回想
oracle数据库性能优化整体法则: 一.降低数据訪问(降低硬盘房訪问次数) 二.返回更少的数据(降低网络传输或磁盘訪问) 三.降低交互次数(降低网络传输) 四.降低server开销(降低cpu及内存 ...
- 浅谈Oracle数据库分区表
Oracle数据库分区是作为Oracle数据库性能优化的一种重要的手段和方法,之前,只听过分区的大名,却总未用过,最近简单学习了一下,总结如下,不对之处,还希望朋友们多多指点,交流! 1.表空间及分区 ...
- Oracle数据库性能优化基础
1.数据处理分类OLTP,OLAP 2.Oracle特性 3.数据库优化方法论/原则 方法论:自顶向下优化和自底向上优化 3.1 自顶向下优化 3.2 自底向上优化 对于多年的老系统出现性能问题时,就 ...
- BizTalk开发系列(三十二)浅谈BizTalk主机性能优化
很多BizTalk的项目都要考虑到性能优化的问题,虽然BizTalk采用多线程处理消息的,大大提高了程序效率.但默认情况下 BizTalk的主机有很多阻止参数会控制BizTalk对服务器的资源使用率, ...
- 浅谈webpack4.0 性能优化(转)
前言:在现实项目中,我们可能很少需要从头开始去配置一个webpack 项目,特别是webpack4.0发布以后,零配置启动一个项目成为一种标配.正因为零配置的webpack对项目本身提供的“打包”和“ ...
- 浅谈web前端性能优化
前端性能优化: 一.尽可能减少前端http请求. 1.合并优化脚本文件和css文件. 2.同种类型的背景图片尽量放在一起,用css控制显示. 二.使用浏览器缓存. 如果能强制浏览器缓存在本地,将会降低 ...
- 数据库 Oracle数据库性能优化
--在Oacle数据库涉及到全表扫描的SQL查询(top,count)中, --现场用户删除表中大部分数据,只保留1W条数据,但是查询仍然很慢,检查磁盘IO,发现磁盘IO不是很高 --经过分析Oacl ...
随机推荐
- cocos2dx lua 学习笔记(一)
macosx 安装 lua curl -R -O http://www.lua.org/ftp/lua-5.1.4.tar.gz tar zxf lua-5.1.4.tar.gz cd lua-5.1 ...
- Redmine开启服务
写了一个启动Redmine的开机脚本,redmine文件在/etc/init.d/下 #!/bin/sh ### BEGIN INIT INFO # Provides: Dean Chen # Req ...
- springMVC3学习(四)--訪问静态文件如js,jpg,css
假设你的DispatcherServlet拦截的是*.do这种URL.就不存在訪问不到静态资源的问题 假设你的DispatcherServlet拦截了"/"全部的请求,那同一时候对 ...
- nginx添加需要代理的域名 配置
dap.cns.360buy.com为需要nginx代理的域名,被代理的端口为:8089,配置需要在${nginx_home}/conf/nginx.conf的文件中加入如下配置即可 upstream ...
- 实现一个对象验证库系列 -- 3) Fluent以及扩展方法实现 (请大神批评)
前情回顾: 上一篇 2) 验证器实现 简单描述了下验证器的简单实现 本文将说说Fluent方式的实现,欢迎大神们指点指点 3) Fluent以及扩展方法实现 我们按照之前 Fluent 的设想以及我们 ...
- SSR服务端一键安装脚本
支持新协议混淆,SSR服务端一键安装脚本 Shadowsocks-R 是项目 shadowsocks 的增强版,用于方便地产生各种协议接口.实现为在原来的协议外套一层编码和解码接口,不但可以伪装成 ...
- java多线程并发例子
public static void main(String[] args) { for(Thread t:getThreads()){ t.start(); } } public static Th ...
- android 7.0带来的
Android 7.0 给开发者带来了什么 新的 Andorid N (Andorid 7.0)预览版发布了,但是新的Android预览版需要我们在已存在的APP上测试几乎全部内容,包括不同种类的屏幕 ...
- VS2013关于“当前不会命中断点源代码与原始版本不同”的BUG
文件明明没有动过,竟然一直给我这种提示! 解决方法:将出问题的文件用notepad打开,然后另存为Unicode编码,覆盖原来的文件. 网上另外有一种办法是:通过重新格式化出问题的源文件亦可以解决,即 ...
- Android_CodeWiki_02
1.使用TransitionDrawable实现渐变效果 private void setImageBitmap(ImageView imageView, Bitmap bitmap) { // U ...