对比SQL Server中XML AUTO和T-SQL命令

豆豆网   技术应用频道   2007年08月02日    社区交流

内容摘要:在本文里,我会通过比较XML AUTO功能和标准的T-SQL命令来显示性能上的差异。在我的测试过程中,我会仅仅涉及到XML AUTO功能的一个比较小的基础的部分,同时我也建议大家在你自己的环境当中来测试你将要使用的XML功能。

  XML AUTO功能与T-SQL命令

  作为一个DBA,我倾向于关注性能方面的问题,因此我要确定使用XML(扩展标记语言)并不会对性能产生影响。在本文里,我会通过比较XML AUTO功能和标准的T-SQL命令来显示性能上的差异。在我的测试过程中,我会仅仅涉及到XML AUTO功能的一个比较小的基础的部分,同时我也建议大家在你自己的环境当中来测试你将要使用的XML功能。

  测试环境描述

  在我的测试当中,我会建一个包含了一万行记录的表格,如下所述:

  

  表格包含的记录如下:

  select * from Employes

  

  XML Auto处理大量的数据

  在我的表格中我使用了如下的查询语句,以一个标准的T-SQL查询开始,并且接着每次都向命令添加了更多的XML结构:

  SELECT*FROMEmployes
  Go
  SELECT*FROMEmployesFORXMLAUTO
  go
  SELECT*FROMEmployesFORXMLAUTO,TYPE
  go
  SELECT*FROMEmployesFORXMLAUTO,TYPE,ELEMENTS
  go
  SELECT*FROMEmployesFORXMLAUTO,TYPE,ELEMENTS,
  ROOT
  go

  我在SQL Profiler中监控了这些命令。我发现Duration列在SQL Profiler中是不准确的。当Query Analyzer仍然在处理结果的时候已经执行的XML命令已经在Profiler中显示了。因此我会忽略掉这列,并且观察其他的资源:CPU和I/O。下面是对五个命令执行三次的监控结果:

来源:TechTarget    作者:Michelle Gutzait    责编:豆豆技术应用

正在加载评论...