一、简介
microsoft sql server 2005 使其查询执行计划(又称作 showplan)可以采用 xml 格式。而且可以使用任何一种 xml 技术(例如 xpath、xquery 或 xslt)来处理 xml showplan。本文描述从其 xml showplan 中提取查询的估计执行成本的应用程序。transact-sql 所提取的成本可用于 transact-sql 窗口。使用该技术,用户只能将那些成本低于预定阈值的查询提交到运行 sql server 的服务器。这确保该服务器不会由于成本高、长时间运行的查询而超载。
本文的目标是 sql server 开发人员与数据库管理员 (dba)。它向数据库管理员简要介绍了 sqlclr(公共语言运行库)。用于提取 showplan 的应用程序使用两个 microsoft visual c# .net 小程序,本文还详细阐述 sql server 如何调用通过编译这些程序生成的 dll。该应用程序还使用了可用于查询与提取 xml 数据中信息的 xpath 与 xquery 技术。sql server 2005 为这两种查询语言提供内置支持。本文演示这两种语言如何与 transact-sql 进行无缝地交互操作。 【相关文章:决战虚拟化】
二、目标与受众 【扩展阅读:微软、VMWare加入Mac虚拟化战局】
1. 【扩展信息:IBM更强的虚拟化技术有望在Power6】
三、问题声明sql server dba 有时会遇到这种情况,即用户在工作高峰期向服务器提交长时间运行的查询,因而降低了服务器的响应速度。有两种方法可以防止这一情况的发生:
dba 可使用 sp_configure 将 query governor cost limit 选项设置为特定阈值。(这是一个高级选项。)该阈值在整个服务器内是有效的。
2.
要影响连接的阈值,dba 可以使用 set query_governor_cost_limit 语句。
可以想像一下需要更细粒度控制的情况。例如,用户可能有三个等效但语法结构不同的查询,并希望以执行速度尽可能最快的形式自动提交该查询。此外,用户还可能希望不执行任何估计执行成本超过特定阈值的查询。以编程方式访问查询成本,将允许用户通过控制基于估计执行成本的查询提交过程来构建服务器友好的应用程序。
... 下一页