网站首页 > 技术文章 正文
操作系统资源对Oracle性能的重要性
Oracle数据库是建立在服务器的操作系统上的一款软件,所以Oracle的性能非常依赖服务器的硬件和操作系统的性能。因此,在诊断性能问题时,应将操作系统资源指标视为整体性能指标的一部分。其中CPU、内存、I/O是既相互独立又相互关联的三大操作系统资源。
CPU资源
CPU资源是否紧张可通过检查CPU的利用率及等待运行的进程数量来了解,CPU运算速度主要受主频( Processor Clock Speed )高低和缓存( Cache Memory )大小影响。
比如,在OLTP业务系统中,由于每个CPU在特定时间内只允许一个进程运行,所以这里的CPU个数决定着事务的运行效率。而在OLAP系统中,由于并发需求不高,反而每次运算的时间较长,所以这个时候CPU的主频决定了事物的运行效率。
在很多的管理员中,认为CPU资源使用率越高说明Oracle的性能越差,但是这个不是批评性能优劣的唯一指标。因为合理并最大限度地利用系统资源是数据库优化的目标之一。
内存资源
我们经常讲的内存资源,主要包括物理内存和虚拟内存两个方面。当进程需要新的内存资源,而实际内存资源不足的时候,系统会把部分活动性弱的内存数据写人虚拟内存,在进程需要的时候再次从虚拟内存中读出。为提高Oracle运行性能,则要求没有进程被交换到虚拟内存中。
确实这样子把数据全部放在内存中,可以提高数据库性能,但是大内存并不能保证数据库系统的性能一定很优良。虽然数据块的BUFFER CACHE命中率为100%,但并不能保证SQL的运行效率高。提高SQL运行效率的优化思路是降低SQL的逻辑读取数据块数量。内存一直是数据库性能优化时的重点优化对象,内存分配没有多少之分,够用就行。
I/O资源
I/O资源是系统资源中最慢的活动,存储I/O能力的高低通常用吞吐量、IOPS (I/O 每秒进行操作的次数)、磁盘响应时间等指标来区分。
决定存储性能的主要因素在于存储阵列的算法、Cache命中率,以及磁盘数、存储I/O总线的宽度。Cache 的命中率取决于Cache的算法、Cachesize的大小以及数据的访问规则。一般Cache的读命中率越高,支持的IOPS也就越高,因此,每个物理硬盘能处理的IOPS是有限制的。
存储的I/O响应缓慢往往是由以下因素引起的:
1、当应用所发起的IOPS超过物理磁盘的理论IOPS时,系统的I/O能力将急剧下降。
2、热点盘。即数据访问集中在几张盘上。
3、系统大量交换导致本地盘繁忙。
4、不合理的RAID配置模式。
5、存储性能瓶颈。主要表现为控制器不足或者I/O通道堵塞。
6、磁盘转速较低。
7、硬件故障,比如存储硬件的CACHE算法故障,导致命中率不够,最后导致I/O响应时间长。
猜你喜欢
- 2025-07-17 监控Oracle Cloud负载均衡器:Applications Manager释放最佳性能
- 2024-10-22 程序员笔记|解读Oracle AWR性能分析报告
- 2024-10-22 「优化体系」Oracle优化必备之动态性能视图v$session_longops
- 2024-10-22 英方i2Active发布3.1版本,针对Oracle的多项性能大幅度提升
- 2024-10-22 Oracle SQL性能优化技巧 oracle sql优化一般从那几个方面入手
- 2024-10-22 linux学习~Oracle数据库性能分析利器-AWR报告
- 2024-10-22 Oracle 性能分析与诊断|Buffer Cache Hit Ratio 诊断
- 2024-10-22 Oracle AI 性能优化指南探讨 oracle语句性能优化
- 2024-10-22 ORACLE SQL性能优化总结 oracle数据库性能优化方法论和最佳实践
- 2024-10-22 详解ORACLE DBA判断IO有性能问题的标准--操作系统和AWR报告
你 发表评论:
欢迎- 07-17渗透测试岗位面试分享,多年经验(渗透测试岗位职责)
- 07-17LabVIEW实现Oracle数据库的访问(labview读取数据库的数据)
- 07-17特朗普千亿美元AI项目钱还未到位,科技大佬已吵翻,奥特曼还有自己的小算盘
- 07-17用Cursor开启JAVA+AI生涯(curator java)
- 07-17分享些java学习视频(java自学视频)
- 07-17SpaceX首次点火Raptor 3发动机,回应质疑者 - 特斯拉Oracle
- 07-17监控Oracle Cloud负载均衡器:Applications Manager释放最佳性能
- 07-17如何区分哪些用户是ORACLE系统提供的?
- 611℃几个Oracle空值处理函数 oracle处理null值的函数
- 603℃Oracle分析函数之Lag和Lead()使用
- 592℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 589℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 583℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 576℃【数据统计分析】详解Oracle分组函数之CUBE
- 566℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 558℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- 渗透测试岗位面试分享,多年经验(渗透测试岗位职责)
- LabVIEW实现Oracle数据库的访问(labview读取数据库的数据)
- 特朗普千亿美元AI项目钱还未到位,科技大佬已吵翻,奥特曼还有自己的小算盘
- 用Cursor开启JAVA+AI生涯(curator java)
- 分享些java学习视频(java自学视频)
- SpaceX首次点火Raptor 3发动机,回应质疑者 - 特斯拉Oracle
- 监控Oracle Cloud负载均衡器:Applications Manager释放最佳性能
- 如何区分哪些用户是ORACLE系统提供的?
- 一次性把微服务数据架构事务管理+ACID+一致性+CAP+BASE理论讲清
- 面试官:来,讲讲Spring事务有哪些坑?
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)