Microsoft SQL Server性能调校
[绝版]基本信息
内容简介回到顶部↑
[font color="#ff6600"]本书特色:
· 微软专业顾问、台湾恒逸资讯资深讲师经典力作
· 繁体版原作大受好评
· 性能调校圣经
· 深入剖析sql server的运作原理[/font]
sql server是当前应用最广的大型数据库系统之一,大型数据库系统运行一段时间后就会出现运行缓慢、性能下降、故障增多等问题,为了使系统维持正常运行,必须对系统不断进行“调校”。 本书从sql系统的运行原理入手,探究其常遇运行问题的形成原因与解决办法。本书作者长期担任大型数据库设计开发和管理的顾问并从事sql server系统的教学工作,本书是他丰富的实践与教学经验的结晶。全书内容包括:性能调校概观、sql server架构简介、性能调校相关工具程序、数据库设计、t-sql语法、索引与查询性能、事务与锁管理、前端应用程序设计。 无论是正在从事大型数据库系统的设计、开发、或教学工作的人员或者是在学习大型数据系统知识的学生,掌握“系统调校”知识都是必不可少的。
· 微软专业顾问、台湾恒逸资讯资深讲师经典力作
· 繁体版原作大受好评
· 性能调校圣经
· 深入剖析sql server的运作原理[/font]
sql server是当前应用最广的大型数据库系统之一,大型数据库系统运行一段时间后就会出现运行缓慢、性能下降、故障增多等问题,为了使系统维持正常运行,必须对系统不断进行“调校”。 本书从sql系统的运行原理入手,探究其常遇运行问题的形成原因与解决办法。本书作者长期担任大型数据库设计开发和管理的顾问并从事sql server系统的教学工作,本书是他丰富的实践与教学经验的结晶。全书内容包括:性能调校概观、sql server架构简介、性能调校相关工具程序、数据库设计、t-sql语法、索引与查询性能、事务与锁管理、前端应用程序设计。 无论是正在从事大型数据库系统的设计、开发、或教学工作的人员或者是在学习大型数据系统知识的学生,掌握“系统调校”知识都是必不可少的。
作译者回到顶部↑
目录回到顶部↑
推荐序
i自 序
iii导 读
v第1章 性能调校概观
1.1 什么是性能调校 5
1.2 建立性能的基线及相关文件 5
1.3 性能调校的步骤流程 – detect 8
1.3.1 各阶段重点说明 9
1.3.2 练习 detect 方法 13
1.4 定义瓶颈 16
1.5 结论 17
第2章 sql server架构简介
2.1 sql server 运行架构 21
2.1.1 sql server 的存取架构 24
2.1.2 sql server 的核心引擎 27
2.1.3 动态自我管理 31
2.2 各项硬件使用剖析 33
2.2.1 内存管理 33
2.2.2 中央处理器 48
2.2.3 硬盘子系统 54
i自 序
iii导 读
v第1章 性能调校概观
1.1 什么是性能调校 5
1.2 建立性能的基线及相关文件 5
1.3 性能调校的步骤流程 – detect 8
1.3.1 各阶段重点说明 9
1.3.2 练习 detect 方法 13
1.4 定义瓶颈 16
1.5 结论 17
第2章 sql server架构简介
2.1 sql server 运行架构 21
2.1.1 sql server 的存取架构 24
2.1.2 sql server 的核心引擎 27
2.1.3 动态自我管理 31
2.2 各项硬件使用剖析 33
2.2.1 内存管理 33
2.2.2 中央处理器 48
2.2.3 硬盘子系统 54
前言回到顶部↑
本书共分八个章节以及四个附录,彼此之间有相当的独立性,你可以依需求单独挑选部分章节研读。书后所附的光盘中对应各章的内容,提供相关的范例源程序代码以及工具程序,辅助你深入了解文中所述的各种概念。以下就各章节的内容做一个概略的描述:第1章 性能调校概观性能调校不是一件简单的事,一般来说需要有广泛的经验与知识,不单单是数据库的经验,还要对系统架构设计,应用程序撰写,操作系统,网络环境架设,各种侦测与监控工具程序的使用等等,都应当有基本的了解,才能在复杂的系统中,找到症结所在。在本章中主要定义什么是性能调校、为何要做性能调校以及如何完成性能调校,让你每每在面对不同的情境,庞杂的工作中有脉络可循,依照一定的步骤与进程来拟定性能调校计划,完成性能调校的工作。第2章 SQL Server 架构简介要对 SQL Server 开始做性能调校前,应当先了解 SQL Server 本身的架构,以及 Windows NT 系列操作系统的运行原理,如此才容易界定问题发生的原因,并找出因应的对策。在本章中将介绍 SQL Server 的组成与执行方式,系统软硬件架构对 SQL Server 的影响,以及 SQL Server 使用 CPU、内存与硬盘的方式,有哪些设定可供调整,以及哪些性能计数器(performance counter)可资参考。第3章 性能调校相关工具程序当你要对 SQL Server 做性能调校时,需要依不同的状况善用各种工具程序,做广泛的分析和深入的研究。在本章中将介绍进行性能调校时可采用的相关工具程序,如 Performance Monitor、SQL Enterprise Manager、SQL Query Analyzer、T-SQL Script、Profiler、DBCC、跟踪标记、网络包捕获程序以及应用程序压力测试工具等等。经由这些工具程序可以让你从广泛地观察问题的全貌开始,到深入剖析关键核心所在。第4章 数据库设计数据库的设计千头万绪,要从逻辑的数据使用对应到物理的数据存放,其中要考虑功能、效率、安全、稳定性、扩充性、容易存取与维护等等诸多因素,导致设计数据库很难一次完成。在本章中将介绍有关数据库容量、范式与否、联机事务处理(OLTP)与联机事务分析(OLAP)在设计上的差异、备份(Backup)与还原(Restore)与数据库文件配置等等相关议题。第5章 T-SQL 语法由于 SQL Server 只接受 T-SQL 语言,它的目的就是要完成你所给的 T-SQL 之语意,所以善用 T-SQL 语法是善用 SQL Server 的基础。但因为笔者撰写本书的目的并不是讨论 T-SQL 这个语言本身,所以在本章仅讨论与性能较有关系的部分。在本章中将介绍查询参数(search argument SARG)、SQL Server 内建的各种公共变量、联机设定、需要注意的语法,以及提供一些工具性的 SQL Script,可以辅助你执行与性能相关的工作。第6章 索引与查询性能一般索引建立的适当与否,是性能好坏的成功关键。并由于更改索引结构不会影响数据字段定义,也就是前端程序可以照常存取,因此当上线后的程序性能表现不好时,尝试最佳化索引往往是第一个考量。在本章中将介绍索引的运行原理、索引的建立时机、增加索引的 T-SQL 语法与相关设定、有效使用索引的方式、SQL Server 如何以成本计算为基础(cost base)判读合用的索引、统计的功用与重要性、SQL Server 所提供的联结(Join)机制与查询效率,以及 Indexed View 的使用等等。第7章 事务与锁管理SQL Server 要依靠事务管理来维护商业逻辑的正确性,通过锁(Lock)的机制来让多人存取的资源不至于紊乱。让大家都在抢资源时,可以有先来后到的顺序。但也因为要排队等资源,这往往让众人卡在某笔未被释放纪录,整个系统看起来好像当掉。虽然系统有非常强悍的软硬件,但若应用程序使用事务与锁的方式不佳,一切都是枉然。在本章中将介绍事务与锁的运作原理,如锁的种类、事务隔离层级等等。同时解释批处理与事务的关系、何谓巢状事务、死锁的种类与预防、系统当前锁的观察与分析等议题。第8章 前端应用程序设计在应用程序开发的过程中就需要注意性能问题,时时仿真真实的数据与取用方法,务求在规划时,就能兼顾数据的正确性与存取效率。越早知道效率瓶颈,越有可能完美地解决,所花的成本也越低。在本章中将利用 Visual Basic 与 Visual Basic.NET 等语言,介绍应用程序存取 SQL Server 的各种方式,以及何谓 Connection Pooling、探讨游标的使用与应用程序的错误处理等等。附录 A 与 B 分别提供笔者在任职顾问的公司所做的性能调校与压力测试计划之模板,它们的内容是针对特定的系统而定,所以并非完善的计划。笔者放入附录,目的是提供一个参考,你可以依此建立自己系统所需的计划。附录 C 列出笔者在撰写本书时所参考的资料来源,不管是从网站、书籍或是微软的教材,都可以让你进一步了解更多与系统性能相关的知识。最后在附录 D 笔者稍微描述了 64 位系统在当下这个时间点的定位,希望对你评估系统时有所帮助。
序言回到顶部↑
SQL Server 2000 上市至今,已经成为企业通用的数据库软件,大概所有企业都会使用到SQL Server,因此对于SQL Server数据库系统的管理与数据库程序的编写(T-SQL),相信已经有很多人熟悉。然而在熟悉SQL Server 的管理与程序设计之后,数据库将会有一个最终极的问题,那就是性能调校,如果你不熟悉数据库管理,对数据库程序设计也没有概念,那性能调校对于你而言无须考虑;但若是该做的你都做了,接下来想了解该怎么办时,你就得要好好研究性能调校了。数据库本身也有生命周期,它并不是一构建好就可以放在旁边永远不用再去理它的,若是你对性能的要求更高,那你很可能得在数据库还没开始构建之前就必须考虑将来可能会出现性能“瓶颈”的问题,性能这个问题是全面性的问题,其所涵盖的范围非常广,不单单是懂得数据库管理与设计就可以解决的。若是性能问题一直在困扰着你,那么本书便可以为你解惑。本书作者胡百敬先生拥有多年的实际大型数据库顾问经验,且本身经常担任SQL Server的技术讲师,技术功底深厚,凭借他多年的经验与研究心得,撰写出这本针对性能调校议题的书籍,相信能对顾虑SQL Server性能问题的读者有所贡献。张智凯Richard Chang台湾恒逸信息教育训练处







点击看大图






加载中...
