SQL Server 2005 Performance Tuning性能调校 (china-pub首发)
基本信息
- 作者: 胡百敬 姚巧玫 刘承修
- 出版社:电子工业出版社
- ISBN:9787121062964
- 上架时间:2008-6-19
- 出版日期:2008 年6月
- 开本:16开
- 页码:715
- 版次:1-1
- 所属分类:
计算机 > 软件工程及软件方法学 > 软件质量、软件测试及维护
计算机 > 数据库 > SQL Server
编辑推荐
SQL Server领域最经典著作.
DBA性能调校学习必读...
内容简介回到顶部↑
数据库系统经年累月地运行,日久便可能面临数据累积量大、使用人数增加、应用面扩增、当初系统设计有局限等问题,导致性能变差,这就需要调试人员进行性能调校。然而,他们进行性能调校的能力是需要培养的,一般来说,需要的不只是数据库方面的知识和经验,还要对商业领域知识、系统架构设计、应用程序撰写,以及对操作系统、网络环境架设、各种监控工具程序等都有一定的了解,才能在复杂的系统中,找到症结所在,完成调校任务。
本书正是为满足上述需要而编写的,适合sql server dba阅读,书中提供了性能调校和错误处理的建议与提示,并通过实际案例,协助dba建立正确的观念、充分了解系统架构,进而在阅读中传承功力,并打通任督二脉,领略其中运用之奥妙。
本书正是为满足上述需要而编写的,适合sql server dba阅读,书中提供了性能调校和错误处理的建议与提示,并通过实际案例,协助dba建立正确的观念、充分了解系统架构,进而在阅读中传承功力,并打通任督二脉,领略其中运用之奥妙。
作译者回到顶部↑
目录回到顶部↑
第1章 性能调校概观
1.1 什么是性能调校
1.2 建立性能的基线
1.3 性能调校的步骤——detect
1.3.1 各阶段重点说明
1.3.2 练习detect方法
1.3.3 二分查找
1.3.4 定义瓶颈
1.4 结语
第2章 sql server架构简介
2.1 sql server运行架构
2.1.1 sql server的访问架构
2.1.2 sql server 的核心引擎
2.1.3 sql server动态自我管理
2.2 各项硬件使用剖析
2.2.1 内存管理
2.2.2 中央处理器
2.2.3 磁盘子系统
2.3 仿真系统运行
2.4 结语
1.1 什么是性能调校
1.2 建立性能的基线
1.3 性能调校的步骤——detect
1.3.1 各阶段重点说明
1.3.2 练习detect方法
1.3.3 二分查找
1.3.4 定义瓶颈
1.4 结语
第2章 sql server架构简介
2.1 sql server运行架构
2.1.1 sql server的访问架构
2.1.2 sql server 的核心引擎
2.1.3 sql server动态自我管理
2.2 各项硬件使用剖析
2.2.1 内存管理
2.2.2 中央处理器
2.2.3 磁盘子系统
2.3 仿真系统运行
2.4 结语
序言回到顶部↑
推荐序一
谈到数据库性能调校,在台湾百敬应坐第一把交椅,以他累积数十年的功力,可以预期这本书一定会成为人手一本的DBA圣经。.
百敬一向是我最佩服的讲师,他对技术的专业、坚持与研究,让他在SQL Server的领域中树立了一块金字招牌。他把写书当成是一种生活乐趣,积极累积许多实际案例、协助读者建立正确的观念并让人充分了解系统架构,进而在阅读中传承功力并打通任督二脉,领略其中运用的奥妙。巧玫及承修在专业领域的成长也是大家有目共睹的,不管是对数据库的开发、管理、商业智能,还是数据转换等,都多有研究,字里行间皆可看出他们的用心,详尽的说明让读者可以快速了解且顺利上手。
拜读此书,百敬、巧玫及承修严谨并详细地将所有DBA最想知道的几大课题都涵盖进来,包含性能调校相关工具程序、索引及查询性能、交易及锁定管理,以及最新的Visual Studio 2005 Team System for Database Professional等,肯定能让所有DBA受用不尽。也感谢三位大师通力合作完成此本SQL Server 2005性能调校的大作,希望与大家一起分享!
台湾微软
资深产品行销经理
李玉秀
Cheryl Lee..
推荐序二
数据库技术的最高议题,我想非性能调校莫属,对于DBA或是数据库系统开发人员来说,性能调校是“求好”,功力不够的人顶多“求有”个数据库即可,而功力高的人则会想在这个议题上多做一些深入的研究。性能调校的问题涉及的范围太广,不是三言两语可以道尽的,如果对整个数据库系统了解不够全面,或者不够深入,就很难找到性能不佳的原因,当然也就谈不上如何调校,以拥有较佳的性能了。
在台湾,对数据库技术能够研究得既广又深的,百敬当属第一人,而性能这个议题又是他最深感兴趣,也是投入最多时间研究的议题。要谈性能调校,各项基本功不到炉火纯青,恐怕是没有资格谈的,而且要把性能调校技术有组织地教授传达出来,也要花相当的功夫。由百敬来编写本书,是最恰当的人选。
在百敬出版的上本书中,我曾经说过,数据库本身有其生命周期,并不是一生成好就可以放着永远不用再去理它的,若是你对性能的要求高,在生成数据库之前,就得考虑将来可能会发生性能瓶颈的问题。性能是全面性的问题,每个性能不好的数据库都有不同的原因,没有办法一概而论,而这也正是性能调校之所以困难的原因,托尔斯泰说:“All happy families resemble each other, while each unhappy family is unhappy in his own way.”把“family”代换成“database”,在性能调校来讲,也是相当贴切的。
如果性能的问题一直困扰着你,请你也不要期待会有一颗万灵丹,只需开口一问,就会得到你想要的答案,性能调校的问题,终究还是要你亲自去寻找答案,但是在找答案的过程中,你必须要有正确、完整而且有组织的指引,否则这答案你将永远找不到。按图索骥虽然辛苦,然而你心里却会有底,知道离答案有多近。读者若能站在本书作者的肩膀上,将会省去很多寻找解决方案的力气。
精诚信息恒逸教育训练中心
知识产品事业部资深处长...
张智凯
Richard Chang
谈到数据库性能调校,在台湾百敬应坐第一把交椅,以他累积数十年的功力,可以预期这本书一定会成为人手一本的DBA圣经。.
百敬一向是我最佩服的讲师,他对技术的专业、坚持与研究,让他在SQL Server的领域中树立了一块金字招牌。他把写书当成是一种生活乐趣,积极累积许多实际案例、协助读者建立正确的观念并让人充分了解系统架构,进而在阅读中传承功力并打通任督二脉,领略其中运用的奥妙。巧玫及承修在专业领域的成长也是大家有目共睹的,不管是对数据库的开发、管理、商业智能,还是数据转换等,都多有研究,字里行间皆可看出他们的用心,详尽的说明让读者可以快速了解且顺利上手。
拜读此书,百敬、巧玫及承修严谨并详细地将所有DBA最想知道的几大课题都涵盖进来,包含性能调校相关工具程序、索引及查询性能、交易及锁定管理,以及最新的Visual Studio 2005 Team System for Database Professional等,肯定能让所有DBA受用不尽。也感谢三位大师通力合作完成此本SQL Server 2005性能调校的大作,希望与大家一起分享!
台湾微软
资深产品行销经理
李玉秀
Cheryl Lee..
推荐序二
数据库技术的最高议题,我想非性能调校莫属,对于DBA或是数据库系统开发人员来说,性能调校是“求好”,功力不够的人顶多“求有”个数据库即可,而功力高的人则会想在这个议题上多做一些深入的研究。性能调校的问题涉及的范围太广,不是三言两语可以道尽的,如果对整个数据库系统了解不够全面,或者不够深入,就很难找到性能不佳的原因,当然也就谈不上如何调校,以拥有较佳的性能了。
在台湾,对数据库技术能够研究得既广又深的,百敬当属第一人,而性能这个议题又是他最深感兴趣,也是投入最多时间研究的议题。要谈性能调校,各项基本功不到炉火纯青,恐怕是没有资格谈的,而且要把性能调校技术有组织地教授传达出来,也要花相当的功夫。由百敬来编写本书,是最恰当的人选。
在百敬出版的上本书中,我曾经说过,数据库本身有其生命周期,并不是一生成好就可以放着永远不用再去理它的,若是你对性能的要求高,在生成数据库之前,就得考虑将来可能会发生性能瓶颈的问题。性能是全面性的问题,每个性能不好的数据库都有不同的原因,没有办法一概而论,而这也正是性能调校之所以困难的原因,托尔斯泰说:“All happy families resemble each other, while each unhappy family is unhappy in his own way.”把“family”代换成“database”,在性能调校来讲,也是相当贴切的。
如果性能的问题一直困扰着你,请你也不要期待会有一颗万灵丹,只需开口一问,就会得到你想要的答案,性能调校的问题,终究还是要你亲自去寻找答案,但是在找答案的过程中,你必须要有正确、完整而且有组织的指引,否则这答案你将永远找不到。按图索骥虽然辛苦,然而你心里却会有底,知道离答案有多近。读者若能站在本书作者的肩膀上,将会省去很多寻找解决方案的力气。
精诚信息恒逸教育训练中心
知识产品事业部资深处长...
张智凯
Richard Chang
书摘回到顶部↑
第1章 性能调校概观
一般而言,影响数据库整体性能的因素如图1.1所示。
若数据库设计得宜,注意了切割数据、保留了访问灵活性,有效地使用了SQL语句,数量适当且有用的索引,避免长时间广泛的锁定,充足的硬件资源等,则系统将可有效地提供服务,如图1.1所示。各种影响性能的因素中,最重要的是基础设计,但大多数的案例由于时间急迫、对技术的认知有限、需求不明确等因素,导致系统结构缺少扩充性,仅能一味地升级硬件,但整体性能无法大幅改善。
增加CPU对系统的性能当然会有帮助,但结果不一定能让人满意,例如,交易锁定过多且长久,数据表字段多且长度大,所属的SQL语句无法有效地平行运算,又不能将工作分成多个批处理同时执行等,则更多的CPU也无法解决问题。
性能调校不是一件简单的事,一般来说需要有广泛的经验与知识,不单单是数据库的经验,还要对商业逻辑、系统架构设计、编写应用程序、操作系统、架设网络环境、使用各种侦测与监控工具程序、安全与防毒等,都有基本的了解,才能在复杂的系统中,找到症结所在。
因为性能问题往往不会单纯地呈现出来,让你一眼就知道答案。最简单的例子,当你看到CPU很忙时,长时间百分之百的使用率,可能直觉就是CPU性能不足。但其实可能是硬盘性能不足,或是内存容量不够,让CPU一直忙于I/O。这个例子只是简单地告诉你,性能问题的症结往往不是表象所呈现出来的。从不同的方面去看,往往会有不同的解释。
早先,微软的性能调校制式文件上标示着各项成功元素所占的百分率:先前的经验19%、解决问题的能力22%、是否有完备的顾问服务16%、产品的熟悉程度26%、计算机的相关知识13%、运气4%,见图1.2。天啊!你是全世界最强的信息人员,若上苍不眷顾,还是有4%的机会不得成功。
……
一般而言,影响数据库整体性能的因素如图1.1所示。
若数据库设计得宜,注意了切割数据、保留了访问灵活性,有效地使用了SQL语句,数量适当且有用的索引,避免长时间广泛的锁定,充足的硬件资源等,则系统将可有效地提供服务,如图1.1所示。各种影响性能的因素中,最重要的是基础设计,但大多数的案例由于时间急迫、对技术的认知有限、需求不明确等因素,导致系统结构缺少扩充性,仅能一味地升级硬件,但整体性能无法大幅改善。
增加CPU对系统的性能当然会有帮助,但结果不一定能让人满意,例如,交易锁定过多且长久,数据表字段多且长度大,所属的SQL语句无法有效地平行运算,又不能将工作分成多个批处理同时执行等,则更多的CPU也无法解决问题。
性能调校不是一件简单的事,一般来说需要有广泛的经验与知识,不单单是数据库的经验,还要对商业逻辑、系统架构设计、编写应用程序、操作系统、架设网络环境、使用各种侦测与监控工具程序、安全与防毒等,都有基本的了解,才能在复杂的系统中,找到症结所在。
因为性能问题往往不会单纯地呈现出来,让你一眼就知道答案。最简单的例子,当你看到CPU很忙时,长时间百分之百的使用率,可能直觉就是CPU性能不足。但其实可能是硬盘性能不足,或是内存容量不够,让CPU一直忙于I/O。这个例子只是简单地告诉你,性能问题的症结往往不是表象所呈现出来的。从不同的方面去看,往往会有不同的解释。
早先,微软的性能调校制式文件上标示着各项成功元素所占的百分率:先前的经验19%、解决问题的能力22%、是否有完备的顾问服务16%、产品的熟悉程度26%、计算机的相关知识13%、运气4%,见图1.2。天啊!你是全世界最强的信息人员,若上苍不眷顾,还是有4%的机会不得成功。
……


点击看大图







加载中...