SQL Server 2008查询性能优化

出版时间:2010-8  出版社:人民邮电  作者:(美)弗里奇//达姆|译者:姚军  页数:444  译者:姚军  
Tag标签:无  

前言

  性能常常是开发系统时最后想到的事情之一。很不幸,这意味着它将在系统投产之后成为最大的问题。不能简单地依靠一个电话,告诉你运行于服务器2的数据库Y上的过程X运行很慢,而必须有一个机制来查找这些信息。也不能用“慢”来说明工作的状态。慢是和什么相比?上一周?还是上一个月?和开发时相比?一旦你认定某些部件运行缓慢,必须要指出原因。它是否需要一个索引?它是否有一个未用的索引?是由于CPU、磁盘、内存、用户数,还是数据量?已经认定了慢的部件和原因后,还必须做一些事情。如何优化?重写查询?修改Where子句?当开始性能调整时,这些问题会没完没了。  本书将提供回答这些问题所需要的工具。将会说明,如何建立一个收集服务器上运行的SQLServer实例及其中的数据库性能数据的机制。还将介绍收集单个T-SQL调用数据的巧妙方法。过程中,将讨论索引结构、选择和维护,编写T-SQL代码的最佳方法,以及许多其他的主题。编写本书的目标之一,是使用类似于在真实世界中所能看到的查询类型的实例来说明这些主题。所介绍的工具和方法大部分都可以用于SQL Server标准版,但是有些只可用于SQL Server企业版——到时会有相关提示。  本书将有条理地介绍进行这些工作和回答这些问题的工具,从而消除当前在性能优化中常见的猜测工作。性能问题不是什么可怕的事情,使用正确的工具,可以从容而可靠地解决性能问题,并赢得同伴和客户的尊敬以及直接帮助他们成功。  本书的读者  本书适合于任何负责系统性能的读者。这无疑包括数据库管理员,因为他们负责建立系统,创建基础架构,并且随时对其进行监控。开发人员也被包括在内,因为除了他们,还有谁需要生成结构良好和高性能的T-SQL代码?数据库开发人员比任何人都更是目标读者,因为数据库开发正是我的工作。  任何有能力编写T-SQL、设计表、实现索引或者在SQL Server系统上操纵服务器设置的人都在一定程度上需要这些信息。  本书的结构  本书的目的是尽量使用真实的查询。为此,需要一个“真实”的数据库。我本可以创建一个并强迫大家去下载,但是这里我选择使用一个Miicrosoft创建的样板数据库Adventure Works 2008来代替——这可以通过CodePlex得到。建议保持一份便于恢复的拷贝,并且在阅读本书的两个主题之后复位样板数据库。Microsoft随时会更新这些数据库,所以可能看到和本书中所列出的不同的数据组或不同的查询表现。在一定程度上,本书基于前面章节所介绍的知识来构建。但是,许多章节介绍该主题中的独特信息,所以可以挑选特定的章节阅读,从第1章到第16章顺序阅读可以获得最大的好处。  ?第1章“SQL查询性能调整”介绍性能调整的迭代过程。你将得到发布性能基线、识别瓶颈、解决问题以及量化改进的第一印象。  ?第2章“系统性能分析”从监控运行SQL Server的Windows系统开始,说明作为数据收集机制的性能监视器和用户自定义函数。  ?第3章“SQL查询性能分析”定义了查看“隐藏的秘密”以及了解系统上运行何种查询的最佳方法,它提供了Profiler和跟踪工具的细节。本章中第一次介绍了多种用于监控查询的动态管理视图和功能。

内容概要

本书通过大量实例,详细介绍了SQL Server数据库系统优化的各种方法和技巧。内容涵盖了数据库应用系统中各种性能瓶颈的表现形式及其发生的根源和解决方法,从硬件瓶颈到查询、索引设计以及数据库管理等,贯穿了数据库系统知识的各个方面。最后以一个实际的工作负载将所有技巧联系起来,并且提供了“宝典”式的最佳实践列表。    本书适合于关心数据库应用系统性能的开发人员和数据库管理人员阅读。通过阅读本书,不仅可以学习到数据库性能管理的许多知识和技巧,还有助于养成良好的编程习惯,为实现高性能的数据库应用系统打下基础。

作者简介

  弗里奇(Grant Fritchey),为FM Global(一家行业领先的工程和保险公司)工作,担任首席DBA。他使用各种语言(如VB、C#和Java等)开发了许多大规模的应用程序,从版本6.0开始使用SQL Server。他曾经为3家失败的.com公司担任财务和咨询工作,还是Dissecting SQL Server Execution Plans一书的作者。  达姆(Sajal Dam),拥有位于印度班加罗尔的印度理工学院的计算机科学技术硕士学位,并且使用微软技术超过16年。他已经在设计数据库应用和管理软件开发方面拥有了很广泛的背景。Saial还在从前端网页到后端数据库的基于微软技术的应用程序上,具备了故障定位和性能优化的大量经验。他有许多为《财富》500强公司设计可伸缩的数据库解决方案和最大化数据库环境性能的经验。

书籍目录

第1章 SQL查询性能调整  1.1 性能调整过程    1.1.1 核心过程    1.1.2 迭代过程  1.2 性能vs.价格    1.2.1 性能目标    1.2.2 “足够好”的调整  1.3 性能基线  1.4 工作的重点  1.5 SQL Server性能杀手    1.5.1 低质量的索引    1.5.2 不精确的统计    1.5.3 过多的阻塞和死锁    1.5.4 不基于数据集的操作    1.5.5 低质量的查询设计    1.5.6 低质量的数据库设计    1.5.7 过多的碎片    1.5.8 不可重用的执行计划    1.5.9 低质量的执行计划    1.5.10 频繁重编译计划    1.5.11 游标的错误使用    1.5.12 错误配置数据库日志    1.5.13 过多使用或者错误配置tempdb  1.6 小结第2章 系统性能分析第3章 SQL查询性能分析第4章 索引分析第5章 数据库引擎调整顾问第6章 书签查找分析第7章 统计分析第8章 碎片分析第9章 执行计划缓冲分析第10章 存储过程重编译第11章 查询设计分析第12章 阻塞分析第13章 死锁分析第14章 游标开销分析第15章 数据库工作负载优化第16章 SQL Server优化检查列表

章节摘录

  在性能分析期间,一般在不同的数据列(如Duration、CPU和:Reads)上排序以确定相应数字最大的查询。如果脱机排序,就能降低在与SQL Server交互时必须进行的Profiler活动。排序捕捉到的SQL跟踪输出的方法,步骤如下。  (1)捕捉跟踪,不做任何排序(或分组)。  (2)保存跟踪输出到一个跟踪文件。  (3)打开跟踪文件并按照需要在特定的数据列上排序(或分组)跟踪文件输出。  3.45远程运行profiler  直接在生产服务器上运行测试工具一般不是一个好办法。Profiler有一个大型的用户界面,因此,在其他机器上运行它更好。与系统监视器相似,Profiler不应该通过终端服务会话来运行,因为这样工具的主要部分仍然在服务器上运行。在直接将跟踪输出收集到一个文件时,保存在Profiler运行的本地文件上。这仍然是比通过系统存储过程将Profiler作为服务器端跟踪来运行更加资源密集的操作。使用系统存储过程仍然是最好的选择。

图书封面

图书标签Tags

评论、评分、阅读与下载


    SQL Server 2008查询性能优化 PDF格式下载


用户评论 (总计37条)

 
 

  •   数据库查询优化方方面面都讲到了。很不错
  •   当你对sql熟悉后,你会发现,你需要一本书如何知道你去更好的建立索引,更好的优化你的sql语句。那么久看这本书吧,尤其对索引的讲解让你终身都会受益的,读完书后你会发现,自己原来了解的只是表面,这次是一本透彻的书籍,适合有一定sql基础的人去读...
  •   内容全面,内容多而细,不错的,可以作为深入学习用的书
  •   看了两个多月非常经典适用,讲解详细。
  •   这本书很全面,很有深度。
  •   书纸张还不错,内容中等,
  •   发货速度,送货速度都挺快。一天
  •   希望能借助此书对能力提高很多。
  •   还没细看,看了下目录觉得不错
  •   很快,书也很好。
  •   就是简单看了看,没有深入了。
  •   非常好的书,我经常看,对我帮助比较大;
  •   还是相当不错的 好好好啊
  •   挺深奥的书籍,高级入阶使用
  •   对sql server性能调优反面的内容讲得很全面
    思路、步骤、方法、工具等等都面面俱到
    但是对于查询方面简洁的深度还不够
    另外,翻译也显得有些生硬和模糊
    总的说来还是一本不错的书
  •   数据库优化工具书,同事觉得不错,挺有帮助
  •   书讲得很好,对于开发人员来说,在T-SQL时更注重性能优化。只是有些地方翻译的不好。
  •   对了解掌握一些性能调优比较好,书上讲了一些基本原理,关于性能的方面的,让你对性能调节的 时候能有一个大概的方案。这书本属于入门后进阶参考书
  •   该书介绍得很详细,不错
  •   是本比较全面的书
  •   书看起来应该不错,但是还没有仔细看,先给个4分吧,正好是我现在需要的书。
  •   很好的书,推荐购买,比较有难度
  •   书很好,启发很大..翻译公平的来说,还算一般,但是对于中国现在大多数数翻译的不给力,这个已经不错了
  •   从购买到手还没有好好看,看了前两章,貌似写在Windows2008服务器上的一本书,暂时还没有这样的OS就没有详细的往下看,一些东西还不清楚是什么东东,等安装了win2008server再详细的看看。
  •   较难,适合开发程序多年的程序员
  •   也可以,大的 十大书店啊实打实大发上的发生大法师打发似的都是法师打发斯蒂芬阿斯顿发斯蒂芬说vcfdfsfd 实打实大法师大哥
  •   内容讲解的深度一般
  •   感觉内容比其他实用性的书差点
  •   翻译显得有些生硬和模糊
  •   工具书用的。
  •   翻译略差劲
  •   大概看了一下,讲的不错
  •   书,还没有看
  •   很不错。老公经常拿来翻看。
  •   还没看,应该还是不错的
  •   入手参考
  •   很适用。。。。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7