作者介绍 xxxi
技术审校者 xxxiii
致谢 xxxv
前言 xxxvii
第1章 exadata是什么 1
1.1 exadata概览 2
1.2 exadata的历史 3
1.3 不同的视角 4
1.3.1 数据仓库设备 4
1.3.2 联机事务处理机器 5
1.3.3 合并平台 5
1.4 可选配置 6
1.4.1 exadata database machine x2-2 6
1.4.2 exadata database machine x2-8 7
1.5 硬件组件 8
1.5.1 操作系统 9
1.5.2 数据库服务器 9
1.5.3 存储服务器 9
1.5.4 infiniband 10
.1.5.5 闪存 10
1.5.6 磁盘 10
1.5.7 其他杂项 10
1.6 软件组件 11
1.6.1 数据库服务器软件 11
1.6.2 存储服务器软件 14
1.7 软件架构 16
1.8 总结 20
第2章 卸载/智能扫描 21
2.1 为何卸载如此重要 21
2.2 卸载包含了什么 25
2.2.1 字段投影 25
2.2.2 谓词过滤 30
2.2.3 存储索引 32
2.2.4 简单连接(布隆过滤) 33
2.2.5 函数卸载 36
2.2.6 压缩/解压缩 38
2.2.7 加密/解密 40
2.2.8 虚拟列 40
2.2.9 数据挖掘模型评分 43
2.2.10 非智能扫描类型的卸载 44
2.3 智能扫描的先决条件 45
2.3.1 全扫描 45
2.3.2 直接路径读取 45
2.3.3 exadata存储 46
2.4 无法使用智能扫描的情况 49
2.4.1 未实现的功能 49
2.4.2 转换为块运输模式 49
2.4.3 跳过某些卸载操作 50
2.5 如何验证智能扫描确实发生 50
2.5.1 10046跟踪 52
2.5.2 性能统计(v$sessstat) 53
2.5.3 卸载适用字节 55
2.5.4 sql监控 60
2.6 参数 63
2.7 总结 67
第3章 混合列式压缩 69
3.1 oracle存储概述 69
3.2 oracle压缩机制 72
3.2.1 basic 72
3.2.2 oltp 72
3.2.3 hcc 72
3.3 hcc工作机制 76
3.4 hcc性能 77
3.4.1 加载性能 77
3.4.2 查询性能 82
3.4.3 dml性能 88
3.5 预期压缩率 98
3.5.1 压缩助手 98
3.5.2 真实案例 101
3.6 限制与挑战 107
3.6.1 迁移数据到非exadata平台 107
3.6.2 关闭串行直接路径读取 108
3.6.3 锁的问题 108
3.6.4 单行访问 109
3.7 常见的使用场景 110
3.8 总结 111
第4章 存储索引 113
4.1 结构 113
4.2 监控存储索引 114
4.2.1 数据库统计值 115
4.2.2 跟踪 116
4.2.3 总结 119
4.3 控制存储索引 119
4.3.1 _kcfis_storageidx_disabled 120
4.3.2 _kcfis_storageidx_diag_mode 120
4.3.3 _cell_storidx_mode 120
4.3.4 存储软件参数 121
4.4 行为 121
4.5 性能 122
4.5.1 为空值进行特殊优化 124
4.5.2 字段值的物理分布 125
4.6 潜在问题 127
4.6.1 不正确的结果 127
4.6.2 类型转换 128
4.6.3 分区大小 131
4.6.4 不兼容的编程技巧 131
4.7 总结 133
第5章 exadata智能闪存 135
5.1 硬件 135
5.2 cache vs. flash disk 136
5.2.1 使用闪存作为缓存 137
5.2.2 如何创建esfc 142
5.2.3 控制esfc的使用 144
5.3 监控 145
5.3.1 存储监控 145
5.3.2 数据库监控 148
5.4 性能 149
5.5 总结 151
第6章 exadata并行操作 153
6.1 参数 153
6.2 存储层的并行 154
6.3 自动并行度 155
6.3.1 操作和配置 155
6.3.2 i/o基准测试 158
6.3.3 自动并行度调整小结 162
6.4 并行语句队列 162
6.4.1 老方法 162
6.4.2 新方法 163
6.4.3 控制并行队列 167
6.4.4 并行语句队列小结 175
6.5 内存并行执行 176
6.6 总结 186
第7章 资源管理 187
7.1 数据库资源管理器 188
7.1.1 使用者组 189
7.1.2 计划指令 193
7.1.3 资源计划 194
7.1.4 资源管理器视图 195
7.1.5 等待事件:resmgr:cpu quantum 196
7.1.6 一个dbrm的例子 197
7.1.7 测试资源计划 202
7.2 实例隔离 210
7.2.1 配置和测试实例隔离 211
7.2.2 过量分配 215
7.3 i/o 资源管理器 216
7.3.1 iorm如何工作 218
7.3.2 exadata管理i/o的方法 221
7.3.3 把所有的一切组合在一起 227
7.3.4 iorm监控和指标 230
7.4 总结 244
第8章 exadata的配置 245
8.1 exadata的网络组件 245
8.1.1 管理网络 246
8.1.2 客户端访问网络 246
8.1.3 私有网络 247
8.2 关于配置过程 248
8.3 配置exadata 250
8.3.1 第1步:配置工作 250
8.3.2 第2步:dbm配置器 259
8.3.3 第3步:上传参数和部署文件 260
8.3.4 第4步:checkip(checkip.sh) 263
8.3.5 第5步:第一次引导firstboot 265
8.3.6 第6步:准备安装介质 268
8.3.7 第7步:运行onecommand 269
8.4 升级exadata 273
8.4.1 创建一个新的rac集群 273
8.4.2 升级现有的群集 275
8.5 总结 278
第9章 exadata的恢复 279
9.1 exadata的诊断工具 279
9.1.1 sun diagnostics:sundiag.sh 280
9.1.2 健康检查healthcheck 282
9.1.3 cellcli 283
9.2 exadata的备份 287
9.2.1 数据库服务器的备份 288
9.2.2 存储节点的备份 292
9.3 数据库的备份 298
9.3.1 基于磁盘的备份 298
9.3.2 基于磁带的备份 298
9.3.3 从standby数据库上进行备份 299
9.3.4 exadata对rman的优化 300
9.4 exadata的恢复 301
9.4.1 数据库服务器的恢复 301
9.4.2 存储节点的恢复 305
9.5 总结 325
第10章 exadata等待事件 327
10.1 exadata特有的事件 327
10.1.1 节点事件 328
10.1.2 触发事件的执行计划步骤 329
10.2 用户i/o类别中的exadata等待事件 331
10.2.1 cell smart table scan 332
10.2.2 cell smart index scan 335
10.2.3 cell single block physical read 337
10.2.4 cell multiblock physical read 339
10.2.5 cell list of blocks physical read 340
10.2.6 cell smart file creation 341
10.2.7 cell statistics gather 342
10.3 系统i/o类别中的exadata等待事件 343
10.3.1 cell smart incremental backup 343
10.3.2 cell smart restore from backup 344
10.4 其他类别和空闲类别中的exadata等待事件 346
10.4.1 cell smart flash unkeep 346
10.5 旧事件 347
10.5.1 direct path read 347
10.5.2 enq: ko—fast object checkpoint 348
10.5.3 reliable message 349
10.6 资源管理事件 350
10.6.1 resmgr:cpu quantum 350
10.6.2 resmgr:pq queued 351
10.7 总结 352
第11章 理解exadata的性能指标 353
11.1 exadata性能指标的衡量 353
11.2 重温exadata智能扫描的先决条件 354
11.2.1 exadata智能扫描的性能 354
11.2.2 理解exadata智能扫描指标和性能计数器 358
11.3 exadata的动态性能计数器 359
11.3.1 何时及如何使用性能计数器 359
11.3.2 exadata的性能计数器的含义和说明 363
11.3.3 exadata的性能计数器参考 366
11.4 了解sql语句的性能 383
11.5 总结 386
第12章 exadata性能监控 387
12.1 系统方法论 387
12.2 sql语句的响应时间监控 388
12.2.1 利用实时的sql 监控报告对sql语句进行监控 389
12.2.2 使用v$sql和v$sqlstats监控sql语句 400
12.3 监控存储节点 403
12.3.1 在存储节点利用cellcli访问性能指标 403
12.3.2 使用grid control的exadata存储服务器插件访问性能指标 404
12.3.3 使用哪些性能指标 413
12.3.4 监控exadata 存储节点的os性能 414
12.4 总结 427
第13章 迁移到exadata 429
13.1 迁移策略 430
13.2 逻辑迁移 430
13.2.1 抽取和加载 431
13.2.2 通过数据库链复制数据 437
13.2.3 基于同步复制的迁移 454
13.2.4 逻辑迁移小结 461
13.3 物理迁移 461
13.4 备份和恢复 462
13.4.1 全备份和恢复 462
13.4.2 增量备份 464
13.4.3 传输表空间(和跨平台传输表空间xtts) 465
13.4.4 物理standby 468
13.4.5 asm重平衡 470
13.4.6 迁移后的任务 473
13.4.7 物理迁移小结 474
13.5 总结 475
第14章 存储设计 477
14.1 exadata 磁盘架构 477
14.1.1 失效组 478
14.1.2 网格盘 480
14.1.3 存储分布 482
14.2 创建网格盘 486
14.2.1 创建网格盘 487
14.2.2 网格盘大小 488
14.2.3 创建基于闪存盘的网格盘 491
14.3 存储策略 493
14.3.1 配置选项 493
14.3.2 隔离存储节点访问 494
14.4 节点安全策略 496
14.4.1 节点安全策略的术语 496
14.4.2 节点安全策略最佳实践 497
14.4.3 配置asm范围安全策略 497
14.4.4 配置数据库范围安全策略 499
14.4.5 删除节点安全策略 501
14.5 总结 503
第15章 计算节点设计 505
15.1 配置考虑 505
15.2 non-rac环境配置 507
15.3 rac集群 511
15.4 exadata典型配置 514
15.5 exadata集群 515
15.6 总结 516
第16章 忘记已知 517
16.1 双系统记 517
16.2 类型负载 517
16.2.1 exadata smart flash cache (esfc) 518
16.2.2 可扩展性 519
16.2.3 写密集型oltp负载 519
16.3 dw类型负载 519
16.3.1 启用智能扫描 520
16.3.2 阻碍智能扫描的因素 522
16.3.3 其他注意事项 533
16.4 混合负载 535
16.4.1 要索引还是不要? 535
16.4.2 优化器的局限 536
16.4.3 使用资源管理器 540
16.5 总结 540
附录a cellcli和dcli 541
附录b exadata在线资源 553
附录c 诊断脚本 555
· · · · · · (
收起)