数据库性能管理与调优

发布日期:2017-09-06

作者:[韩] 金范 主编  出版社:上海科学技术出版社  出版时间:2016年10月


编辑推荐

《数据库性能管理与调优》阐述了操作现场可能出现的数据库性能管理方法,希望能够成为帮助初学者和专业人士的性能管理指南。DBA和系统管理人员在了解性能管理重要性的同时,熟知OS调试、网络调试、数据库调试、应用程序调试等的实战知识也十分重要。


内容简介

《数据库性能管理与调优》重点介绍数据库性能管理与调试的理论及应用。首先强调任何系统的分析、设计、开发、测试、操作阶段都需要进行性能管理。并系统分析了各个阶段的性能管理应该关注的不同对象及目标。在以Oracle数据库为基础构建的系统中,将性能调试分为操作系统级调试和DBMS级调试分别进行详细介绍。在DBMS级调试阶段,为了在短时间内以低成本得到数据库性能提升效果,最好的方式是进行SQL调试,索引和连接就是SQL调试中必不可少的重要存在,是快速提取表中的数据的手段,但是使用不当很容易适得其反,所以书中结合具体例子介绍索引和连接的使用方法和注意事项。


作者简介

金范,韩国居民,专攻数据库,曾就职(株)KISANTELECOM,拥有CDMA等核心通信软件开发经验,后在(株)WAREVALLEY担任软件开发人员及研究所长(CTO)。拥有数据库相关专利7项,自2011年连续三年与韩国数据库振兴院携手开发了数据库安全框架V1,V2,并编著了数据库安全指南,参与了数据库振兴院进行的认证程序研发,为国内外各种公共机关提供咨询。现作为上海产业技术研究院首席数据科学家、中国大数据标准专家委员积极活跃在数据库领域。


目  录

第1章  数据库性能管理

1.1 对数据库性能管理的访问 7

1.2  按项目阶段进行性能管理 8

1.3  定期数据库调优 9

1.4 操作系统 (OS) 级调优 11

1.5 DBMS 调优 22

第2章  SQL 调优 39

2.1 了解优化器 (Optimizer) 42

2.2 基于规则的优化器 (Rule-Based Optimizer) 55

2.3 基于成本的优化器 (Cost-Based Optimizer) 57

2.4 优化器 HINT 66

第3章  索引 (Index) 74

3.1 索引类型 75

3.2 了解索引和表访问 85

3.3 设计索引时的注意事项 88

3.4 索引的正确使用 94

3.5 组合索引 (Composite Index) 96

3.6 扫描范围的决策条件和验证条件 98

3.7 无法使用索引时 101

第4章  连接的种类和顺序 109

4.1 Nested Loop Join 112

4.2 Sort Merge Join 116

4.3 Hash Join 120

第5章  部分范围处理 123

3.5 部分范围 (Partial Range Scan) 处理 124

3.6 部分范围处理的使用原则 127

第6章  数据库调优 Quick Guide 151


前  言

企业通过数据库对大量的信息进行管理和使用,并正在创造出巨大的利益。然而,如何有效地管理每天都在快速增长的信息,这无疑是一个难题,随着数据的日益增加,企业正面临着与性能问题相关的很多困难。

数据库性能低下的问题会摧毁企业与客户之间的信任,然而,此类问题也很难在一两天解决。因此,只有投入大量的时间和费用,才能解决性能问题。如此一来,也给数据库性能低下的企业造成了巨大的损失。

数据库是运行系统、网络、程序等多种要素相结合运行的系统。为了确保这种复杂系统的稳定性,必须采取多方位的分析和监控,以及相应措施并行的处理方式。大多数企业为了进行期间业务与客户服务而使用数据库。作为支持此业务的重要系统,随着时间的推移、数据与用户的增多,性能会渐渐减弱,成为各企业的一个大麻烦,特别是执行管理任务的DBA或系统管理人员更是陷入困境。因此,DBA和系统管理人员在了解性能管理重要性的同时,也需要熟知OS调试、网络调试、数据库调试、应用程序调试等的实战知识。

性能问题的产生可能有多种原因,其中包括两个主要原因: 一种是构建数据库时,由于以结果为主的构建与时间的计算,设计出的数据库性能欠佳,或未能构建出优化的数据库,这种情况下,随着时间的推移,便会渐渐出现性能低下的问题;另一种是访问数据库的SQL未能实现优化,从而导致性能的低下。性能管理并非只单纯地出现在系统的运行和使用中,在对任意系统进行分析、设计、开发、测试、运行的阶段中,性能管理都是不可或缺的步骤。此外,以数据库为基础构建的系统,其各阶段均需要在考虑数据库相关事项后再进行操作。

本系列丛书阐述了操作现场可能出现的数据库性能管理方法,希望能够成为帮助初学者和专业人士的性能管理指南。

本书由金范编写,张青对本书进行了认真校对,周兆明、王一帆、邱雯参与了资料的收集、整理、录入等工作。此外,本书的编写得到了上海产业技术研究院大数据专家委员会等相关单位的大力支持和指导,上海产业技术研究院的组织协调也使本书得以顺利出版,在此一并表示衷心感谢。