<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DotNetBob on SQL</title>
	<atom:link href="http://sql.dotnetbob.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://sql.dotnetbob.com</link>
	<description>My thoughts on SQL - the beast within</description>
	<lastBuildDate>Mon, 05 Apr 2010 15:29:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>TempDB Capacity Planning, Optimizing For Performance and Troubleshooting Insufficient Disk Space</title>
		<link>http://sql.dotnetbob.com/?p=140</link>
		<comments>http://sql.dotnetbob.com/?p=140#comments</comments>
		<pubDate>Mon, 05 Apr 2010 15:29:17 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=140</guid>
		<description><![CDATA[There are three must read articles  by Microsoft regarding the TempDB

Capacity Planning for tempdb
Optimizing tempdb Performance
Troubleshooting Insufficient Disk Space in tempdb

Be sure to check them out!

    

	]]></description>
			<content:encoded><![CDATA[<p>There are three must read articles  by Microsoft regarding the TempDB</p>
<ul>
<li><a href="http://msdn.microsoft.com/en-us/library/ms345368.aspx" target="_blank">Capacity Planning for tempdb</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/ms175527.aspx" target="_blank">Optimizing tempdb Performance</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/ms176029.aspx" target="_blank">Troubleshooting Insufficient Disk Space in tempdb</a></li>
</ul>
<p>Be sure to check them out!</p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=TempDB%20Capacity%20Planning%2C%20Optimizing%20For%20Performance%20and%20Troubleshooting%20Insufficient%20Disk%20Space&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D140"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=140</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plan Caching in SQL Server 2008</title>
		<link>http://sql.dotnetbob.com/?p=138</link>
		<comments>http://sql.dotnetbob.com/?p=138#comments</comments>
		<pubDate>Mon, 29 Mar 2010 15:00:57 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>
		<category><![CDATA[White Papers]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=138</guid>
		<description><![CDATA[I had the pleasure of meeting Greg Low recently, a Microsoft Certified Master. Greg is an amazingly intelligent individual, with all kinds of SQL Server experience. Greg has updated the Plan Caching paper originally written for SQL 2005, and made it relevant for SQL 2008. You can find that paper located here. I encourage you [...]]]></description>
			<content:encoded><![CDATA[<p>I had the pleasure of meeting Greg Low recently, a Microsoft Certified Master. Greg is an amazingly intelligent individual, with all kinds of SQL Server experience. Greg has updated the Plan Caching paper originally written for SQL 2005, and made it relevant for SQL 2008. You can find that paper located <a href="http://msdn.microsoft.com/en-us/library/ee343986.aspx" target="_blank">here</a>. I encourage you to read it, it is amazingly important for anyone doing performance tuning.</p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=Plan%20Caching%20in%20SQL%20Server%202008&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D138"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=138</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Server Wait Types</title>
		<link>http://sql.dotnetbob.com/?p=136</link>
		<comments>http://sql.dotnetbob.com/?p=136#comments</comments>
		<pubDate>Mon, 29 Mar 2010 14:57:57 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=136</guid>
		<description><![CDATA[Been meaning to blog more, but yowsas, time flies by. Anyhoo, this link is great for determining the exact nature of a wait type, and what it means. I frequently refer to the Microsoft SQL Server Tuning Blue Print white paper, and sometimes, as you may know, there are a lot of wait types not [...]]]></description>
			<content:encoded><![CDATA[<p>Been meaning to blog more, but yowsas, time flies by. Anyhoo, this link is great for determining the exact nature of a wait type, and what it means.<span id="more-136"></span> I frequently refer to the Microsoft SQL Server Tuning Blue Print white paper, and sometimes, as you may know, there are a lot of wait types not mentioned in there that may show up on the SQL Performance Dashboard. This article helps to determine what those wait types are:</p>
<p><a href="http://msdn.microsoft.com/en-us/library/ms179984.aspx" target="_blank">sys.dm_os_wait_stats</a></p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=SQL%20Server%20Wait%20Types&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D136"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=136</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working with tempdb in SQL Server 2005</title>
		<link>http://sql.dotnetbob.com/?p=134</link>
		<comments>http://sql.dotnetbob.com/?p=134#comments</comments>
		<pubDate>Thu, 03 Dec 2009 14:30:13 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>
		<category><![CDATA[Storage Discussions]]></category>
		<category><![CDATA[White Papers]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=134</guid>
		<description><![CDATA[Wow, it&#8217;s been a while since I posted last, so let&#8217;s get right to it. Microsoft has an interesting read on this article concerning the TempDB.

http://technet.microsoft.com/en-us/library/cc966545.aspx
What caught my eye was the section concerning the number of files for TempDB. Although it isn&#8217;t a new concept to me, it is still intersting to get more feedback [...]]]></description>
			<content:encoded><![CDATA[<p>Wow, it&#8217;s been a while since I posted last, so let&#8217;s get right to it. Microsoft has an interesting read on this article concerning the TempDB.</p>
<p><span id="more-134"></span></p>
<p><a href="http://technet.microsoft.com/en-us/library/cc966545.aspx">http://technet.microsoft.com/en-us/library/cc966545.aspx</a></p>
<p>What caught my eye was the section concerning the number of files for TempDB. Although it isn&#8217;t a new concept to me, it is still intersting to get more feedback on this particular issue. Read on at your leisure!</p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=Working%20with%20tempdb%20in%20SQL%20Server%202005&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D134"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=134</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disk Partition Alignment Best Practices For SQL Server</title>
		<link>http://sql.dotnetbob.com/?p=128</link>
		<comments>http://sql.dotnetbob.com/?p=128#comments</comments>
		<pubDate>Thu, 14 May 2009 19:28:56 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=128</guid>
		<description><![CDATA[You know, Microsoft has been putting out a steady stream of pretty cool articles. This one, shows some quantifiable data as it relates to disk partitioning. (Thanks to my buddy Marc for pointing this one out to me!)
http://msdn.microsoft.com/en-us/library/dd758814.aspx
 
If you weren&#8217;t interested in Windows 2008 before, you should be now. The conclusion also has an interesting [...]]]></description>
			<content:encoded><![CDATA[<p>You know, Microsoft has been putting out a steady stream of pretty cool articles. This one, shows some quantifiable data as it relates to disk partitioning. (Thanks to my buddy Marc for pointing this one out to me!)</p>
<p><span id="more-128"></span><a href="http://msdn.microsoft.com/en-us/library/dd758814.aspx">http://msdn.microsoft.com/en-us/library/dd758814.aspx</a></p>
<p> </p>
<p>If you weren&#8217;t interested in Windows 2008 before, you should be now. The conclusion also has an interesting section, and I quote: </p>
<blockquote><p>&#8220;Windows Server 2008 aligns partitions by default. When servers are upgraded to Windows Server 2008, preexisting partitions are not automatically aligned and must be rebuilt for optimal performance. Thus, until existing misaligned partitions created using Windows Server 2003 or Windows 2000 Server are rebuilt properly, disk partition alignment will remain a relevant technology.&#8221;</p></blockquote>
<p> </p>
<p>Let me know what you think, looks pretty exciting to me!</p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=Disk%20Partition%20Alignment%20Best%20Practices%20For%20SQL%20Server&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D128"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=128</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Performance Analysis With Logs (PAL)</title>
		<link>http://sql.dotnetbob.com/?p=122</link>
		<comments>http://sql.dotnetbob.com/?p=122#comments</comments>
		<pubDate>Thu, 14 May 2009 13:26:26 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=122</guid>
		<description><![CDATA[Have you guys seen the new Performance Analysis with Logs (PAL) tool posted by Microsoft at codeplex for tuning any type of system using performance counters? It&#8217;s pretty amazing to say the least. Now, I&#8217;ve discovered some bugs recently with it, but aside from that, the output is very satisfying. Here&#8217;s a link, tell me [...]]]></description>
			<content:encoded><![CDATA[<p>Have you guys seen the new Performance Analysis with Logs (PAL) tool posted by Microsoft at codeplex for tuning any type of system using performance counters? It&#8217;s pretty amazing to say the least. <span id="more-122"></span>Now, I&#8217;ve discovered some bugs recently with it, but aside from that, the output is very satisfying. Here&#8217;s a link, tell me what you guys think:</p>
<p><a href="http://www.codeplex.com/PAL">http://www.codeplex.com/PAL</a></p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=Performance%20Analysis%20With%20Logs%20%28PAL%29&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D122"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=122</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Read the Log With TSQL (fn_dblog)</title>
		<link>http://sql.dotnetbob.com/?p=115</link>
		<comments>http://sql.dotnetbob.com/?p=115#comments</comments>
		<pubDate>Thu, 14 May 2009 13:18:45 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=115</guid>
		<description><![CDATA[Hi again, 
This undocumented command in TSQL reads your log file and returns results. If you&#8217;ve ever used a log reader such as the one from APEX, or any other log reader for that matter, you will see the resemblence. Here&#8217;s the syntax on how to call this particular function:
 
SELECT *
FROM ::fn_dblog(NULL, NULL)

From what I can [...]]]></description>
			<content:encoded><![CDATA[<p>Hi again, </p>
<p>This undocumented command in TSQL reads your log file and returns results. If you&#8217;ve ever used a log reader such as the one from APEX, or any other log reader for that matter, you will see the resemblence. Here&#8217;s the syntax on how to call this particular function:</p>
<p> </p>
<blockquote><p>SELECT *</p>
<p>FROM ::fn_dblog(NULL, NULL)</p>
<p><span id="more-115"></span></p></blockquote>
<div>From what I can gather, DML statements are usually denoted by a value of &#8220;LOP_BEGIN_XACT&#8221; in the operation column. So, if you were looking to see what DML may have occurred recently, you can use this command to figure that out. One thing that I noticed: A checkpoint will clear your results. So if you have code that issues checkpoints on purpose you need to consider this when reviewing the output of this tool. </div>
<div>Also, you can run the following command to get more detail on the parameters and columns of the function:</div>
<blockquote>
<div>sp_help fn_dblog</div>
</blockquote>
<div>Have fun!</div>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=How%20to%20Read%20the%20Log%20With%20TSQL%20%28fn_dblog%29&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D115"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=115</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Troubleshooting Performance Problems in SQL Server 2005</title>
		<link>http://sql.dotnetbob.com/?p=109</link>
		<comments>http://sql.dotnetbob.com/?p=109#comments</comments>
		<pubDate>Thu, 07 May 2009 15:19:53 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>
		<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=109</guid>
		<description><![CDATA[Hi all, the following guide was taken from Microsoft&#8217;s best practices site. I&#8217;ve found out through the years that our product has been challenged by many of the performance problems listed in this guide, so it is definitely a good read!
You can find the Microsoft link here:
Here is the document for your reference as well: tshootperfprobs

 [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all, the following guide was taken from Microsoft&#8217;s best practices site. I&#8217;ve found out through the years that our product has been challenged by many of the performance problems listed in this guide, so it is definitely a good read!</p>
<p>You can find the Microsoft link <a title="Troubleshooting Performance Problems in SQL Server 2005" href="http://technet.microsoft.com/en-us/library/cc966540.aspx" target="_blank">here</a>:</p>
<p>Here is the document for your reference as well:<a href="http://sql.dotnetbob.com/wp-content/uploads/2009/05/tshootperfprobs.doc"><span style="color: #000000; text-decoration: none;"> </span></a><span style="line-height: 26px;"><a href="http://sql.dotnetbob.com/wp-content/uploads/2009/05/tshootperfprobs.doc">tshootperfprobs</a></span></p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=Troubleshooting%20Performance%20Problems%20in%20SQL%20Server%202005&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D109"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=109</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Troubleshoot SQL Server CPU Bottlenecks</title>
		<link>http://sql.dotnetbob.com/?p=96</link>
		<comments>http://sql.dotnetbob.com/?p=96#comments</comments>
		<pubDate>Thu, 07 May 2009 15:06:35 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>
		<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=96</guid>
		<description><![CDATA[Assuming you don&#8217;t have already have a fancy tool like Quest Software&#8217;s Performance Analyzer, or you aren&#8217;t using the Performance Dashboard offered by Microsoft, one way to quickly determine if you are CPU bound and what is actually utilizing your CPU utilization is to use a couple queries. I borrowed some information from the Microsoft [...]]]></description>
			<content:encoded><![CDATA[<p><span style="line-height: 26px; ">Assuming you don&#8217;t have already have a fancy tool like Quest Software&#8217;s Performance Analyzer, or you aren&#8217;t using the Performance Dashboard offered by Microsoft, one way to quickly determine if you are CPU bound and what is actually utilizing your CPU utilization is to use a couple queries. I borrowed some information from the Microsoft document called <em>Troubleshooting Performance Problems in SQL Server 2005</em> below.<span id="more-96"></span><br />
</span></p>
<p><span style="line-height: 26px; ">First, CPU bottlenecks can occur from a variety of sources, including:</span></p>
<ul>
<li>Nonoptimal query plan</li>
<li>Poor SQL Server configuration</li>
<li>Insufficient hardware resources</li>
<li>Nonoptimal schema design</li>
</ul>
<p> </p>
<p>The best approach to determine if your SQL Server is CPU bound (meaning the  CPU has reached 100% utilization) is to utilize System Monitor in Windows and  review the counter called Processor: % Processor Time. Values greater than 80%  indicate your system has a CPU bottleneck. In addition, you can also use  sys.dm_os_schedulers to find out how many runnable tasks exist. Values other  than zero indicate that tasks are waiting to run, and high values are an  indication that the CPU is bottlenecking your performance. This query will  identify the number of runnable tasks:</p>
<p style="padding-left: 30px;"><span style="line-height: 26px;">SELECT</span></p>
<p style="padding-left: 30px;">    scheduler_id,</p>
<p style="padding-left: 30px;">    current_tasks_count,</p>
<p style="padding-left: 30px;">    runnable_tasks_count</p>
<p style="padding-left: 30px;">FROM</p>
<p style="padding-left: 30px;">    sys.dm_os_schedulers</p>
<p style="padding-left: 30px;">WHERE scheduler_id &lt; 255</p>
<p>Additionally, the following query shows which batches or procedures are  consuming the most CPU and will also include the actual SQL statement. The query  aggregates by a specific plan handle. If the plan handle contains more than one  SQL statement you must drill into each statement to determine where the greatest  CPU contribution comes from.</p>
<p style="padding-left: 30px;"><span style="line-height: 26px;">SELECT TOP 50</span></p>
<p style="padding-left: 30px;"><span style="line-height: 26px; ">   SUM(qs.total_worker_time) as total_cpu_time,�<br />
<span style="line-height: 26px; ">   (SELECT [TEXT] FROM sys.dm_exec_sql_text(plan_handle)),<br />
<span style="line-height: 26px; ">   SUM(qs.execution_count) as total_execution_count,<br />
<span style="line-height: 26px; ">   COUNT(*) as number_of_statements,�<br />
<span style="line-height: 26px; ">   qs.plan_handle<br />
<span style="line-height: 26px; ">FROM sys.dm_exec_query_stats qs<br />
<span style="line-height: 26px; ">GROUP BY qs.plan_handle<br />
<span style="line-height: 52px; ">ORDER BY SUM(qs.total_worker_time) DESC<br />
</span></span></span></span></span></span></span></span></p>
<p>Additional consideration must be given to excessive query recompilation,  innefficient query plans, intra-query parralelism and cursor usage when  considering CPU bottlenecks. Please refer to Microsoft&#8217;s article titled  <em>Troubleshooting Performance Problems in SQL Server 2005 </em>for more  detailed information.</p>
<p><!-- Long Description HTML File End --></p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=How%20to%20Troubleshoot%20SQL%20Server%20CPU%20Bottlenecks&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D96"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=96</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DMV Stats by Microsoft, a Hit or Miss?</title>
		<link>http://sql.dotnetbob.com/?p=91</link>
		<comments>http://sql.dotnetbob.com/?p=91#comments</comments>
		<pubDate>Wed, 22 Apr 2009 00:12:54 +0000</pubDate>
		<dc:creator>Delamater</dc:creator>
				<category><![CDATA[SQL Server Performance Tuning]]></category>

		<guid isPermaLink="false">http://sql.dotnetbob.com/?p=91</guid>
		<description><![CDATA[DMV Stats, hit or miss?]]></description>
			<content:encoded><![CDATA[<p>Hi again,</p>
<p>A few months back our firm decided that performance was enough of a problem for our product that we figured hiring a Microsoft consultant to come out would be a good idea. We learned a lot from the analyst, not so much in terms of things we didn&#8217;t already know, but really, useful tools to help make our performance tuning easier. Along with the Performance Dashboard, which I ultimately wrote an entire training manual on, Mr. Microsoft Guy also told us about DMV Stats. If you are already aware of this tool, please stop reading now. However, if you are interested in knowing what it is, check out this link&#8230;</p>
<p><span id="more-91"></span></p>
<p style="padding-left: 30px;"><a href="http://sqldmvstats.codeplex.com/" target="_blank">DMVStats 1.01 </a></p>
<p>That link takes you to Codeple, where Microsoft has uploaded a series of reports that run within SSRS (SQL Server Reporting Services). First thing first, you need SSRS installed and running! Also, it needs to be patched up to the same level as the rest of your SQL Server 2005 system (assuming you are running SQL 2005). May I suggest not using RTM? I had a nasty time of it at my last job when it came to installing and running SSRS. For the love of all that is good and right in the world, download your service packs and apply them.</p>
<p>Also, before you install SQL DMV Stats you&#8217;ll need to set up SSRS. Never done it before? Follow this link to determine how:</p>
<p style="padding-left: 30px;"><a href="http://support.microsoft.com/kb/938245">How to install and how to configure SQL Server 2005 Reporting Services on a computer that is running Windows Server 2008</a></p>
<p>Really, it is simple once you have the service packs installed.</p>
<p>Other gotchas include setting up DMV Stats after it is installed. Make sure to look at the zip file after you download DMV Stats. There is a read me file in there that explains a few problems. For example, if you have a non-default server install, which could be as little as using a named instance, then you&#8217;ll need to address that within a DOS batch file.</p>
<p>Next, after you get the DMV Stats installed you&#8217;ll need to configure it. How do you configure that within SSRS you ask? Simple, the reports that run are interactive. There are a few concepts you should be aware of so read the documentation carefully. There are snapshots, samples and baselines. Baselines are uber importante! Make sure you have them. Also, you need to turn on the sql agent jobs. That means, if you are like me and are searching for every ounce of memroy you can muster up on your PC, then you have SQL Agent turned off&#8230;. ha, that day has come and gone.</p>
<p>You&#8217;ll need to have SQL Agent turned on in order for DMV Stats to work. However, you can adjust the timing of when the jobs are run, check the documentation. Also, each database on your server has to be turned on for collection. That&#8217;s the Configure Baselines report  (check the name on that, I&#8217;m not close to my work PC at the moment).</p>
<p>That leads me to another gotcha&#8230; don&#8217;t turn on too many databases for monitoring, your IO will go crazy! I frequently had system freezes as I run Virtual PC, SQL Server (both in and outside of the virtualized system) and so you can see how much IO there is. The procedures tied to DMV Stats are somewhat IO intensive so I would suggest you keep a handle on exaclty how much of your available disk IO you have.</p>
<p>Lastly, I&#8217;ll state my opinion on DMV Stats. I liked it, but let&#8217;s be honest, it&#8217;s not Quest Software&#8217;s Performance Analyzer tool. I like that it is a free tool, but the resources required to run it on a single box were pretty intensive. I saw the ASP.Net worker process tied to the report generation reach over 400 Mb. Furthermore, the IO quickly rose to the top of my demand, leaving me with little resources to perform other activities (this was clearly because I configured too many databases for it to monitor).</p>
<p>I&#8217;ll say one thing for certian, the Performance Dashboard is quite competitive, but the DMV Stats leave some room for improvement. I might blog some more on this later when I get some more time, but that&#8217;ll have to do for now. Hope this helps.</p>
<p>Cheers,<br />
Bob</p>
<p class="addtoany_share_save_container">
    <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?sitename=DotNetBob%20on%20SQL&amp;siteurl=http%3A%2F%2Fsql.dotnetbob.com%2F&amp;linkname=DMV%20Stats%20by%20Microsoft%2C%20a%20Hit%20or%20Miss%3F&amp;linkurl=http%3A%2F%2Fsql.dotnetbob.com%2F%3Fp%3D91"><img src="http://sql.dotnetbob.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>

	</p>]]></content:encoded>
			<wfw:commentRss>http://sql.dotnetbob.com/?feed=rss2&amp;p=91</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
