ORACLE性能优化思维与方法论--详细介绍

图书搜索
帮助
热门图书
EDA技术实用教程——V...
平面设计基础(第二版)
内蒙古大兴安岭汗马国家级...
基于深度学习的医学图像数...
汽车维护实训指导
食品理化检验技术
中国中西部南北旅游大通道...
管理学基础
推荐系统进展:方法与技术
数控车削操作与实训
基于评估的智障学生职业教...
机电设备基本电路装接与调...
学前儿童区域游戏经典案例
成本核算与管理
C语言程序设计实验指导与...
体能和形体训练(下)
机电设备操作
电子技术基础与实训教程
新编大学计算机基础——计...
建筑装饰工程施工组织与管...
财经法规与会计职业道德
区域性幼儿园游戏化课程设...
[ 本科及研究生教材 ]
    [ 信息技术,电子 ]
        [ 信息技术,电子 ]
    [ 经济管理 ]
        [ 经济管理 ]
    [ 建筑 ]
        [ 建筑 ]
    [ 机械,制造 ]
        [ 机械,制造 ]
    [ 公共课 ]
        [ 公共课 ]
[ 高职高专教材 ]
    [ 信息技术,电子 ]
        [ 信息技术,电子 ]
    [ 经济管理 ]
        [ 经济管理 ]
    [ 建筑 ]
        [ 建筑 ]
    [ 机械,制造 ]
        [ 机械,制造 ]
    [ 农林环境 ]
        [ 农林环境 ]
    [ 公共课 ]
        [ 公共课 ]
[ 中职中专教材 ]
    [ 信息技术,电子 ]
        [ 信息技术,电子 ]
    [ 经济管理 ]
        [ 经济管理 ]
    [ 建筑 ]
        [ 建筑 ]
    [ 机械,制造 ]
        [ 机械,制造 ]
    [ 公共课 ]
        [ 公共课 ]
[ 店销书,专著 ]
    [ 信息技术,电子 ]
        [ 信息技术,电子 ]
    [ 经济管理 ]
        [ 经济管理 ]
    [ 建筑 ]
        [ 建筑 ]
    [ 机械,制造 ]
        [ 机械,制造 ]
    [ 农林环境 ]
        [ 农林环境 ]
    [ 其他 ]
        [ 其他 ]
 当前位置:店销书,专著 信息技术,电子 信息技术,电子 信息技术,电子 ORACLE性能优化思维与方法论
   
ORACLE性能优化思维与方法论
作者:贾代平,
书名:ORACLE性能优化思维与方法论
定价:¥ 69 元
光盘: 
丛书名:  
免费资源下载:
本书PPT下载:
目录和样章下载: 样章下载地址
开本: 16K
标准书号: 978-7-03-055672-1
字数(千): 400
页数: 296
出版日期: 2018-2-27
发行号: TP-7848.0101
装帧: 平装
点击热度: 2505
最新印刷日期:    
 
编辑推荐
...........................................................................................................................................
 
获奖情况
...........................................................................................................................................
 
图书介绍
...........................................................................................................................................
  随着数据量的不断增加,传统的数据服务系统面临性能退化的挑战。作者在理论和实践的基础上从数据服务的核心层、逻辑层、物理层、实例层、管理层深入探讨ORACLE系统的性能调优问题,向读者展示其中的技术原理、手段和思维方式,并试图上升到方法论的层面揭示性能调优的技术路线图。利用此路线图,读者在处理性能问题时,按图索骥就可以找到解决工程问题的法门。核心层介绍了执行计划(Execution Plan);逻辑层、物理层分别从数据的存储结构和数据的访问方式上探讨引发性能问题的主要方面;实例层和管理层从数据服务系统整体运行的角度探讨性能问题。本书虽然结合ORACLE系统探讨性能问题,但书中讨论的调优技术、思维方式和解决问题的系列方法具有一般性,可供其他数据服务系统参考和借鉴。
  本书读者对象为数据服务系统的规划、设计人员,ORACLE系统的技术专家和高级用户;同时对数据管理、应用开发、系统维护等DT时代相关的IT从业人员也具有重要的参考价值。
 
前言
...........................................................................................................................................
  信息系统的本质是数据服务,而ORACLE是数据服务领域当之无愧的主角。本书研究的是基于这个主角的性能问题。欢迎进入ORACLE性能调优的世界。
  传统地,人们构建信息系统,关注的是“功能”(Function),系统设计和应用开发主要为“功能”服务。随着数据量的增加和人们对“功能”品质要求的提升,“性能”(Performance)问题逐渐浮出水面,而且在各种数据服务系统百花齐放的情况下,性能成为在市场中致胜的关键要素之一。还记得中国铁路客户服务中心网站(www.12306.cn)的经历吗?系统花费巨资开发的火车票务服务的“功能”,却没有经受住“性能”的考验,投入运行的前三年,曾几度瘫痪。如果不是独家经营,消费者早就会将其弃如敝屣了。这是数据服务系统性能问题的经典案例。
  关注“性能”问题,不仅可以提升数据系统的服务质量,还可以实现IT资源的有效利用,减少不必要的投资。在实践中见到很多的类似案例,如当系统遭遇性能瓶颈时,建设者往往考虑的是增加投资、实施服务器扩容。事实上,只有当必需的某种吞吐量(Throughput)得不到满足时,系统才需要扩容。大多数情况下通过性能优化、提高资源的均衡利用率,性能瓶颈可以得到缓解甚至消除。
  “性能”问题虽然与“功能”有关,但它在功能问题之上。从软件的角度,对于功能,需要调试(Debug),而对于性能,需要调优(Tune)。功能与性能、调试与调优,都只是一字之差,但其思维方式和处理方法却存在显著区别。调试的目的是发现软件功能上的缺陷(Bug),可以让软件在运行过程中暂停,以进一步观察内部的细节信息,因此它可以是静态的;而调优的目的是发现软件在运行中的潜在问题,需要在过程中发现瓶颈,因此它是动态的。调试是解决局部的问题,而调优大多数情况下是要解决系统性的问题。在调优实践中,往往缓解或消除了某一环节的问题,却可能会引发另外一些环节的问题。消除了一个瓶颈,另外一些瓶颈又会出现。因此在处理性能问题时,既要熟悉系统的每个环节,又要对不同环节之间的协作方式有充分的了解;既要熟悉局部运行的细节,又要理解不同环节之间的轻重缓急。由此可以看出,处理调优问题要比处理调试问题难度更大,对IT人员的要求更高。工程实践中的调优过程不太可能一蹴而就,本质上是一个动态迭代的过程。
  曾几何时,在注重“功能”的年代,性能问题是个定性的问题,与用户的主观感受有关,性能的优劣仅影响用户体验而已。ORACLE很早就显示出,性能问题不仅仅是用户体验问题,而是影响到用户选择的问题。因此在ORACLE产品升级过程中,越来越重视性能优化技术的开发。经过几个版本的更新与发展,ORACLE系统的性能优化问题已经从早期的定性的问题发展为可以定量研究的科学问题。目前,ORACLE系统的大部分的性能问题都可以定量地去度量,用数据说话。
  基于对性能问题的上述理解,本书将ORACLE性能调优问题归纳为核心层、逻辑层、物理层、实例层、管理层5个不同的层次,并进一步分解为10章内容(第2章至第11章),每一章讨论不同的优化方法与技术。首先,将系统全局的观点贯穿全书,在介绍具体的技术细节之前,注重讨论调优的思维方式和解决问题的一般方法。其次,都会在每一章节讨论不同的概念、模型、观测和实验,以便展示其中的技术细节。下面简要介绍各章的主要内容。
  第1章介绍基于ORACLE系统性能优化的总体框架,阐述性能与资源消耗的基本概念及其相互关系。第2章(核心层)讨论ORACLE性能调优的度量及其主要的跟踪技术,这是分析性能问题的基本手段。第3章(核心层)集中讨论ORACLE系统的优化器及其决策环境,这是数据服务系统的核心部件,它直接决定用户指令的执行效率。第4章(逻辑层)包括对优化器输出结果的分析与讨论、查看用户指令的执行过程、理解和分析执行过程的每一个环节及其资源消耗,这是性能调优的基本功。第5章(物理层)从数据库对象的物理存储的角度解析数据访问的性能问题,重点解析堆表的存储结构及影响其访问性能的主要方面。
  现代数据服务系统离不开索引的支持,第6章(逻辑层、物理层)专门讨论B树索引的结构及其访问方式,是软件开发人员掌握ORACLE性能优化的关键一环。第7章(逻辑层、物理层)在堆表和B树索引的基础上,解析ORACLE系统常用对象的段(Segment)结构及其数据访问。第8章(逻辑层、实例层)集中讨论多用户环境和多进程环境的特殊问题,它们既可以阻碍性能,也可以提升性能,关键看如何利用。第9章(实例层)专门讨论ORACLE系统的运行结构,应重点关注内存结构的使用及对ORACLE系统性能产生的影响,这个影响是全局性的。第10章(实例层、管理层)等待事件接口是一种全新的研究性能问题的角度,它是基于时间因素的考量。利用OWI可以有效地观察ORACLE系统性能问题的瓶颈。第11章(管理层)讨论基于性能问题的内部统计手段及其性能问题的辅助诊断,它是基于统计意义的分析手段。
  由于ORACLE系统的复杂性,面对调优问题时很多从业人员处于盲人摸象的状态。即使是某些细分领域的技术专家,在面对一些性能上的疑难杂症时,也会产生强烈的无力感。这就需要系统的研究与学习。作者希望本书是一座桥梁,通过向读者阐述ORACLE系统不同层次的调优技术,实现理论与实践的统一、原理和方法的贯通,使读者最终能够形成对ORACLE系统性能问题的全局性的认识,从而大大提升处理实际问题的能力。就像一位武林高手,游刃于各个门派和招式之间,融会贯通,出神入化,最后达到无招胜有招的高度。
  本书的出版得到科学出版社的大力支持,在此一并致谢。衷心地希望读者能够通过本书,逐级跨越ORACLE性能调优的核心层、逻辑层、物理层、实例层、管理层的系列技术壁垒,迈上一个新台阶,达到一览众山小的境界。
  由于作者水平有限、认识有限、时间有限,书中难免出现不妥或疏漏,希望读者给予批评指正。若能获得及时的反馈,作者深表谢意。联系邮箱:jiadp@oraclechina.org。

                                                  作  者 
                                                 2017年夏  

 
图书目录
...........................................................................................................................................
第1章  ORACLE性能优化思维概述 1
1.1  IT系统的“功能”与“性能” 1
1.2  服务性能与资源配置 2
1.2.1  性能问题的一般情形 2
1.2.2  业界的服务水平管理 2
1.3  性能研究关注的侧重点 3
1.3.1  关注数据访问的执行过程 3
1.3.2  关注负载和性能之间的动态关系 4
1.4  负载—响应时间曲线 4
1.5  性能优化的一般方法 6
1.5.1  自下而上的优化方法 6
1.5.2  自上而下的优化方法 7
1.6  服务性能的基本问题 8
1.6.1  内存问题 8
1.6.2  CPU利用率 9
1.6.3  I/O问题 9
1.6.4  高资源消耗的SQL 10
1.6.5  引发性能瓶颈的应用问题 11
1.6.6  OLTP与OLAP 13
第2章  性能度量的主要途径 14
2.1  性能调优的度量概述 14
2.2  EXPLAIN解释SQL 14
2.2.1  配置EXPLAIN 14
2.2.2  获得执行计划 15
2.3  语句级跟踪AUTOTRACE 17
2.4  会话级跟踪SQL_TRACE 18
2.4.1  设置SQL跟踪 18
2.4.2  TKPROF格式化跟踪文件 19
2.5  扩展的SQL跟踪 21
2.6  度量的阈值与告警 23
第3章  优化器及其决策环境 26
3.1  游标及其处理过程 26
3.2  优化器的成本核算 26
3.2.1  ORACLE成本估算模型 27
3.2.2  执行计划中的相关概念 28
3.3  数据访问的路径 29
3.3.1  表的访问方法 29
3.3.2  索引的访问方法 30
3.4  行源的联接关系 33
3.4.1  内联接和外联接 34
3.4.2  嵌套循环联接 36
3.4.3  排序融合联接 36
3.4.4  散列联接 37
3.4.5  星形转换 38
3.5  优化器的决策环境 42
3.5.1  影响优化器的主要参数 42
3.5.2  数据库对象的统计信息 44
3.5.3  系统统计信息 46
3.5.4  统计信息的维护与管理 47
第4章  执行计划的分析与干预 50
4.1  观测执行计划 50
4.1.1  查看执行计划 50
4.1.2  定制执行计划的输出 51
4.2  认识执行计划 53
4.3  对多表联接的分析 55
4.3.1  多表联接概述 55
4.3.2  联接条件和类型 55
4.3.3  两两联接的方法 58
4.4  干预执行计划 65
4.4.1  优化提示的使用 65
4.4.2  与优化模式有关的Hint 66
4.4.3  与表有关的Hint 67
4.4.4  与索引有关的Hint 68
4.4.5  与行源联接有关的Hint 70
4.4.6  其他常见Hint举例 71
4.5  管理执行计划 72
4.5.1  SQL概要文件 72
4.5.2  SQL计划基线 77
4.6  关注高能耗SQL 85
第5章  数据存储与段结构 89
5.1  堆表的存储结构概要 89
5.1.1  段结构 89
5.1.2  堆表的存储结构 90
5.2  表结构中的数据块 90
5.2.1  块结构及其控制参数 91
5.2.2  行迁移与行链接 92
5.3  正确设置参数PCTFREE 92
5.4  行迁移与行链接 94
5.4.1  行迁移与行链接的检测 95
5.4.2  行迁移与行链接的消除方法 95
5.5  消除行迁移和行链接的实例 96
5.6  高水位线HWM 97
5.7  表存储统计实验 99
5.7.1  验证表结构 99
5.7.2  收集统计信息 99
5.7.3  表分析实验 100
5.8  表存储访问效率实验 105
5.8.1  存储访问实验过程 106
5.8.2  重构表的存储 112
第6章  索引及相关性能结构分析 113
6.1  ORACLE索引概述 113
6.2  B树索引 114
6.2.1  B树索引结构 114
6.2.2  对NULL值的索引 115
6.3  聚簇因子 116
6.3.1  计算聚簇因子 116
6.3.2  对访问性能的影响 118
6.4  索引分析与重建 122
6.4.1  索引分析与统计 122
6.4.2  索引重建 125
6.5  与索引有关的参数 126
6.6  访问索引的方式 127
6.6.1  索引扫描方式 127
6.6.2  两类数据块扫描 130
6.7  B树索引的维护机制 131
6.7.1  INSERT操作的B树维护 131
6.7.2  DELETE操作的B树维护 139
6.7.3  UPDATE操作的B树维护 144
6.8  复合索引的使用 145
6.8.1  使用原则 145
6.8.2  复合索引和order by 148
6.9  关于索引使用的建议 148
第7章  面向性能的对象分析 150
7.1  索引组织表 150
7.1.1  IOT的主要选项 150
7.1.2  IOT的使用特性 151
7.1.3  IOT上的二级索引 151
7.1.4  IOT的应用提示 153
7.2  聚簇表 153
7.2.1  聚簇的基本概念 154
7.2.2  索引聚簇 154
7.2.3  散列聚簇 156
7.2.4  聚簇表的使用建议 157
7.3  位映射索引 157
7.3.1  位映射索引的结构 158
7.3.2  位映射索引的应用建议 159
7.4  分区表与分区索引 159
7.4.1  分区概述 159
7.4.2  表分区的基本类别 160
7.4.3  分区索引技术 164
7.4.4  分区表与索引的维护 168
7.4.5  分区交换及其应用 173
7.4.6  联机分区处理 176
第8章  并发处理与并行执行 181
8.1  并发处理与锁 181
8.2  ORACLE数据库的锁类型 182
8.3  数据访问过程中的加锁 183
8.4  与锁有关的字典参数与指令 187
8.4.1  有关锁的数据字典视图 187
8.4.2  有关锁的初始化参数 188
8.5  事务的隔离级别 189
8.6  锁争用与死锁 190
8.6.1  量测锁争用 190
8.6.2  处理死锁 191
8.7  锁存器 194
8.7.1  锁存器机制 194
8.7.2  检查锁存器争用 194
8.8  并行处理技术概述 195
8.9  SQL语句的并行处理 196
8.9.1  串行处理与并行处理 196
8.9.2  并行处理的主要概念 197
8.10  并行处理的性能提升 198
8.11  并行处理的适应性 199
8.11.1  多CPU主机系统 199
8.11.2  分布式存储 199
8.11.3  资源密集型SQL 199
8.11.4  批量数据扫描 200
8.12  控制并行处理 200
8.12.1  确定并行度 200
8.12.2  使用并行提示Hint 202
8.12.3  调整与并行处理有关的参数 203
8.13  并行处理的执行计划 203
8.14  实时的并行处理信息 205
8.15  并行处理的跟踪 206
8.16  并行处理实例 207
8.16.1  并行数据更新 207
8.16.2  并行数据添加 208
8.16.3  DDL的并行处理 210
8.16.4  并行索引访问 211
8.17  并行处理的优化 212
8.17.1  并行处理的一般性原则 212
8.17.2  部分并行化与完全并行化 213
8.17.3  监控实际运行中的并行度 215
8.17.4  并行处理进程的负荷分配 216
8.17.5  RAC环境下的并行处理 218
第9章  实例结构的分配与优化控制 220
9.1  ORACLE的实例架构 220
9.1.1  实例的内存结构 220
9.1.2  实例的进程结构 223
9.1.3  实例的存储结构 226
9.2  最近最少使用算法 227
9.2.1  Cache Hit与Cache Miss 227
9.2.2  LRU与MRU 228
9.2.3  表扫描的处理 228
9.2.4  直接路径读 229
9.3  实例缓存的配置与优化 230
9.3.1  计算缓存命中率 230
9.3.2  使用多类型缓存 232
9.3.3  设置缓存的大小 233
9.3.4  ASMM与内存抖动 234
9.4  共享缓冲池的配置与优化 235
9.4.1  共享缓冲池的构成 236
9.4.2  SQL解析及其执行 236
9.4.3  关注游标共享 236
9.4.4  检查共享池效率 240
9.5  用户工作区的调整 242
9.5.1  PGA与UGA 242
9.5.2  PGA的使用与限制 243
9.5.3  监控PGA的性能 244
第10章  基于等待事件的诊断分析 248
10.1  基于等待事件的性能问题描述 248
10.1.1  性能的时间因素 248
10.1.2  等待接口与信号量 249
10.2  用户响应的时间模型 250
10.2.1  CPU服务时间 250
10.2.2  等待事件与等待时间 251
10.3  统计项与等待事件 251
10.4  DB Time与DB CPU 253
10.5  Top SQL说明 254
10.6  等待事件直方图 255
10.7  性能与等待事件 256
10.8  常见的等待事件及其描述 257
10.9  等待事件不能反映的信息 258
10.10  收集等待事件信息 258
10.11  利用等待事件发现性能瓶颈 260
10.11.1  案例1:一个慢速查询的处理 260
10.11.2  案例2:耗时的调度批处理 262
10.11.3  案例3:客户服务器应用中的等待事件 265
10.11.4  案例4:疲于应付的数据库服务器 266
第11章  服务性能管理与性能统计 269
11.1  AWR 269
11.1.1  AWR的控制 270
11.1.2  AWR报告解读 271
11.2  ADDM 275
11.2.1  ADDM诊断框架 275
11.2.2  ADDM诊断案例 276
11.3  ASH 279
11.3.1  ASH采样框架 279
11.3.2  ASH主要应用 280
参考文献 284
 
 
本站首页 | 联系我们 | 所有图书 | 资源下载 | 作者投稿 | 读者反馈 | 业务联系 | 招聘信息 | 加入收藏    
Copyright www.abook.cn All Rights Reserved
地址:北京市海淀区北三环西路43号青云当代大厦21层2109   邮编:100086
站长QQ:693638799 Email:693638799@qq.com 电话:010-62140850
版权所有:科学出版社 职教技术出版中心
京ICP备13039988号