Oracle数据库性能优化方法论和最佳实践 pdf
内容简介
Oracle性能优化一直是Oracle数据库实践中相对困难和神秘的领域,即使是资深DBA,部分也对性能优化存有一定的疑惑和迷茫,缺乏科学的优化方法论指导则是构成该困境的主要原因。本书通过案例和实践介绍科学的优化方法论,使大家更深入地理解Oracle性能优化,并形成自己的知识体系!掌握优化的必备技能,不再是大师的专利。
本书的主要内容和特色:
从性能优化的困境和传统性能优化方法论的不足出发,详细介绍全球**的基于流程、资源和组件的**Oracle性能优化方法论,并为之构建了完整的性能优化方法论衡量体系。
深入分析完整的性能优化指标监控体系,帮助读者在日常运行中实践。
内容超越Oracle的知识体系,还介绍了大量操作系统和硬件资源的相关知识和经验。
每章都包含大量来自实践的一线性能优化案例和可以重现的研究性测试案例,方便读者学习和实践。
作者简介
柳遵梁,杭州美创科技有限公司总经理,15年的DBA经历,擅长性能优化、数据安全、容灾备份、自动化运维、大数据分析等领域。在国内率先实践OWI和RTA性能优化方法论,并开创性提出了基于流程、资源和组件分析的优化方法论。关注容灾领域,构想了灾备一体化、全业务切换、桌面演练、双活等关键容灾技术并在美创科技产品上实现,关注数据安全和敏感数据保护,关注大数据分析作用于日常运营管理。
潘敏君,杭州美创科技有限公司高级DBA,团队主管,偶然碰触oracle,一搞就是7年,细细品味oracle,逐渐形成了自己的一套理论与方法。深入理解oracle体系架构及原理,精通系统级的性能优化,长于使用各种工具、事件跟踪排错故障,精通异常数据库的恢复与灾难挽救。关注容灾,数据安全及自动化运维,对闪存卡在企业中的应用有较深入的研究,并协助同事开发基于x86架构的数据库一体机实现了高性价*的横向扩展能力,现已到达商用阶段。带领团队成员处理各种数据库问题,具有极为丰富的Oracle数据库支持经验。
应以峰,杭州美创科技有限公司高级DBA,团队主管,Oracle10gOCM,拥有5年的数据库领域从业经验,精通Oracle数据库原理,擅长从等待事件角度分析诊断Oracle性能问题,对Oracle的OWI、SQL调优等技术有丰富的知识积累和研究,对ORACLERAC高可用架构体系有着较深的造诣。负责运维美创核心客户的海量数据库,负责美创高可用双机双柜部署实施、故障处理、性能优化等工作。
目录
前言
第1章 Oracle性能优化漫谈 1
1.1从生活场景漫谈性能优化 1
1.1.1从一个真实病例说起 1
1.1.2如何改善宝马汽车的运行速度 2
1.2性能优化目标的确定和衡量 3
1.2.1性能优化的范畴或优化对象确定 4
1.2.2性能优化目标的用户期望管理 4
1.2.3性能优化的目标衡量 5
1.3吞吐量和响应时间 6
1.3.1吞吐量 6
1.3.2响应时间 7
1.3.3吞吐量和响应时间关系曲线 8
1.3.4医院挂号窗口的吞吐量和响应时间曲线 8
1.3.5tpcc测试的吞吐量和响应时间曲线 10
1.3.6磁盘I/O系统吞吐量和响应时间曲线 10
1.4Oracle性能优化工作的分类 12
1.4.1上线优化或从未达到过性能期望的系统优化 12
1.4.2响应速度逐步变慢的系统优化 13
1.4.3运行过程中突然变慢的系统优化 13
1.4.4突然变慢,持续一段时间后又恢复正常的业务系统优化 14
1.4.5基于降低资源消耗的系统优化 14
1.4.6预防性日常性能优化 14
1.5测量和变化 15
1.5.1测量和性能 15
1.5.2变化检测和性能优化 17
1.5.3量变和质变 18
1.6基线管理 19
1.6.1基准点和基线 19
1.6.2沟通基线 19
1.6.3基线管理和动态基线 20
1.7Oracle性能优化的神话和误区 23
1.7.1艺术和科学 23
1.7.2Oracle业务系统性能优化是高手的专利 23
1.7.3测试系统性能很好,生产系统为什么不行 24
1.7.4针对特定性能问题的标准解决方案 24
1.7.5只要资源充足,数据库性能就不会差 24
1.7.6只要数据库性能好,业务系统性能必然良好 25
1.7.7降低等待时间就可以提高业务系统性能 25
第2章Oracle性能优化方法论的发展 27
2.1基于局部命中率分析的优化方法论 28
2.2基于OWI的优化方法论 29
2.2.1OWI优化方法论简述 29
2.2.2OWI方法论的可检测体系 30
2.2.3OWI方法中wait event的发展 31
2.3响应时间分析优化方法论 32
2.3.1RTA方法论简述 32
2.3.2RTA方法论的不足和改善 35
2.4基于工作单元的响应时间分析优化方法论 35
2.4.1UOWTBA优化方法论的导入 35
2.4.2输入吞吐量指标的选择 36
2.4.3采用UOWTBA优化方法工作 38
2.5基于资源瓶颈分析的优化方法论 38
2.5.1基于资源瓶颈分析优化方法论简述 38
2.5.2主要的数据库服务资源供给 39
2.5.3有效运行资源瓶颈分析优化方法 40
2.6流程、资源和组件优化方法论 41
2.6.1吞吐量和响应时间关系曲线 41
2.6.2流程和流程响应分析 41
2.6.3资源分析 43
2.6.4组件 45
第3章流程分析之数据库登录流程 46
3.1数据库登录导致业务系统性能恶化案例分享 46
3.2数据库登录流程的相关指标与优化 47
3.2.1数据库登录流程的输入吞吐量和输出响应指标 47
3.2.2输入压力与输出响应之间的关系 58
3.2.3数据库登录流程响应问题的优化案例 64
第4章流程分析之数据访问处理流程 67
4.1数据访问处理流程优化案例分享 68
4.2数据访问处理流程的分解 68
4.3数据访问处理流程的输入和输出 69
4.3.1输入单元和输出单元的确定 69
4.3.2输入和输出指标的测量 74
4.3.3输入和输出指标的关系曲线 79
4.4数据访问流程优化步骤 80
4.5客户端运行和响应阶段 80
4.5.1子流程过程性分解 80
4.5.2子流程的输入和输出指标 81
4.5.3相关资源和组件 84
4.5.4业务请求和响应阶段优化案例 84
4.6SQL语句分析阶段(parse阶段) 85
4.6.1parse阶段子流程分解 85
4.6.2hard parse/soft parse/soft soft parse/no parse的区别 87
4.6.3SQL语句parse的高版本 93
4.6.4复杂语句和简单语句的parse差异 96
4.6.5parse阶段的输入/输出指标 99
4.6.6parse阶段的优化道路 113
4.6.7相关资源和组件 121
4.6.8parse阶段优化案例分析 122
4.7SQL语句执行阶段(execute阶段) 123
4.7.1SQL执行阶段子流程分解 123
4.7.2SQL执行子流程输入/输出指标 144
4.7.3SQL执行子流程的输入/输出指标衡量 147
4.7.4SQL执行阶段输入/输出关系图 155
4.7.5SQL执行阶段的优化道路 158
4.7.6SQL执行阶段相关资源和组件 162
4.7.7SQL执行阶段优化案例 164
4.8fetch次数对逻辑读的影响 165
4.9提交(Commit)阶段的流程分解和分析 167
4.9.1提交阶段的主要执行过程 167
4.9.2高并发性提交的响应问题 169
4.9.3提交阶段的优化道路 174
第5章资源 175
5.1简单的资源供给类 176
5.1.1资源使用的突变曲线 176
5.1.2资源的使用率和队列长度 176
5.1.3导致资源供给性能问题的主要场景 177
5.2并发性资源 178
5.2.1并发性资源效率的衡量 178
5.2.2主要的并发性资源和响应突变曲线 178
第6章资源供给:CPU 179
6.1简单案例分享 179
6.2CPU的特殊性 179
6.3CPU的工作和运行性能的衡量 180
6.3.1CPU的主要工作 180
6.3.2CPU运行性能的衡量:利用率和运行队列长度 180
6.3.3CPU的运行性能曲线 180
6.4CPU资源的主要衡量指标 186
6.4.1CPU的主要性能衡量指标 186
6.4.2CPU的主要性能衡量指标的测量 187
6.4.3CPU相关的主要Oracle指标 189
6.5几个CPU资源常见问题的讨论 191
6.5.1CPU资源的100%利用率 191
6.5.2CPU运行队列的长度标准 191
6.5.3CPU sys部分的资源消耗问题 192
6.6CPU资源优化的目标和道路 193
6.6.1CPU资源问题的场景和优化道路 193
6.6.2降低CPU的输入压力 195
6.6.3分布局部的CPU输入压力 204
6.6.4提高CPU处理效率 204
6.6.5合理调度平缓化CPU使用 206
6.7CPU资源优化案例 206
第7章资源供给:内存和虚拟内存 208
7.1简单案例分享 208
7.2物理内存和虚拟内存 208
7.3简单的虚拟内存管理 209
7.3.1工作存储分页和**存储分页 209
7.3.2计算分页和非计算分页 210
7.3.3页面大小和大页管理 215
7.3.4进程内存管理 218
7.4虚拟内存运行性能的衡量 221
7.4.1虚拟内存运行性能 221
7.4.2虚拟内存的运行性能曲线 222
7.5虚拟内存资源的主要衡量指标 225
7.5.1虚拟内存的主要性能衡量指标 225
7.5.2虚拟内存主要性能衡量指标的测量 226
7.5.3虚拟内存相关的主要Oracle指标 229
7.6几个虚拟内存资源常见问题的讨论 231
7.6.1有128GB的内存,为什么自由空间还是很少 231
7.6.2Oracle业务系统环境下的文件系统缓冲 231
7.6.3如何从AWR报告中发现可能存在的虚拟问题 232
7.6.4如何检测和发现内存泄漏 233
7.7虚拟内存资源优化的目标和道路 234
7.7.1虚拟内存资源问题的场景和优化道路 234
7.7.2合理配置内存分配参数,避免发生swapin和swapout 234
7.7.3合理分配内存,让内存的使用处于安全可控的范围 236
7.7.4充分利用内存,提高业务处理程序运行效率 237
7.7.5合理调度业务程...
感悟与笔记
本书内容为FlowofWorkUnitTimeBasedAnalysis能优化方的部分,主要介绍基于程响应和程分解的响应间分析方。基本按照以下方式来展开述:部分:从能优化见的困惑和场景出引出些能优化的基本概念,并重点阐述了Oracle数据库能优化的方展。第部分:重点阐述FlowofWorkUnitTimeBasedAnalysis优化方,阐述程、资源和组件之间的相互作用,构建了程响应的输入输出的能优化指标体。第三部分:资源给,重点阐述程、资源和组件的资源部分,面分析了CPU、Memory、IOSubsystem,NetworkSubSystem、Lock,BufferLock、Latch、Mutex等主要的Oracle数据库资源,并针对每种资源建立了独立的衡量价体。
会员免费下载
链接:https://pan.baidu.com/s/1Q3XSs9bpN2BcTuf_pSyv_A
提取码: ****** 查看
成为本站VIP会员即可无限下载。 请先点击百度网盘,看资源是否还在,不在请点击链接通知站长补资源。
资源标签点击标签可查看对应分类的资源