<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.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>Dan's Blog : Policy</title><link>http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx</link><description>Tags: Policy</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>PBM – it’s like liquid awesome!</title><link>http://blogs.msdn.com/dtjones/archive/2009/08/30/pbm-it-s-like-liquid-awesome.aspx</link><pubDate>Sun, 30 Aug 2009 20:20:10 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9889116</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/9889116.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=9889116</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=9889116</wfw:comment><description>&lt;p&gt;Brent Ozar and Thomas LaRock do a 3 part video series on the power of Policy-based Management (PBM). Interestingly SCOM comes up several times in the discussion.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;They cover the basics of PBM and Thomas goes into more depth on how he’s using it in his environment. The series is about 35 minutes in total.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Regardless of your PBM experience level I highly recommend watching these videos.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://thomaslarock.com/2009/08/policy-based-management-podcast-part-1/"&gt;http://thomaslarock.com/2009/08/policy-based-management-podcast-part-1/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://thomaslarock.com/2009/08/policy-based-management-podcast-part-2/"&gt;http://thomaslarock.com/2009/08/policy-based-management-podcast-part-2/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://thomaslarock.com/2009/08/policy-based-management-podcast-part-3/"&gt;http://thomaslarock.com/2009/08/policy-based-management-podcast-part-3/&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9889116" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/Management+Studio/default.aspx">Management Studio</category></item><item><title>PCI Compliance and SQL Server 2008</title><link>http://blogs.msdn.com/dtjones/archive/2009/04/19/pci-compliance-and-sql-server-2008.aspx</link><pubDate>Mon, 20 Apr 2009 03:22:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9556051</guid><dc:creator>dtjones</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/9556051.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=9556051</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=9556051</wfw:comment><description>&lt;p&gt;Today compliance is a huge focus area for IT. Since compliance is written by lawyers for lawyers it takes a fair amount of translation to get it to the point where IT can understand what processes, policies, and configuration to implement to meet the requirements for a given compliance spec. &lt;/p&gt;  &lt;p&gt;If you are a SQL Server DBA and face PCI compliance this &lt;a href="http://www.parentenet.com/whitepapers/SQL2008_PCI.pdf"&gt;white paper&lt;/a&gt; is a must read and the accompanying &lt;a href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&amp;amp;EventID=1032404174&amp;amp;CountryCode=US"&gt;TechNet webcast&lt;/a&gt; a much watch.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9556051" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Application &amp; Multi-Server Management</title><link>http://blogs.msdn.com/dtjones/archive/2008/11/25/application-multi-server-management.aspx</link><pubDate>Wed, 26 Nov 2008 06:03:45 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9143168</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/9143168.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=9143168</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=9143168</wfw:comment><description>&lt;p&gt;@ the SQL PASS Summit on 11/20 we announced our plans to release new capabilities for improving the collaboration between Data-Tier Developers and DBA and to address Multi-Server (or multi-instance) manageability for SQL Server. &lt;/p&gt;  &lt;p&gt;Anthony Carrabino has a great &lt;a href="http://blogs.technet.com/dataplatforminsider/archive/2008/11/18/kilimanjaro-to-deliver-application-and-multi-server-management.aspx"&gt;posting&lt;/a&gt; describing these capabilities. I won’t repeat Anthony here.&lt;/p&gt;  &lt;p&gt;In addition, I recorded a &lt;a href="http://edge.technet.com/Media/PASS-Community-Summit-2008/"&gt;session&lt;/a&gt; Joey Snow from Technet Edge. This gives you a quick overview along with a demo.&lt;/p&gt;  &lt;p&gt;I’ve been working with the team on this for about 4 months. We started work on this early in the Katmai release and had to put it on the shelf for several months (and I mean several months). It’s very exciting to see that early work start to come to life.&lt;/p&gt;  &lt;p&gt;There are a couple of points I want to be sure are clearly understood:&lt;/p&gt;  &lt;p&gt;1) We are building on our existing technology investments. This includes Policy-based Management, Data Collector, SMO, PowerShell, and others.&lt;/p&gt;  &lt;p&gt;2) The first set of functionality – the foundation, if you will – will be available in SQL Server Kilimanjaro. This release is scheduled for the first half (H1) of calendar year 2010.&lt;/p&gt;  &lt;p&gt;I’m very excited with what we’re going to deliver in Kilimanjaro and beyond. My early take is this stuff will forever change the database business.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9143168" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/Multi-Server+Management/default.aspx">Multi-Server Management</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/Kilimanjaro/default.aspx">Kilimanjaro</category></item><item><title>Addressing Compliance with SQL Server 2008</title><link>http://blogs.msdn.com/dtjones/archive/2008/10/26/addressing-compliance-with-sql-server-2008.aspx</link><pubDate>Sun, 26 Oct 2008 23:01:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9016942</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/9016942.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=9016942</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=9016942</wfw:comment><description>&lt;p&gt;JC Cannon, Senior PM on the SQL Server team, presents this &lt;a href="http://www.microsoft.com/events/EventDetails.aspx?CMTYSvcSource=MSCOMMedia&amp;amp;Params=%7eCMTYDataSvcParams%5e%7earg+Name%3d%22ID%22+Value%3d%221032389193%22%2f%5e%7earg+Name%3d%22ProviderID%22+Value%3d%22A6B43178-497C-4225-BA42-DF595171F04C%22%2f%5e%7earg+Name%3d%22lang%22+Value%3d%22en%22%2f%5e%7earg+Name%3d%22cr%22+Value%3d%22US%22%2f%5e%7esParams%5e%7e%2fsParams%5e%7e%2fCMTYDataSvcParams%5e" target="_blank"&gt;webcast&lt;/a&gt; where he explores some of the new features in SQL Server 2008 and describes how they can be used to help an organization address their compliance needs.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In the webcast JC covers:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Identity management&lt;/li&gt;    &lt;li&gt;Data protection&lt;/li&gt;    &lt;li&gt;Separation of duties&lt;/li&gt;    &lt;li&gt;Auditing and reporting&lt;/li&gt;    &lt;li&gt;Policy-based management&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9016942" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>TechEd 2008 is Done!</title><link>http://blogs.msdn.com/dtjones/archive/2008/06/13/teched-2008-is-done.aspx</link><pubDate>Fri, 13 Jun 2008 23:44:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8594973</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/8594973.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=8594973</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=8594973</wfw:comment><description>&lt;p&gt;I'm writing this on the plane from Orlando back to Seattle. I have lots of thoughts on TechEd that I'll try to get through before I run out of battery or the guy in front of me snaps my laptop display. I also want to answer a few of the questions that came up that I couldn't immediately answer. I'll post the code from the sessions on another blog post. The PBM code will be posted to the PBM &lt;a href="http://blogs.msdn.com/sqlpbm" target="_blank"&gt;blog&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;I am thoroughly impressed by our customers. They have incredible passion for our products and an endless desire to learn how to use our products more effectively, intelligently, efficiently, and completely. I thank each and every one of you for making my job so fun and pleasurable. Thank you for coming up and asking questions (whenever and wherever), thank you for submitting your evals - I take the feedback to heart, and thank you for betting your business on SQL Server. Without you I'd probably be a starving musician.&lt;/p&gt;  &lt;p&gt;I did a ton of time at the booth, co-presented one interactive theater on using SQL2K8 for compliance, participated in two Tech-Ed Online Panels (TEOPs): Compliance and Automating DBA Tasks, presented a breakout (BRK) session on PowerShell and co-presented a session on Policy-Based Management. &lt;/p&gt;  &lt;p&gt;Interactive Theater: I'm undecided if I like this format or not. Maybe it's just that compliance is a tough topic to discuss since there is so much interpretation that has to happen and there's no one-size-fits-all solution. I co-presented this with Il-Sung Lee a security PM in SQL Server. Il-Sung is so knowledgeable about his space and gave the audience a very good taste of Transparent Data Encryption (don't forget to backup the certificate!) and Auditing. I had directed on person that came to the security kiosk to the session. They came up to me afterward and thanked me.&lt;/p&gt;  &lt;p&gt;TEOP: Compliance: This was fun although we didn't have much of an audience. I really like this format and encourage the TechEd planners to extend it. The people on the panel make all the difference. &lt;/p&gt;  &lt;p&gt;TEOP: Automating DBA Tasks: Wow, I was up there with Allen White (SQL MVP), Steve Jones (SQL MVP), Kevin Kline (SQL MVP), and Buck Woody (former SQL MVP and now a PM on the SQL Server team). Talk about a humbling experience. It was absolutely fantastic. These guys are terrific and posses such incredible knowledge about SQL Server and the role of the DBA. Great job guys!&lt;/p&gt;  &lt;p&gt;BRK: PowerShell: The feedback on this session was that I didn't spend enough time on SQL Server and too much time on vanilla PowerShell. Honestly this was by design and I think after people get back to the office and start using PowerShell they'll understand why I structure the session this way. One question that came up was the use of DAC (Dedicated Admin Connection). This is not support within PowerShell or our PowerShell provider. Another question was the use of SQL Logins. It's possible but not totally clean. It's documented in BOL &lt;a href="http://msdn.microsoft.com/en-us/library/cc281947(SQL.100).aspx" target="_blank"&gt;here&lt;/a&gt;. There were more questions which I asked people to email. I'm still waiting for the email! Once I get them I'll post them.&lt;/p&gt;  &lt;p&gt;BRK: PBM: I want to thank Peter DeBetta (SQL MVP) for co-presenting with me. I think Peter knows some facets (pun intended) of PBM better than I. BTW: My wife won't let me name the boy Wequel Sequel Jones - probably a good thing. This was, however, a tough session. It'd didn't flow the way I wanted it to. The feedback was that it was a little disjointed. Not to mention I messed up and thought the session started at 4:45 rather than 4:30. Sorry for blowing the first 7 or 8 minutes. But hey who doesn't like a good Bugs Bunny cartoon. The passion for PBM is immense. I remain convinced PBM is going to forever transform the management of the data platform. Y'all will get to say you were there when it all started. There were also some questions during this session that I didn't have the answer to. If you're out there please email your question. If you forgot my email address you can always send it through the blog. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Thank you for making my experience at TechEd valuable and memorable. I don't like taking time away from my family unless it's truly valuable and fruitful. Once again you, the customer, have satisfied both. I hope you got as much out of the experience as I did.&lt;/p&gt;  &lt;p&gt;One final note: If you're the guy that came up to me at Universal asking about my round at Pebble Beach I apologize for costing you $10. I pared a few holes (namely 7 and 17!). But I had a few disasters (namely 2 and 8). We don't have much sand on our courses in Seattle so that part of my game is out of practice. Also it was my first full round in 6 months and the first round after breaking my collar bone in January. I won't try snowboarding again!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8594973" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/PowerShell/default.aspx">PowerShell</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>Announcing the Policy-Based Management Blog</title><link>http://blogs.msdn.com/dtjones/archive/2008/04/08/announcing-the-policy-based-management-blog.aspx</link><pubDate>Wed, 09 Apr 2008 05:50:03 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8370869</guid><dc:creator>dtjones</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/8370869.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=8370869</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=8370869</wfw:comment><description>&lt;p&gt;Today we launched a new blog dedicated to &lt;a href="http://blogs.msdn.com/sqlpbm/" target="_blank"&gt;Policy-Based Management&lt;/a&gt;. Take a look and send us your suggestions for topics. My goal is to have people from the PBM development team write and publish postings. Together we can make PBM an amazing feature. I'm really excited by this and I hope you are too.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8370869" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Policy History Table Exception Columns</title><link>http://blogs.msdn.com/dtjones/archive/2008/03/29/policy-history-table-exception-columns.aspx</link><pubDate>Sun, 30 Mar 2008 00:39:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8343799</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/8343799.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=8343799</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=8343799</wfw:comment><description>&lt;p&gt;I was recently asked what the exception_message and exception columns in the msdb.dbo.syspolicy_policy_execution_history_internal table are used for.&lt;/p&gt;  &lt;p&gt;There are situations where the policy evaluate can throw an exception. For example, if the policy references a property in a facet which is not available on the given version or edition of the instance. For example the &amp;#8220;Server Configuration&amp;#8221; facet contains properties that only apply to the Express edition of SQL Server: UserInstancesEnabled and UserInstanceTimeout. If your policy references a condition with these properties the evaluation will throw an exception. &lt;/p&gt;  &lt;p&gt;The exception message column contains the friendly exception message. In the example above it&amp;#8217;ll contain: &lt;/p&gt;  &lt;p&gt;&lt;font face="Arial Narrow"&gt;Property value 'UserInstancesEnabled' is not available.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The exception column contains the full stack. In the example above it&amp;#8217;ll contain: &lt;/p&gt;  &lt;p&gt;&lt;font face="Arial Narrow"&gt;Microsoft.SqlServer.Management.Dmf.NonRetrievablePropertyException: Property value 'UserInstancesEnabled' is not available. ---&amp;gt; Microsoft.SqlServer.Management.Smo.UnsupportedFeatureException: UserInstancesEnabled is not supported on this edition of SQL Server.&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Smo.Configuration.get_UserInstancesEnabled()&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Smo.ServerAdapterBase.get_UserInstancesEnabled()&amp;#160;&amp;#160;&amp;#160;&amp;#160; --- End of inner exception stack trace ---&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Dmf.Condition.Evaluate(Object target)&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Dmf.ObjectSet.CalculateTargets(IEnumerable objectSet, Condition condition, Object[]&amp;amp; conforming, TargetEvaluation[]&amp;amp; violating)&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Dmf.ObjectSet.CalculateTargets(SqlStoreConnection targetConnection, Condition condition, String policyCategory, Object[]&amp;amp; conforming, TargetEvaluation[]&amp;amp; violating)&amp;#160;&amp;#160;&amp;#160;&amp;#160; at Microsoft.SqlServer.Management.Dmf.Policy.EvaluatePolicyUsingConnections(AdHocPolicyEvaluationMode evaluationMode, SfcQueryExpression targetQueryExpression, ISfcConnection[] targetConnections)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;I hope this clears up what these columns are for. Remember, only policies that are enabled on the server have their evaluation logged. If the policy is configured to only be evaluated on demand it's results are not written to the history table.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8343799" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>SQL2K8 Policy-Based Management Interview on TechNet</title><link>http://blogs.msdn.com/dtjones/archive/2008/03/25/sql2k8-policy-based-management-interview-on-technet.aspx</link><pubDate>Tue, 25 Mar 2008 22:27:54 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8336324</guid><dc:creator>dtjones</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/8336324.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=8336324</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=8336324</wfw:comment><description>&lt;p&gt;I recently sat down with Joey Snow over at TechNet to discuss Policy-Based Management. You can watch the video &lt;a href="http://edge.technet.com/Media/SQL-Server-2008-Policy-Based-Management-Interview/" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8336324" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Declarative Management is Out!</title><link>http://blogs.msdn.com/dtjones/archive/2007/12/22/declarative-management-is-out.aspx</link><pubDate>Sat, 22 Dec 2007 23:29:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6838281</guid><dc:creator>dtjones</dc:creator><slash:comments>5</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/6838281.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=6838281</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=6838281</wfw:comment><description>&lt;p&gt;Yes, the title is correct, Declarative Management (DMF) is gone! Did I get your attention? Maybe I should elaborate. About&amp;nbsp;7 months ago we embarked on a naming project for DMF. We knew that DMF was a little too geeky and didn't necessarily describe the feature in an intuitive and meaningful way. Tehcnically the name is correct as the goal of DMF is to move from a procedural way of managing SQL Server to a declarative way. We kicked around about&amp;nbsp;10 or&amp;nbsp;so names but couldn't reach any agreement. &lt;/p&gt; &lt;p&gt;That's when we decided to involve an outside agency that does this sort of thing. I knew these companies existed but had never worked with them. Years ago when I was at HP and we spun off the test and measurement business, what later became Agilent, I saw a little bit of the process. Though our budget for this was probably 1% of what it cost to come up with the Agilent name. &lt;/p&gt; &lt;p&gt;But I digress. We gave the agency an overview of DMF along with some key&amp;nbsp;attributes of the feature. They used this information to generate a list of some 50+ names! Each of the names went through an initial legal review - think trademark search - and were divided&amp;nbsp;into three groups: A, B, and C based on the chances of passing a more in-depth legal review. We threw out the B's and C's. We repeated this exercise two more times eventually whittling down the list to our 4 or 5 favorites. &lt;/p&gt; &lt;p&gt;The names were ether descriptive (think HD-DVD) or suggestive (think Blu-Ray). It's interesting in that usually only suggestive names can be trademarked. Our final list of&amp;nbsp;4 or so&amp;nbsp;names contained&amp;nbsp;a combination of&amp;nbsp;suggestive and descriptive names. &lt;/p&gt; &lt;p&gt;With our final short list in hand the agency conducted a user survey. They surveyed over 350 IT professionals. The structure of the survey was interesting. Some participants were exposed to all of the names while others were only exposed to one of the names. &lt;/p&gt; &lt;p&gt;The agency did a fantastic job collecting and presenting the data. All-in-all it was a very fasinating process. One of our marketing guys, Niraj Nigrani ran the project from our side, he did a&amp;nbsp;splendid job.&lt;/p&gt; &lt;p&gt;Okay, I've kept you in suspense long enough. The official name for DMF is &lt;strong&gt;Microsoft ® SQL Server ® &amp;nbsp;2008 Policy-Based Management&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;I know you're probably thinking you could've come up with that name. And you're right. In fact Policy-based Management was on our original list. But just because it's obvious doesn't&amp;nbsp;make it&amp;nbsp;a bad name. IMHO it's a perfect name for the feature and I have the research to prove it. When people hear it they get it; which is exactly what you want in a name.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6838281" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>DMF for your Car</title><link>http://blogs.msdn.com/dtjones/archive/2007/07/07/dmf-for-your-car.aspx</link><pubDate>Sun, 08 Jul 2007 06:04:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3756177</guid><dc:creator>dtjones</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3756177.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3756177</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3756177</wfw:comment><description>&lt;p&gt;@ Tech Ed this year I opened my session talking about how cars have evolved. The analogy&amp;nbsp;is as we don't tinker with our cars anymore the same is going to have to managing data environments - and DMF is part of the initial wave that'll make this happen. In this week's Weekly Roundup of Database News from &lt;a href="http://www.sqlservercentral.com/" target="_blank"&gt;SQL Server Central&lt;/a&gt;&amp;nbsp;there's a link to an article about &lt;a href="http://www.technologyreview.com/Infotech/19017/page1/?a=f" target="_blank"&gt;smarter cars&lt;/a&gt;. This makes me think that at some point we're going to have policies governing our cars - when your son or daughter "logs in" it'll apply the policies applicable&amp;nbsp;to them. For example, you could prevent them from going to certain parts of town or driving over a certain speed for more than a specific&amp;nbsp;amount of time. Maybe there's a limit to the number of people they can have in the car at any one time. Lots of good stuff that I'm far more interested as parent than I'd be if I was a teen driver.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3756177" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category></item><item><title>Declarative Management Performance</title><link>http://blogs.msdn.com/dtjones/archive/2007/07/01/declarative-management-performance.aspx</link><pubDate>Sun, 01 Jul 2007 19:36:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3644841</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3644841.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3644841</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3644841</wfw:comment><description>&lt;p&gt;There's an interesting thread on the &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1797219&amp;amp;SiteID=1" target="_blank"&gt;MSDN forums&lt;/a&gt; regarding DMF performance or more accurately the overhead of having policies on the system. If you're interesting in using policies on your system and have thoughts on an acceptable overhead go post your thoughts to the forum. &lt;/p&gt; &lt;p&gt;Personally, I'm in the camp that believes DDL is not restricted to the same performance requirements as DML. Granted there are cases where you need to create a number of objects "on-the-fly" and in a certain amount of time. Think of a data loading process where the data is first loaded into "temporary" tables. You want those temporary tables to be created as quickly as possible. But will it really matter if it take 10 or 30 seconds rather than 1 second? I don't think so. &lt;/p&gt; &lt;p&gt;But let us know what you think.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3644841" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>SQL Server 2008 June CTP, Declarative Management LiveMeeting</title><link>http://blogs.msdn.com/dtjones/archive/2007/06/26/sql-server-2008-june-ctp-declarative-management-livemeeting.aspx</link><pubDate>Wed, 27 Jun 2007 02:58:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3555584</guid><dc:creator>dtjones</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3555584.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3555584</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3555584</wfw:comment><description>&lt;p&gt;Today I presented a&amp;nbsp;LiveMeeting&amp;nbsp;on the Declarative Management features in the SQL Server 2008 June CTP. It should be posted shortly and is accessible &lt;a href="https://connect.microsoft.com/SQLServer/content/content.aspx?ContentID=5553" target="_blank"&gt;here&lt;/a&gt;. &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3555584" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Declarative Management: Behind Enforce</title><link>http://blogs.msdn.com/dtjones/archive/2007/06/17/declarative-management-behind-enforce.aspx</link><pubDate>Sun, 17 Jun 2007 20:11:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3361754</guid><dc:creator>dtjones</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3361754.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3361754</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3361754</wfw:comment><description>&lt;p&gt;The new policy-based admin feature (Declarative Management) in SQL Server 2008 (code-named Katmai) can keep many aspects of the system from falling out of compliance. Some questions that come up are: "how does this work?" and "how come everything can't be enforced?" Let me tackle the first one, well, first. This is sort of a 300-level discussion.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;How does this work?
&lt;/p&gt;&lt;p&gt;The fundamental &lt;em&gt;magic&lt;/em&gt; behind this is the DDL eventing in the engine. In SQL2K8 we've introduced a new type of DDL trigger that listens for all server and database scoped events. This is a public trigger and you'll be able to use it as well. The power in this is we don't have to sprinkle triggers around the system. We create a single trigger and update it with the events we care about. The list of interesting events is driven by the active policies. This means if you don't have any active policies we don't listen to any events. When a policy is activated we grab the events from the facet (which comes from the condition associated with the policy) and update the trigger to listen to those events. Each facet identifies which objects (table, view, database, etc) it works against and which events for those objects it cares about (create_table, alter_table, etc). 
&lt;/p&gt;&lt;p&gt;Great, now when an action happens on the system we can respond to it. But what do we do with the event once we get it? The main declarative management "engine" runs inside the SQLCLR. We have a stored procedure that executes some logic (I'll define in a minute) and based on the results of that execution it calls into the declarative mgmt engine in the SQLCLR. Before calling the SQLCLR the stored procedure determines if there are any policies that &lt;em&gt;might&lt;/em&gt; apply to the object in the event. For example, the policy may filter out certain databases; therefore, we shouldn't run that policy against tables created in a filtered database. This allows us to reduce the chances of unnecessarily executing a policy. Note that even if we pass the pre-check and execute the policy, the policy will only be evaluated against objects that are in its scope. In essence we do the check twice. We do this due to the bit of overhead of the SQLCLR.
&lt;/p&gt;&lt;p&gt;If the policy is checked and the object passes the policy we either move on to check the next policy or we return control back to the engine by &lt;em&gt;passing success&lt;/em&gt; to the trigger. If the object fails the policy check we &lt;em&gt;pass failure&lt;/em&gt; to the trigger (we stop executing any additional policies) and the engine eventing mechanism cancels the transaction and returns the system to its original state.
&lt;/p&gt;&lt;p&gt;Declarative management uses the SQLCLR but this doesn't mean you have to enable the SQLCLR. The SQLCLR has two modes "On" and "Off". The "Off" mode still allows assemblies signed by Microsoft and installed in the Resource Database to execute. User assemblies, however, only run when the SQLCLR is "On". If your shop has a "policy" to keep the SQLCLR turned "off" you will still be able to use Declarative Management.
&lt;/p&gt;&lt;p&gt;How come everything can't be enforced?
&lt;/p&gt;&lt;p&gt;Since Declarative Management is dependent on the DDL eventing in the database engine we can only enforce state for those objects that are true transactions. For example, create table is a true transaction and can be rolled back with the system returned to its original state. However, something like create database is not a transaction. Can you put a trigger on create database and fail it? Yes. But this doesn't cleanly return the system to its original state. When a create database transaction is failed there is "residue" left behind, namely the data files. Because we cannot return the system to its original state we opted to turn off enforce for this class of objects. We're working with the database engine team to support true transactions for all DDL events but we won't get all the way there in SQL2K8.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;I hope this brief overview of "Enforce" helps you understand what's going on under the covers.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3361754" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Steve Jones on TechEd2007 and SQL2K8 Manageability Features</title><link>http://blogs.msdn.com/dtjones/archive/2007/06/09/steve-jones-on-teched2007-and-sql2k8-manageability-features.aspx</link><pubDate>Sun, 10 Jun 2007 01:13:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3191716</guid><dc:creator>dtjones</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3191716.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3191716</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3191716</wfw:comment><description>&lt;p&gt;@ TechEd 2007 I presented an overview session on new manageability features in SQL Server 2008. SQL Server Central's Steve Jones &lt;a href="http://blogs.sqlservercentral.com/blogs/steve_jones/archive/2007/06/06/1935.aspx"&gt;blogged&lt;/a&gt; about the session. Steve provides a pretty accurate account of the session (thanks Steve). This is mostly a straight forward report with a little editorial sprinkled in here and there.
&lt;/p&gt;&lt;p&gt;There are a few items I'd like to address:
&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Backdoor in SQLCLR. The only assemblies that can run when the SQLCLR is off are those signed and shipped by Microsoft. When we build the product we pull in a group of assemblies into the resource database (a system database). This group of assemblies is the only one that is allowed to execute when the SQL CLR is disabled.
&lt;/li&gt;&lt;li&gt;Backdoor in SQL Server Agent. Steve hypothesizes that we also have a backdoor in SQL Server Agent. This is not the case. If the service is turned off jobs will not run. This means if the system is configured with policies that are to be checked on schedule, the policies will only execute if SQL Server Agent is up and running. If Agent is down, no scheduled policy checks occur.
&lt;/li&gt;&lt;li&gt;Performance Studio. He mentioned a Win32 API. If I said that during the presentation I misspoke. The API will be a managed API (not a native API).
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;And finally this: Steve writes "The database manages itself. Not totally, but close to it. It was an analogy made by Dan Jones with cars. Auto shop isn't really offered in high school anymore, people don't "tinker" with their cars much anymore.
&lt;/p&gt;&lt;p&gt;If this is true, we have more time for data design, data architecture. I'm not sure I agree and as much as I hear, the more I think a DBA needs to be around because when something goes south, it goes way down."
&lt;/p&gt;&lt;p&gt;The point isn't that we can eliminate DBAs or push them to the "design room". But rather, DBAs can focus on the harder more interesting problems. Think of it this way. It used to be the case when you put bad gas in your car, or the wrong octane, your car would ping. This is no longer the case. In addition, your car needed a tune-up every 30K miles or so. This is also no longer the case. Does this mean mechanics no longer see cars for pings or tune-ups? Absolutely not, it does mean they see fewer cars and time between visits is greater. In most instances the cases mechanics are handling are more complicated and require more advanced skills. I think this will be true for DBAs as well. The simple stuff will be handled by the system. The more complex stuff, though the system will help, will require the knowledge and skills of a rock star DBA.
&lt;/p&gt;&lt;p&gt;It will be fun to see how this all plays out over the next 10 years.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3191716" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category><category domain="http://blogs.msdn.com/dtjones/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>SQL Server 2008 June CTP Bug</title><link>http://blogs.msdn.com/dtjones/archive/2007/06/06/sql-server-2008-june-ctp-bug.aspx</link><pubDate>Thu, 07 Jun 2007 05:29:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3130478</guid><dc:creator>dtjones</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/dtjones/comments/3130478.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dtjones/commentrss.aspx?PostID=3130478</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dtjones/rsscomments.aspx?PostID=3130478</wfw:comment><description>&lt;p&gt;There is a bug in the SQL Server 2008 June CTP that causes Declarative Management to be inoperable. The fix is very simple. Launch a command line and run the following command:
&lt;/p&gt;&lt;p&gt;&lt;span style="color:red"&gt;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\sn.exe -Vr Microsoft.SqlServer.DmfSqlClrWrapper,89845DCD8080CC91
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;After running the command you will need to restart the SQL Server service.
&lt;/p&gt;&lt;p&gt;The Declarative Management DLL, which runs inside the SQLCLR, did not get signed as part of the build process. Running the above command will disable strong name verification for this assembly. Client-side checking of policies: "Test Policy" and "Run Now" will function as expected without the fix. Policy automation (enforce, check on change, and check on schedule), though, will require applying the above fix.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3130478" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dtjones/archive/tags/Policy/default.aspx">Policy</category></item></channel></rss>