<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www2.sqlblog.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Kalen Delaney : seminars</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx</link><description>Tags: seminars</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Did You Know? I’m delivering my first SQL Server 2012 class this week!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2012/08/07/my-first-sql-server-2012-class.aspx</link><pubDate>Wed, 08 Aug 2012 04:14:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44609</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>4</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/44609.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=44609</wfw:commentRss><description>This is actually just a very short post to get my name back up in the list on the right side of SQLBlog, because Adam’s configuration removes people who haven’t posted in 3 months. I’ve been extremely busy trying to get my new book finished, and then...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2012/08/07/my-first-sql-server-2012-class.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=44609" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/SQL+Server+2012/default.aspx">SQL Server 2012</category></item><item><title>Geek City: Ordered Seeks and Scans</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2011/01/21/ordered-seeks-and-scans.aspx</link><pubDate>Fri, 21 Jan 2011 23:28:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:32833</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>5</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/32833.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=32833</wfw:commentRss><description>I got a couple of really great questions during my SSWUG Workshop this morning , as I was discussing seeks and scans, and since the answers to the two questions are very related, I decided to address both of them in more detail in this blog post. Most...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2011/01/21/ordered-seeks-and-scans.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=32833" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/showplan/default.aspx">showplan</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/indexes/default.aspx">indexes</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Geek City: 24Hours of PASS Followup</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/09/16/24HOPfollowup.aspx</link><pubDate>Thu, 16 Sep 2010 18:20:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:28815</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/28815.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=28815</wfw:commentRss><description>Thank you everyone who attended my 24HOP session yesterday. It was a wonderful event to be part of. Here are a few of the questions that I was asked, that didn't get completely answered. Question: Can we set READ_COMMITTED_SNAPSHOT ON for just a table...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/09/16/24HOPfollowup.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=28815" width="1" height="1"&gt;</description><enclosure url="http://www2.sqlblog.com/blogs/kalen_delaney/attachment/28815.ashx" length="1177927" type="application/x-zip-compressed" /><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/PASS/default.aspx">PASS</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/concurrency/default.aspx">concurrency</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/sparse+columns/default.aspx">sparse columns</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/locking/default.aspx">locking</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/isolation/default.aspx">isolation</category></item><item><title>Geek City: Plan Caching Internals</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/08/23/plan-caching-internals.aspx</link><pubDate>Mon, 23 Aug 2010 17:04:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:28191</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/28191.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=28191</wfw:commentRss><description>This Friday is the last of my summer seminars. On August 27, I am presenting on plan caching, plan reuse and recompile and plan cache metadata. This is one of my favorite topics to talk about, because a lot of the information is not very widely known,...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/08/23/plan-caching-internals.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=28191" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/metadata/default.aspx">metadata</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/plan+cache/default.aspx">plan cache</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Did You Know: My Online Seminar Lasted Almost 5 Hours!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/07/24/my-online-seminar-lasted-almost-5-hours.aspx</link><pubDate>Sun, 25 Jul 2010 00:06:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:27274</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/27274.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=27274</wfw:commentRss><description>Yesterday was a rebroadcast of the index internals seminar I presented last February, and I had forgotten how long it was. I was in a chat room the whole time, and the questions just kept coming, fast and (not so) furious! Thanks to all the participants...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/07/24/my-online-seminar-lasted-almost-5-hours.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=27274" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/internals/default.aspx">internals</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/indexes/default.aspx">indexes</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item><item><title>Geek City: Index Internals</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/07/19/seminar-on-index-internals.aspx</link><pubDate>Mon, 19 Jul 2010 14:15:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:27136</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/27136.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=27136</wfw:commentRss><description>Once again, I'll be presenting an online seminar through SSWUG . This on is on Index Internals . The presentation lasts over 3 and a half hours, and I'll be online for live chat for over 4 hours. Ask away! We'll look at juicy details of exactly how clustered...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/07/19/seminar-on-index-internals.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=27136" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/indexes/default.aspx">indexes</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item><item><title>Did You Know: Good Stuff!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/30/good-stuff-including-memory-grants.aspx</link><pubDate>Wed, 30 Jun 2010 21:33:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:26635</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/26635.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=26635</wfw:commentRss><description>I know, I promised a technical post after my online seminar today, and I'm still planning on that. There weren't all that many really deep questions, just a lot of basic understanding questions, plus questions about topics I'll be covering in my Plan...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/30/good-stuff-including-memory-grants.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=26635" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/memory+management/default.aspx">memory management</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Did You Know: My next web seminar is this Wednesday!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/27/my-next-web-seminar-is-this-wednesday.aspx</link><pubDate>Mon, 28 Jun 2010 03:40:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:26487</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>2</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/26487.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=26487</wfw:commentRss><description>I know, I haven't made a geeky post in a while... but I promise that I'll do one after this seminar. I'll take some of the best questions that I get during the chat and write them up here. Query Plans Workshop (June 30, 2010) Learn about basic elements,...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/27/my-next-web-seminar-is-this-wednesday.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=26487" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/showplan/default.aspx">showplan</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+tuning/default.aspx">query tuning</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Did You Know? I'm doing 3 more online seminars with SSWUG!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/11/3-more-online-seminars-with-sswug.aspx</link><pubDate>Fri, 11 Jun 2010 22:46:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:26122</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>2</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/26122.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=26122</wfw:commentRss><description>As I told you in April , I recorded two more seminars with Stephen Wynkoop, on aspects of Query Processing. The first one will be broadcast on June 30 and the second on August 27. In between, we'll broadcast my Index Internals seminar, on July 23. Workshops...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/06/11/3-more-online-seminars-with-sswug.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=26122" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/plan+cache/default.aspx">plan cache</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/indexes/default.aspx">indexes</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Did You Know? More online seminars!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/04/22/more-online-seminars.aspx</link><pubDate>Thu, 22 Apr 2010 23:20:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:24507</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>2</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/24507.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=24507</wfw:commentRss><description>I am in Tucson again, having just recorded two more online workshops to be broadcast by SSWUG. We haven't set the dates yet, but we are thinking about offering a special package deal for the two of them. The topics really are related and I think they...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/04/22/more-online-seminars.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=24507" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/books/default.aspx">books</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/plan+cache/default.aspx">plan cache</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/query+plans/default.aspx">query plans</category></item><item><title>Did You Know? I just finished my first online seminar</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/02/12/i-just-finished-my-first-online-seminar.aspx</link><pubDate>Fri, 12 Feb 2010 23:21:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:22255</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>17</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/22255.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=22255</wfw:commentRss><description>I am really jazzed! The seminar was over 3.5 hours in length, and we had 3 15-20 minute breaks, during which questions just kept coming in the chat room. I barely got out to refill my coffee! But there were some great questions and a really enthusiastic...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2010/02/12/i-just-finished-my-first-online-seminar.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=22255" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/internals/default.aspx">internals</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/indexes/default.aspx">indexes</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item><item><title>Geek City: 24 hours of SQL Server!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2009/08/13/24-hours-of-sql-server.aspx</link><pubDate>Fri, 14 Aug 2009 01:13:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:16019</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>3</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/16019.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=16019</wfw:commentRss><description>I know, my Geek City posts are usually really technical, but I figured it’s only Geeks who are going to want a solid 24 hours of SQL Server presentations… so this post is dedicated to all the SQL Server Geeks out there! I will be presenting as part of...(&lt;a href="http://www2.sqlblog.com/blogs/kalen_delaney/archive/2009/08/13/24-hours-of-sql-server.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=16019" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/training/default.aspx">training</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/PASS/default.aspx">PASS</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/transaction+log/default.aspx">transaction log</category></item><item><title>Did You Know? I'm Going Down Under Again in June</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2009/02/03/going-down-under-again-in-june.aspx</link><pubDate>Wed, 04 Feb 2009 05:16:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:11710</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>0</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/11710.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=11710</wfw:commentRss><description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It's official... and Peter Ward has already blogged about it:&lt;/P&gt;
&lt;P&gt;&lt;A title=http://wardyit.com/blog/blog/archive/2009/01/29/kalen-delaney-in-australia-in-june.aspx href="http://wardyit.com/blog/blog/archive/2009/01/29/kalen-delaney-in-australia-in-june.aspx"&gt;http://wardyit.com/blog/blog/archive/2009/01/29/kalen-delaney-in-australia-in-june.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Anyone registering by March 27th will get a free copy of my new book, SQL Server 2008 Internals:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.amazon.com/gp/product/0735626243?ie=UTF8&amp;amp;tag=insqse-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0735626243"&gt;SQL Server 2008 Internals&lt;/A&gt; 
&lt;P&gt;But as always, there will be giveaways for more copies of this book and other swag at the end of each seminar. 
&lt;P&gt;&lt;FONT color=#ff00ff size=4&gt;~Kalen&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=11710" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/Australia/default.aspx">Australia</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item><item><title>Geek City: Reducing Cache Bloat and a Metadata Bug</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2008/10/29/reducing-cache-bloat-and-a-metadata-bug.aspx</link><pubDate>Wed, 29 Oct 2008 23:43:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:9714</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>1</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/9714.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=9714</wfw:commentRss><description>&lt;P&gt;I've been running some tests with the new SQL Server 2008 configuration option 'optimize for ad hoc workloads' which is intended to reduce cache bloat due to holding onto plans for single use ad hoc queries. This option will allow a new type of cached object to be stored, which isn't the only plan, but merely a stub. There will be a corresponding new &lt;EM&gt;cacheobjtype&lt;/EM&gt; value called "Compiled Plan Stub". &lt;/P&gt;
&lt;P&gt;There are several ways of looking at the contents of cache. In SQL 2000, we had a pseudo table called &lt;EM&gt;master.dbo.syscacheobjects&lt;/EM&gt;, and we can still access this object in SQL 2005 and 2008 by referencing the compatibility view &lt;EM&gt;sys.syscacheobjects&lt;/EM&gt; (from any database). However, when I look at this view, I don't see "Compiled Plan Stub", but rather "Compiled Plan Stu ". &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;A href="http://sqlblog.com/blogs/kalen_delaney/WindowsLiveWriter/GeekCityReducingCacheBloatandaMetadataBu_E2B9/stu.png"&gt;&lt;IMG style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height=219 alt=stu src="http://sqlblog.com/blogs/kalen_delaney/WindowsLiveWriter/GeekCityReducingCacheBloatandaMetadataBu_E2B9/stu_thumb.png" width=403 border=0&gt;&lt;/A&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So I checked the definition of &lt;EM&gt;syscacheobjects&lt;/EM&gt;, using the function &lt;EM&gt;object_definition&lt;/EM&gt;:&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Consolas size=2&gt;USE master;&lt;BR&gt;SELECT OBJECT_DEFINITION(object_id('syscacheobjects'));&lt;/FONT&gt; 
&lt;P&gt;and I saw that &lt;EM&gt;syscacheobjects&lt;/EM&gt; was derived from a column in &lt;EM&gt;sys.dm_exec_cached_plans&lt;/EM&gt;, and converted to an nvarchar(17). Unfortunately, "Compiled Plan Stub" is 18 characters long. &lt;/P&gt;
&lt;P&gt;I'll be talking about this new cached object type in my &lt;A href="http://www.sqlknowhow.com/events/insidesql3.aspx" target=_blank&gt;3-day seminar in London next week&lt;/A&gt;, and I'll post more information about using the 'optimize for ad hoc workloads' at a later time. &lt;/P&gt;
&lt;P&gt;But normally, I wouldn't have run into this problem, because I have created my own view based on the new SQL 2005 metadata, including &lt;EM&gt;sys.dm_exec_cached_plans&lt;/EM&gt;. Usually, I use my own view, which converts to a longer string, so I wouldn't have seen the string truncation. But I was testing this on a new instance, where I hadn't created my own view yet. &lt;/P&gt;
&lt;P&gt;I am including my view definition, which is what I have been using since the SQL Server 2005 came out, to inspect the plan cache. In fact, I usually add a where clause to restrict the output only to Compiled Plans. Note that the view name starting with &lt;EM&gt;sp_&lt;/EM&gt; means we can access the view from any database:&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Consolas size=1&gt;-- Create a view to show most of the same information as &lt;BR&gt;--&amp;nbsp;&amp;nbsp; SQL Server 2000's syscacheobjects &lt;BR&gt;&lt;/FONT&gt;&lt;FONT face=Consolas size=1&gt;USE master&lt;BR&gt;GO&lt;BR&gt;CREATE VIEW sp_cacheobjects(bucketid, cacheobjtype, objtype, objid, dbid, dbidexec, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uid, refcounts, usecounts, pagesused, setopts, langid, dateformat, status, lasttime, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxexectime, avgexectime, lastreads,lastwrites, sqlbytes, sql) &lt;BR&gt;AS&lt;BR&gt;SELECT &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face=Consolas size=1&gt;pvt.bucketid, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(nvarchar(20), pvt.cacheobjtype) as cacheobjtype, pvt.objtype, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(int, pvt.objectid)as object_id, CONVERT(smallint, pvt.dbid) as dbid,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(smallint, pvt.dbid_execute) as execute_dbid, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(smallint, pvt.user_id) as user_id, pvt.refcounts, pvt.usecounts, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pvt.size_in_bytes / 8192 as size_in_bytes,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(int, pvt.set_options) as setopts, CONVERT(smallint, pvt.language_id) as langid,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(smallint, pvt.date_format) as date_format, CONVERT(int, pvt.status) as status,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(bigint, 0), CONVERT(bigint, 0), CONVERT(bigint, 0), CONVERT(bigint, 0), &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(bigint, 0),CONVERT(int, LEN(CONVERT(nvarchar(max), fgs.text)) * 2), &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONVERT(nvarchar(3900), fgs.text)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Consolas size=1&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM (SELECT ecp.*, epa.attribute, epa.value&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM sys.dm_exec_cached_plans ecp &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUTER APPLY sys.dm_exec_plan_attributes(ecp.plan_handle) epa) as ecpa&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIVOT (MAX(ecpa.value) for ecpa.attribute &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IN ("set_options", "objectid", "dbid", "dbid_execute", &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "user_id", "language_id", "date_format", "status")) as pvt&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUTER APPLY sys.dm_exec_sql_text(pvt.plan_handle) fgs&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Consolas size=1&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This view shows the full cached object type:&lt;/P&gt;&lt;A href="http://sqlblog.com/blogs/kalen_delaney/WindowsLiveWriter/GeekCityReducingCacheBloatandaMetadataBu_E2B9/stub.png"&gt;&lt;IMG style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height=226 alt=stub src="http://sqlblog.com/blogs/kalen_delaney/WindowsLiveWriter/GeekCityReducingCacheBloatandaMetadataBu_E2B9/stub_thumb.png" width=528 border=0&gt;&lt;/A&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have fun!&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff00ff size=4&gt;~Kalen&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Consolas size=1&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=9714" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/metadata/default.aspx">metadata</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/plan+cache/default.aspx">plan cache</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item><item><title>Did You Know? You Can Win a Copy of My Next Book!</title><link>http://www2.sqlblog.com/blogs/kalen_delaney/archive/2008/10/24/win-a-copy-of-my-next-book.aspx</link><pubDate>Sat, 25 Oct 2008 03:09:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:9654</guid><dc:creator>Kalen Delaney</dc:creator><slash:comments>3</slash:comments><comments>http://www2.sqlblog.com/blogs/kalen_delaney/comments/9654.aspx</comments><wfw:commentRss>http://www2.sqlblog.com/blogs/kalen_delaney/commentrss.aspx?PostID=9654</wfw:commentRss><description>&lt;P&gt;November is conference month for me, and I'll be giving away vouchers for signed copies of my new book, to be mailed to the winners as soon as I receive my author copies. &lt;/P&gt;
&lt;P&gt;I'll be giving away one each day of my seminars in London and Seattle!&lt;/P&gt;
&lt;P&gt;The London seminars, for &lt;A href="http://www.sqlknowhow.com/" target=_blank&gt;SQLKnowHow&lt;/A&gt;, are taking place&amp;nbsp; the week of November 3-7, so I'll actually be out of the country the day of the US national elections. I haven't figured out if that is good news or bad news yet; I guess it depends on who wins. &lt;/P&gt;
&lt;P&gt;Monday, November 3 is &lt;A href="http://www.sqlknowhow.com/events/insidesql1.aspx"&gt;SQL Server Data Storage Formats:&lt;/A&gt; &lt;STRONG&gt;Internals, Performance and Best Practices. &lt;/STRONG&gt;This will be the first delivery of the seminar I'll be presenting for my preconference session at PASS. &lt;/P&gt;
&lt;P&gt;&lt;EM&gt;This seminar will describe all the different formats available for storing data, including the new &lt;STRONG&gt;filestream&lt;/STRONG&gt; data, &lt;STRONG&gt;compressed data&lt;/STRONG&gt; and &lt;STRONG&gt;sparse data&lt;/STRONG&gt; columns in SQL Server 2008. We’ll look at the metadata to determine exactly what is being stored and where, and discuss best practices for choosing the particular type of storage format. &lt;/EM&gt;
&lt;P&gt;Tuesday, November 4 is&amp;nbsp; &lt;A href="http://www.sqlknowhow.com/events/insidesql2.aspx"&gt;SQL Server Concurrency Control&lt;/A&gt;: &lt;STRONG&gt;Locking, Blocking and Row Versioning&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;In this seminar I'll look at the concurrency enhancements made in SQL Server 2005 based on&amp;nbsp; row-level versioning which implements optimistic concurrency. We’ll compare concurrency management with row versioning to concurrency management with locking and blocking. We'll look at the metadata that stores information about your transactions, and look at tools for troubleshooting concurrency problems.&amp;nbsp; We will also look at the locking enhancements added to SQL Server 2008.&lt;/EM&gt; 
&lt;P&gt;Wednesday - Friday, November5-7 is &lt;A href="http://www.sqlknowhow.com/events/insidesql3.aspx"&gt;SQL Server Data Internals and Tuning&lt;/A&gt; 
&lt;P&gt;&lt;EM&gt;This seminar is a 3-day version of my 5-day SQL Server Internals and Tuning class that I have delivered all over the world. The seminar includes extensive demonstrations that illustrate the details of SQL Server internals as well as tuning techniques. This course will be presented on SQL Server 2008 and cover features specific to that version, but most of the information is relevant to SQL Server 2005 and some is relevant to SQL Server 2000. Topics to be covered include the following:&lt;/EM&gt; 
&lt;UL&gt;
&lt;LI&gt;SQL Server Storage Metadata 
&lt;LI&gt;Tools for exploring storage structures 
&lt;LI&gt;Physical Storage Structures 
&lt;LI&gt;Index Design and Tuning 
&lt;LI&gt;Query Processing and Query Plans 
&lt;LI&gt;Optimization and Recompilation 
&lt;LI&gt;Query Tuning Tips and Techniques &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;So for each of these 5 days, I'll be giving away a book a day, plus other giveaways as well. &lt;/P&gt;
&lt;P&gt;Then later in November, on 18 November, I'll be giving a &lt;A href="http://summit2008.sqlpass.org/precon-kalen-delaney.html" target=_blank&gt;preconference session at PASS&lt;/A&gt;, in Seattle.&amp;nbsp; In addition to vouchers for my new book, I'll have a couple of copies of my SQL Server 2005 books to give away. &lt;/P&gt;
&lt;P&gt;So hopefully I'll see many of you soon!&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff00ff size=4&gt;~Kalen&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www2.sqlblog.com/aggbug.aspx?PostID=9654" width="1" height="1"&gt;</description><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/books/default.aspx">books</category><category domain="http://www2.sqlblog.com/blogs/kalen_delaney/archive/tags/seminars/default.aspx">seminars</category></item></channel></rss>