<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://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>Buck Woody : Links</title><link>http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx</link><description>Tags: Links</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>The Windows Azure Software Development Kit (SDK) and the Windows Azure Training Kit (WATK)</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/09/12/the-windows-azure-software-development-kit-sdk-and-the-windows-azure-training-kit-watk.aspx</link><pubDate>Wed, 12 Sep 2012 13:40:40 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:45165</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/45165.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=45165</wfw:commentRss><description>&lt;p&gt;Windows Azure is a platform that allows you to write software, run software, or use software that we've already written. We provide lots of resources to help you do that - many can be found right here in this blog series. There are two primary resources you can use, and it's important to understand what they are and what they do.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900441285.jpg"&gt;&lt;img width="121" height="107" style="float:left;max-width:550px;" alt="" src="http://officeimg.vo.msecnd.net/en-us/images/MH900441285.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;The Windows Azure Software Development Kit (SDK)&lt;/h1&gt;
&lt;p&gt;Actually, this isn't one resource. We have SDK's for multiple development environments, such as Visual Studio and also Eclipse, along with SDK's for iOS, Android and other environments. Windows Azure is a "back end", so almost any technology or front end system can use it to solve a problem.&lt;/p&gt;
&lt;p&gt;The SDK's are primarily for development. In the case of Visual Studio, you'll get a runtime environment for Windows Azure which allows you to develop, test and even run code all locally - you do not have to be connected to Windows Azure at all, until you're ready to deploy.&lt;/p&gt;
&lt;p&gt;You'll also get a few samples and codeblocks, along with all of the libraries you need to code with Windows Azure in .NET, PHP, Ruby, Java and more.&lt;/p&gt;
&lt;p&gt;The SDK is updated frequently, so check this location to find the latest for your environment and language - just click the bar that corresponds to what you want:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/downloads/" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/downloads/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900438678.jpg"&gt;&lt;img width="151" height="163" style="margin:2px 5px;border:0px currentColor;float:left;max-width:550px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900438678.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;The Windows Azure Training Kit (WATK)&lt;/h1&gt;
&lt;p&gt;Whether you're writing code, using Windows Azure Virtual Machines (VM's) or working with Hadoop, you can use the WATK to get examples, code, PowerShell scripts, PowerPoint decks, training videos and much more. This should be your second download after the SDK. This is all of the training you need to get started, and even beyond. The WATK is updated frequently - and you can find the latest one here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;There are many other resources - again, check the &lt;a href="http://windowsazure.com"&gt;http://windowsazure.com&lt;/a&gt; site, the &lt;a href="http://www.windowsazure.com/en-us/community/newsletter/2012/june/" target="_blank"&gt;community newsletter (which introduces the latest features)&lt;/a&gt;, and &lt;a href="http://sqlblog.com/b/buckwoody/rss.aspx" target="_blank"&gt;my blog for more&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=45165" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Community/default.aspx">Community</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Documentation/default.aspx">Documentation</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Downloads/default.aspx">Downloads</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Latest+Version/default.aspx">Latest Version</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Learning/default.aspx">Learning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Presentations/default.aspx">Presentations</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Scripts/default.aspx">Scripts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure End to End Examples</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/05/29/windows-azure-end-to-end-examples.aspx</link><pubDate>Tue, 29 May 2012 13:45:59 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:43642</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/43642.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=43642</wfw:commentRss><description>&lt;p&gt;I’m fascinated by the way people learn. I’m told there are several methods people use to understand new information, from reading to watching, from experiencing to exploring. &lt;/p&gt;  &lt;p&gt;Personally, I use multiple methods of learning when I encounter a new topic, usually starting with reading a bit about the concepts. I quickly want to put those into practice, however, especially in the technical realm. I immediately look for examples where I can start trying out the concepts. But I often want a “real” example – not just something that represents the concept, but something that is real-world, showing some feature I could actually use. &lt;/p&gt;  &lt;p&gt;And it’s no different with the Windows Azure platform – I like finding things I can do now, and actually use. So when I started learning Windows Azure, &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=8396" target="_blank"&gt;I of course began with the Windows Azure Training Kit&lt;/a&gt; – which has lots of examples and labs, presentations and so on. But from there, I wanted more examples I could learn from, and eventually teach others with. I was asked if I would write a few of those up, so here are the ones I use. &lt;/p&gt;  &lt;h2&gt;CodePlex&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://www.codeplex.com/" target="_blank"&gt;CodePlex is Microsoft’s version of an “Open Source” repository&lt;/a&gt;. Anyone can start a project, add code, documentation and more to it and make it available to the world, free of charge, using various licenses as they wish. Microsoft also uses this location for most of the examples we publish, and sample databases for SQL Server. &lt;/p&gt;  &lt;p&gt;If you search in CodePlex for “Azure”, you’ll come back with a list of projects that folks have posted, including those of us at Microsoft. The source code and documentation are there, so you can learn using actual examples of code that will do what you need. There’s everything from a simple table query to &lt;a href="http://blobshare.codeplex.com/" target="_blank"&gt;a full project that is sort of a “Corporate Dropbox” that uses Windows Azure Storage&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;The advantage is that this code is immediately usable. It’s searchable, and you can often find a complete solution to meet your needs. The disadvantage is that the code is pretty specific – it may not cover a huge project like you’re looking for. Also, depending on the author(s), you might not find the documentation level you want. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Link: &lt;a href="http://azureexamples.codeplex.com/site/search?query=Azure&amp;amp;ac=8"&gt;http://azureexamples.codeplex.com/site/search?query=Azure&amp;amp;ac=8&lt;/a&gt;&amp;#160;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Tailspin&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/practices/default" target="_blank"&gt;Microsoft Patterns and Practices&lt;/a&gt; is a group here that does an amazing job at sharing standard ways of doing IT – from operations to coding. If you’re not familiar with this resource, make sure you read up on it. Long before I joined Microsoft I used their work in my daily job – saved a ton of time. It has resources not only for Windows Azure but other Microsoft software as well. &lt;/p&gt;  &lt;p&gt;The Patterns and Practices group also publishes full books – you can buy these, but many are also online for free. There’s an end-to-end example for Windows Azure using a company called “Tailspin”, and the work covers not only the code but the design of the full solution. If you really want to understand the thought that goes into a Platform-as-a-Service solution, this is an excellent resource. &lt;/p&gt;  &lt;p&gt;The advantages are that this is a book, it’s complete, and it includes a discussion of design decisions. The disadvantage is that it’s a little over a year old – and in “Cloud” years that’s a lot. So many things have changed, improved, and have been added that you need to treat this as a resource, but not the only one. Still, highly recommended. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Link: &lt;a href="http://msdn.microsoft.com/en-us/library/ff728592.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff728592.aspx&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;h2&gt;Azure Stock Trader&lt;/h2&gt;  &lt;p&gt;Sometimes you need a mix of a CodePlex-style application, and a little more detail on how it was put together. And it would be great if you could actually play with the completed application, to see how it really functions on the actual platform.&lt;/p&gt;  &lt;p&gt;That’s the Azure Stock Trader application. There’s a place where you can read about the application, and then it’s been published to Windows Azure – the production platform – and you can use it, explore, and see how it performs. &lt;/p&gt;  &lt;p&gt;I use this application all the time to demonstrate Windows Azure, or a particular part of Windows Azure.&lt;/p&gt;  &lt;p&gt;The advantage is that this is an end-to-end application, and online as well. The disadvantage is that it takes a bit of self-learning to work through.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Links: Learn it: &lt;a href="http://msdn.microsoft.com/en-us/netframework/bb499684"&gt;http://msdn.microsoft.com/en-us/netframework/bb499684&lt;/a&gt; Use it: &lt;a href="https://azurestocktrader.cloudapp.net/"&gt;https://azurestocktrader.cloudapp.net/&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=43642" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Developer/default.aspx">Developer</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Development/default.aspx">Development</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Documentation/default.aspx">Documentation</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Downloads/default.aspx">Downloads</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/How+I+work/default.aspx">How I work</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Learning/default.aspx">Learning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Planning/default.aspx">Planning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Presentations/default.aspx">Presentations</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Technet/default.aspx">Technet</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Tips/default.aspx">Tips</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Tutorials/default.aspx">Tutorials</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Walkthroughs/default.aspx">Walkthroughs</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Application Lifecycle Management Overview for Windows Azure</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/02/07/application-lifecycle-management-overview-for-windows-azure.aspx</link><pubDate>Tue, 07 Feb 2012 14:58:39 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:41593</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/41593.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=41593</wfw:commentRss><description>&lt;p&gt;Developing in Windows Azure is at once not that much different from what you’re familiar with in on-premises systems, and different in significant ways. Because of these differences, developers often ask about the specific process to develop and deploy a Windows Azure application - more formally called an Application Lifecycle Management, or ALM. &lt;/p&gt;  &lt;p&gt;There are specific resources you can use to learn more about various parts of ALM - I’ve referenced those at the end of this post. But ALM has multiple definitions, from the governance of code injection, domain upgrade, testing, process flow and more. Many developers are interested in the finer-grained information, like how do I develop and deploy an application? What tools do I need, and how do I get the code running somewhere that I can test? &lt;/p&gt;  &lt;p&gt;I’ll cover the very high-level process here, and refer you to specifics at the end of each section, so that you can take it all in at one viewing, and then bookmark for more detail when you need more information. I won’t be covering processes like Continuous Integration or Agile and other methodologies in this post - I’ll blog those later. &lt;/p&gt;  &lt;h2&gt;Initial Development&lt;/h2&gt;  &lt;p&gt;You start with writing code. You have three ways to do this. You can use Visual Studio (even the Express Edition Works), Eclipse, or by &lt;a href="https://www.ibm.com/developerworks/webservices/library/ws-restful/" target="_blank"&gt;leveraging the REST API format&lt;/a&gt;. You can do this in a standalone (non-connected) environment like your laptop. &lt;/p&gt;  &lt;p align="left"&gt;Using Visual Studio is one of the simplest methods to create an Azure application, allowing you to combine the Azure components you want to leverage (Storage, Compute, SQL Azure, the Service Bus, etc.) along with the on-premises code you have now or are creating. Once you’ve installed and patched Visual Studio, just download and install the Windows Azure Software Development Kit (SDK) and you’ll have not only all the API’s you need to talk to Azure, but a fully functioning local environment to run and test your code before you deploy it. You’ll also get a robust set of samples. You can download what you need for all of that (free) here: &lt;a href="http://www.windowsazure.com/en-us/develop/downloads/"&gt;http://www.windowsazure.com/en-us/develop/downloads/&lt;/a&gt; . There’s a step-by-step process here: &lt;a href="http://msdn.microsoft.com/en-us/magazine/ee336122.aspx"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;http://msdn.microsoft.com/en-us/magazine/ee336122.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You can also use Eclipse to develop for Windows Azure. You won’t get the full runtime environment in just that kit alone, but you can use this successfully on a Linux system. I have several folks using this method. The downloads and documentation for that is here: &lt;a href="http://www.windowsazure4e.org/"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;http://www.windowsazure4e.org/&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You can use REST API’s to hit Azure Assets and control them. Not my preferred method, but possible. There are REST API’s for various sections of Azure. You can find the main reference for that here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ff800682.aspx"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ff800682.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;font color="#9bbb59"&gt;&lt;font color="#c0504d"&gt;&lt;strong&gt;&lt;em&gt;Note: &lt;/em&gt;&lt;/strong&gt;We recently demonstrated using a Cloud-based Integrated Development Environment (IDE) for Node.js deployment to Windows Azure. More on that here:&lt;/font&gt; &lt;/font&gt;&lt;a href="http://www.readwriteweb.com/cloud/2012/01/cloud9-ide-to-enable-nodejs-ap.php"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;http://www.readwriteweb.com/cloud/2012/01/cloud9-ide-to-enable-nodejs-ap.php&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h2&gt;Deploying to a Test Instance&lt;/h2&gt;  &lt;p&gt;After you write the code, you’ll need to test it somewhere. The Azure Emulator on your development laptop is for a single user on that laptop, and it also has some subtle differences from the production fabric as you might imagine. Normally you’ll set up a small subscription to run and test the application, just like you would have a set of test servers. Each subscription has its own management keys and certificates, so this assists in keeping the testing environment separate for billing and control. &lt;/p&gt;  &lt;p&gt;More on that general information here: &lt;a href="http://msdn.microsoft.com/en-us/library/ff803362.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff803362.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Deploying to Production&lt;/h2&gt;  &lt;p&gt;Once you have developed the code and tested it, you need to move it to a location where users can access it. In reality, there is no physical difference in the type of machines, fabric or any other component in “Production” Windows Azure accounts and the “Test” accounts, but you’ll most often pick smaller systems to deploy on in testing, and you’ll probably keep the URL in the plain format.&lt;/p&gt;  &lt;p&gt;In the Production Windows Azure account, the team normally limits the access to the account for deployment to a separate set of developers. This ensures code flow and control. A DNS name is normally mapped to the longer, Microsoft-generated URL so that your users access the application or data the way you want them to. &lt;/p&gt;  &lt;p&gt;More on setting up an account here: &lt;a href="http://techinch.com/2010/06/14/setup-your-windows-azure-account/"&gt;http://techinch.com/2010/06/14/setup-your-windows-azure-account/&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Managing Code Change&lt;/h2&gt;  &lt;p&gt;With the application deployed, there are two broad tasks you need to consider. One is managing changes through the application, and the other involves management, monitoring and performance tuning for an application.&lt;/p&gt;  &lt;p&gt;To make a code change, the standard ALM process is followed, just as above. You can use command-line tools to automate the process as you would with an on-premises system. A vide on that shows you how: &lt;a href="http://www.microsoftpdc.com/2009/SVC25"&gt;http://www.microsoftpdc.com/2009/SVC25&lt;/a&gt;. Normally this is used with an “In-Place” upgrade into Production Account, since your testing is completed in a separate account. More on that process here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee517255.aspx"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee517255.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;One difference is the “VIP Swap” process you can use for the final push to Production. In essence, this allows you to have two copies of the application running on the Production account, with a quick way to cut over and back when you’re ready. The process for that is detailed here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee517253.aspx"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee517253.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;For monitoring, you have several options. You should enable the Windows Azure Diagnostics in your code - more on that here: &lt;a href="http://archive.msdn.microsoft.com/WADiagnostics"&gt;http://archive.msdn.microsoft.com/WADiagnostics&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;You can observe uptime and other information on the Windows Azure Service Dashboard, where you can also consume the uptime as an RSS feed: &lt;a href="http://www.windowsazure.com/en-us/support/service-dashboard/"&gt;http://www.windowsazure.com/en-us/support/service-dashboard/&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;From there, you can also use System Center to monitor not only Windows Azure deployments but internal applications as well. The Management Pack and documentation for that is here: &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=11324"&gt;http://www.microsoft.com/download/en/details.aspx?id=11324&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;There are also 3rd-party tools to manage Windows Azure. More on that here: &lt;a href="http://www.bing.com/search?q=monitor+Windows+Azure&amp;amp;form=OSDSRC"&gt;http://www.bing.com/search?q=monitor+Windows+Azure&amp;amp;form=OSDSRC&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Other References: &lt;/h3&gt;  &lt;p&gt;There is a lot more detail in this official reference: &lt;a href="https://www.windowsazure.com/en-us/develop/net/fundamentals/deploying-applications/"&gt;https://www.windowsazure.com/en-us/develop/net/fundamentals/deploying-applications/&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Bryan Group explains the ramifications of the Secure Development Lifecycle (SDL) with lots of collateral you can review: &lt;a href="http://blogs.msdn.com/b/bryang/archive/2011/04/26/applying-the-sdl-to-windows-azure.aspx"&gt;http://blogs.msdn.com/b/bryang/archive/2011/04/26/applying-the-sdl-to-windows-azure.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=41593" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Best+Practices/default.aspx">Best Practices</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Developer/default.aspx">Developer</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Development/default.aspx">Development</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Planning/default.aspx">Planning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Process/default.aspx">Process</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/System+Center+Operations+Manager/default.aspx">System Center Operations Manager</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Tips/default.aspx">Tips</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: High-Performance Computing (HPC)</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/02/28/windows-azure-use-case-high-performance-computing-hpc.aspx</link><pubDate>Mon, 28 Feb 2011 15:52:31 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:33829</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/33829.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=33829</wfw:commentRss><description>&lt;p&gt;&lt;span style="font-size:x-small;"&gt;&lt;em&gt;&lt;span style="font-size:small;"&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;/span&gt;&lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;span style="font-size:small;"&gt;&lt;u&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/font&gt;&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&amp;#160;&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Description:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;High-Performance Computing (also called Technical Computing) at its most simplistic is a layout of computer workloads where a “head node” accepts work requests, and parses them out to “worker nodes'”. This is useful in cases such as scientific simulations, drug research, MatLab work and where other large compute loads are required. It’s not the immediate-result type computing many are used to; instead, a “job” or group of work requests is sent to a cluster of computers and the worker nodes work on individual parts of the calculations and return the work to the scheduler or head node for the requestor in a batch-request fashion.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;This is typical to the way that many mainframe computing use-cases work. You can use commodity-based computers to create an HPC Cluster, such as the &lt;a href="http://beowulf.org/overview/index.html" target="_blank"&gt;Linux application called Beowulf&lt;/a&gt;, and Microsoft has a server product for HPC using standard computers, called the &lt;a href="http://technet.microsoft.com/en-us/magazine/2008.02.ccs.aspx" target="_blank"&gt;Windows Compute Cluster that you can read more about here&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;img src="http://www.microsoft.com/global/hpc/en/us/PublishingImages/screenshots/scrn_lrg_basic.jpg" width="647" height="354" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;span&gt;The issue with HPC (from any vendor) that some organization have is the amount of compute nodes they need. Having too many results in excess infrastructure, including computers, buildings, storage, heat and so on. Having too few means that the work is slower, and takes longer to return a result to the calling application. Unless there is a consistent level of work requested, predicting the number of nodes is problematic.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;strong&gt;Implementation:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Recently, &lt;a href="http://www.hpcinthecloud.com/features/Azure-on-the-Horizon-98320229.html" target="_blank"&gt;Microsoft announced an internal partnership between the HPC group (Now called the Technical Computing Group) and Windows Azure&lt;/a&gt;. You now have two options for implementing an HPC environment using Windows. You can extend the current infrastructure you have for HPC by adding in Compute Nodes in Windows Azure, using a “Broker Node”.&amp;#160; You can then purchase time for adding machines, and then stop paying for them when the work is completed. This is a common pattern in groups that have a constant need for HPC, but need to “burst” that load count under certain conditions.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;The second option is to install only a Head Node and a Broker Node onsite, and host all Compute Nodes in Windows Azure. This is often the pattern for organizations that need HPC on a scheduled and periodic basis, such as financial analysis or actuarial table calculations.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;img src="http://www.microsoft.com/global/hpc/en/us/PublishingImages/screenshots/scrn_lrg_azure.jpg" width="629" height="344" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;strong&gt;References:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Blog entry on Hybrid HPC with Windows Azure: &lt;a href="http://blogs.msdn.com/b/ignitionshowcase/archive/2010/12/13/high-performance-computing-on-premise-and-in-the-windows-azure-cloud.aspx"&gt;http://blogs.msdn.com/b/ignitionshowcase/archive/2010/12/13/high-performance-computing-on-premise-and-in-the-windows-azure-cloud.aspx&lt;/a&gt;&amp;#160;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Links for further research on HPC, includes Windows Azure information: &lt;a href="http://blogs.msdn.com/b/ncdevguy/archive/2011/02/16/handy-links-for-hpc-and-azure.aspx"&gt;http://blogs.msdn.com/b/ncdevguy/archive/2011/02/16/handy-links-for-hpc-and-azure.aspx&lt;/a&gt;&amp;#160;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=33829" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: Hybrid Applications</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/02/22/windows-azure-use-case-hybrid-applications.aspx</link><pubDate>Tue, 22 Feb 2011 19:44:09 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:33695</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/33695.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=33695</wfw:commentRss><description>&lt;p&gt;&lt;span style="font-size:x-small;"&gt;&lt;em&gt;&lt;span style="font-size:small;"&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;/span&gt;&lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;span style="font-size:small;"&gt;&lt;u&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/font&gt;&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&amp;#160;&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Description:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Organizations see the need for computing infrastructures that they can “rent” or pay for only when they need them. They also understand the benefits of distributed computing, but do not want to create this infrastructure themselves. &lt;/span&gt;&lt;span&gt;However, they may have considerations that prevent them from moving all of their current IT investment to a distributed environment:&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;span&gt;Private data (do not want to send or store sensitive data off-site)&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;High dollar investment in current infrastructure&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;Applications currently running well, but may need additional periodic capacity&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;Current applications not designed in a stateless fashion&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;span&gt;In these situations, a “hybrid” approach works best. In fact, with Windows Azure, a hybrid approach is an optimal way to implement distributed computing even when the stipulations above do not apply. Keeping a majority of the computing function in an organization local while exploring and expanding that footprint into Windows and SQL Azure is a good migration or expansion strategy. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;A “hybrid” architecture merely means that part of a computing cycle is shared between two architectures. For instance, some level of computing might be done in a Windows Azure web-based application, while the data is stored locally at the organization.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;strong&gt;Implementation:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;There are multiple methods for implementing a hybrid architecture, in a spectrum from very little interaction from the local infrastructure to Windows or SQL Azure. The patterns fall into two broad schemas, and even these can be mixed.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;em&gt;1. Client-Centric Hybrid Patterns&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;In this pattern, programs are coded such that the client system sends queries or compute requests to multiple systems. The “client” in this case might be a web-based codeset actually stored on another system (which acts as a client, the user’s device serving as the presentation layer) or a compiled program. In either case, the code on the client requestor carries the burden of defining the layout of the requests. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/6523.Hybrid_2D00_01_5F00_2.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Hybrid-01" border="0" alt="Hybrid-01" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/2818.Hybrid_2D00_01_5F00_thumb.jpg" width="750" height="356" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;While this pattern is often the easiest to code, it’s the most brittle. Any change in the architecture must be reflected on each client, but this can be mitigated by using a centralized system as the client such as in the web scenario.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;em&gt;2. System-Centric Hybrid Patterns&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Another approach is to create a distributed architecture by turning on-site systems into “services” that can be called from Windows Azure using the service Bus or the Access Control Services (ACS) capabilities. Code calls from a series of in-process client application. In this pattern you move the “client” interface into the server application logic.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/2500.Hybrid_2D00_02_5F00_2.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Hybrid-02" border="0" alt="Hybrid-02" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/6138.Hybrid_2D00_02_5F00_thumb.jpg" width="819" height="607" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;If you do not wish to change the application itself, you can “layer” the results of the code return using a product (such as Microsoft BizTalk) that exposes a Web Services Definition Language (WSDL) endpoint to Windows Azure using the Application Fabric. &lt;/span&gt;&lt;span&gt;In effect, this is similar to creating a Service Oriented Architecture (SOA) environment, and has the advantage of de-coupling your computing architecture. If each system offers a “service” of the results of some software processing, the operating system or platform becomes immaterial, assuming it adheres to a service contract. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/2500.Hybrid_2D00_03_5F00_2.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Hybrid-03" border="0" alt="Hybrid-03" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/1348.Hybrid_2D00_03_5F00_thumb.jpg" width="839" height="549" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;There are important considerations when you federate a system, whether to Windows or SQL Azure or any other distributed architecture. While these considerations are consistent with coding any application for distributed computing, they are especially important for a hybrid application.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Connection resiliency - Applications on-premise normally have low-latency and good connection properties, something you’re not always guaranteed in a distributed and hybrid application. Whether a centralized client or a distributed one, the code should be able to handle extended retry logic.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Authorization and Access - In a single authorization environment like a Active Directory domain, security is handled at a user-password level. In a distributed computing environment, you have more options. You can mitigate this with&amp;#160; using The Windows Azure Application Fabric feature of ACS to make the Azure application aware of the App Fabric as an ADFS provider. However, a claims-based authentication structure is often a superior choice.&amp;#160; &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;Consistency and Concurrency - When you have a Relational Database Management System (RDBMS), Consistency and Concurrency are part of the design. In a Service Architecture, you need to plan for sequential message handling and lifecycle.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;strong&gt;Resources:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;How to Build a Hybrid On-Premise/In Cloud Application: &lt;a href="http://blogs.msdn.com/b/ignitionshowcase/archive/2010/11/09/how-to-build-a-hybrid-on-premise-in-cloud-application.aspx"&gt;http://blogs.msdn.com/b/ignitionshowcase/archive/2010/11/09/how-to-build-a-hybrid-on-premise-in-cloud-application.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;General Architecture guidance: &lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2010/12/21/windows-azure-learning-plan-architecture.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2010/12/21/windows-azure-learning-plan-architecture.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;#160;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=33695" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SOA/default.aspx">SOA</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: Web Applications</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/02/14/windows-azure-use-case-web-applications.aspx</link><pubDate>Mon, 14 Feb 2011 17:22:42 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:33471</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/33471.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=33471</wfw:commentRss><description>&lt;div class="wlWriterHeaderFooter" style="float:none;margin:0px;padding:4px 0px 4px 0px;"&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="font-size:x-small;"&gt;&lt;em&gt;&lt;span style="font-size:small;"&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;/span&gt;&lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;span style="font-size:small;"&gt;&lt;u&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/font&gt;&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&amp;#160;&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Description:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;Many applications have a requirement to be located outside of the organization’s internal infrastructure control. For instance, the company website for a brick-and-mortar retail company may want to post not only static but interactive content to be available to their external customers, and not want the customers to have access inside the organization’s firewall. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;There are also cases of pure web applications used for a great many of the internal functions of the business. This allows for remote workers, shared customer/employee workloads and data and other advantages. Some firms choose to host these web servers internally, others choose to contract out the infrastructure to an “ASP” (Application Service Provider) or an Infrastructure as a Service (IaaS) company.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;In any case, the design of these applications often resembles the following:&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/3122.WebAppsWeb_5F00_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="WebAppsWeb" border="0" alt="WebAppsWeb" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/6254.WebAppsWeb_5F00_thumb.png" width="767" height="208" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;In this design, a server (or perhaps more than one) hosts the presentation function (http or https) access to the application, and this same system may hold the computational aspects of the program. Authorization and Access is controlled programmatically, or is more open if this is a customer-facing application. Storage is either placed on the same or other servers, hosted within an RDBMS or NoSQL database, or a combination of the options, all coded into the application.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;High-Availability within this scenario is often the responsibility of the architects of the application, and by purchasing more hosting resources which must be built, licensed and configured, and manually added as demand requires, although some IaaS providers have a partially automatic method to add nodes for scale-out, if the architecture of the application supports it. Disaster Recovery is the responsibility of the system architect as well.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:small;"&gt;&lt;strong&gt;Implementation:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;In a Windows Azure Platform as a Service (PaaS) environment, many of these architectural considerations are designed into the system.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/6735.WebAppsAzure_5F00_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="WebAppsAzure" border="0" alt="WebAppsAzure" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/1057.WebAppsAzure_5F00_thumb.png" width="826" height="238" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The Azure “Fabric” (not to be confused with the Azure implementation of Application Fabric - more on that in a moment) is designed to provide scalability. Compute resources can be added and removed programmatically based on any number of factors. Balancers at the request-level of the Fabric automatically route http and https requests. The fabric also provides High-Availability for storage and other components. Disaster recovery is a shared responsibility between the facilities (which have the ability to restore in case of catastrophic failure) and your code, which should build in recovery.&lt;/p&gt;  &lt;p&gt;In a Windows Azure-based web application, you have the ability to separate out the various functions and components. Presentation can be coded for multiple platforms like smart phones, tablets and PC’s, while the computation can be a single entity shared between them. This makes the applications more resilient and more object-oriented, and lends itself to a SOA or Distributed Computing architecture. &lt;/p&gt;  &lt;p&gt;It is true that you could code up a similar set of functionality in a traditional web-farm, but the difference here is that the components are built into the very design of the architecture. The API’s and DLL’s you call in a Windows Azure code base contains components as first-class citizens. For instance, if you need storage, it is simply called within the application as an object.&amp;#160; Computation has multiple options and the ability to scale linearly. &lt;/p&gt;  &lt;p&gt;You also gain another component that you would either have to write or bolt-in to a typical web-farm: the Application Fabric. This Windows Azure component provides communication between applications or even to on-premise systems. It provides authorization in either person-based or claims-based perspectives. &lt;/p&gt;  &lt;p&gt;SQL Azure provides relational storage as another option, and can also be used or accessed from on-premise systems. It should be noted that you can use all or some of these components individually. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Resources:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Design Strategies for Scalable Active Server Applications - &lt;a href="http://msdn.microsoft.com/en-us/library/ms972349.aspx"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;http://msdn.microsoft.com/en-us/library/ms972349.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Physical Tiers and Deployment&amp;#160; - &lt;a href="http://msdn.microsoft.com/en-us/library/ee658120.aspx"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;http://msdn.microsoft.com/en-us/library/ee658120.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=33471" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Compute/default.aspx">Compute</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SOA/default.aspx">SOA</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: New Development</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/02/08/windows-azure-use-case-new-development.aspx</link><pubDate>Tue, 08 Feb 2011 13:46:34 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:33303</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/33303.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=33303</wfw:commentRss><description>&lt;p&gt;&lt;em&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;u&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/u&gt;&lt;/a&gt; &lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Description:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Computing platforms evolve over time. Originally computers were directed by hardware wiring - that, the “code” was the path of the wiring that directed an electrical signal from one component to another, or in some cases a physical switch controlled the path. From there software was developed, first in a very low machine language, then when compilers were created, computer languages could more closely mimic written statements. These language statements can be compiled into the lower-level machine language still used by computers today.&lt;/p&gt;  &lt;p&gt;Microprocessors replaced logic circuits, sometimes with fewer instructions (Reduced Instruction Set Computing, RISC) and sometimes with more instructions (Complex Instruction Set Computing, CISC). &lt;/p&gt;  &lt;p&gt;The reason this history is important is that along each technology advancement, computer code has adapted. Writing software for a RISC architecture is significantly different than developing for a CISC architecture. And moving to a Distributed Architecture like Windows Azure also has specific implementation details that our code must follow.&lt;/p&gt;  &lt;p&gt;But why make a change? As I’ve described, we need to make the change to our code to follow advances in technology. There’s no point in change for its own sake, but as a new paradigm offers benefits to our users, it’s important for us to leverage those benefits where it makes sense.&lt;/p&gt;  &lt;p&gt;That’s most often done in new development projects. It’s a far simpler task to take a new project and adapt it to Windows Azure than to try and retrofit older code designed in a previous computing environment. We can still use the same coding languages (.NET, Java, C++) to write code for Windows Azure, but we need to think about the architecture of that code on a new project so that it runs in the most efficient, cost-effective way in a Distributed Architecture.&lt;/p&gt;  &lt;p&gt;As we receive new requests from the organization for new projects, a distributed architecture paradigm belongs in the decision matrix for the platform target.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Implementation:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you are designing new applications for Windows Azure (or any distributed architecture) there are many important details to consider. But at the risk of over-simplification, there are three main concepts to learn and architect within the new code:&lt;/p&gt;  &lt;p&gt;Stateless Programming - Stateless program is a prime concept within distributed architectures. Rather than each server owning the complete processing cycle, the information from an operation that needs to be retained (the “state”) should be persisted to another location c(like storage) common to all machines involved in the process.&amp;#160; An interesting learning process for Stateless Programming (although not unique to this language type) is to learn Functional Programming. &lt;/p&gt;  &lt;p&gt;Server-Side Processing - Along with developing using a Stateless Design, the closer you can locate the code processing to the data, the less expensive and faster the code will run. When you control the network layer, this is less important, since you can send vast amounts of data between the server and client, allowing the client to perform processing. In a distributed architecture, you don’t always own the network, so it’s performance is unpredictable. Also, you may not be able to control the platform the user is on (such as a smartphone, PC or tablet), so it’s imperative to deliver only results and graphical elements where possible.&amp;#160; &lt;/p&gt;  &lt;p&gt;Token-Based Authentication - Also called “Claims-Based Authorization”, this code practice means instead of allowing a user to log on once and then running code in that context, a more granular level of security is used. A “token” or “claim”, often represented as a Certificate, is sent along for a series or even one request. In other words, every call to the code is authenticated against the token, rather than allowing a user free reign within the code call. While this is more work initially, it can bring a greater level of security, and it is far more resilient to disconnections.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Resources:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;See the references of “Nondistributed Deployment” and “Distributed Deployment” at the top of this article for more information with graphics:&amp;#160; &lt;a href="http://msdn.microsoft.com/en-us/library/ee658120.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee658120.aspx&lt;/a&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Stack Overflow has a good thread on functional programming: &lt;a href="http://stackoverflow.com/questions/844536/advantages-of-stateless-programming"&gt;http://stackoverflow.com/questions/844536/advantages-of-stateless-programming&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Another good discussion on Stack Overflow on server-side processing is here: &lt;a href="http://stackoverflow.com/questions/3064018/client-side-or-server-side-processing"&gt;http://stackoverflow.com/questions/3064018/client-side-or-server-side-processing&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Claims Based Authorization is described here: &lt;a href="http://msdn.microsoft.com/en-us/magazine/ee335707.aspx"&gt;http://msdn.microsoft.com/en-us/magazine/ee335707.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=33303" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: Agility</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/01/25/windows-azure-use-case-agility.aspx</link><pubDate>Tue, 25 Jan 2011 14:56:44 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:32911</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/32911.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=32911</wfw:commentRss><description>&lt;p&gt;&lt;span style="font-size:x-small;"&gt;&lt;em&gt;&lt;span style="font-size:small;"&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;/span&gt;&lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;span style="font-size:small;"&gt;&lt;u&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/font&gt;&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&amp;#160;&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Description:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Agility in this context is defined as the ability to quickly develop and deploy an application. In theory, the speed at which your organization can develop and deploy an application on available hardware is identical to what you could deploy in a distributed environment. But in practice, this is not always the case. Having an option to use a distributed environment can be much faster for the deployment and even the development process.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;   &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/5367.image_5F00_4.png"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;   &lt;strong&gt;&lt;span style="font-size:small;"&gt;Implementation:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;When an organization designs code, they are essentially becoming a Software-as-a-Service (SaaS) provider to their own organization. To do that, the IT operations team becomes the Infrastructure-as-a-Service (IaaS) to the development teams. From there, the software is developed and deployed using an Application Lifecycle Management (ALM) process.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;A simplified view of an ALM process is as follows:&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Requirements&lt;/li&gt;    &lt;li&gt;Analysis &lt;/li&gt;    &lt;li&gt;Design and Development&lt;/li&gt;    &lt;li&gt;Implementation &lt;/li&gt;    &lt;li&gt;Testing &lt;/li&gt;    &lt;li&gt;Deployment to Production &lt;/li&gt;    &lt;li&gt;Maintenance&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font size="2"&gt;In an on-premise environment, this often equates to the following process map:&lt;/font&gt;&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2"&gt;     &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Requirements &lt;/strong&gt;&lt;/td&gt;        &lt;td&gt;Business requirements formed by Business Analysts, Developers and Data Professionals.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Analysis&lt;/strong&gt;&lt;/td&gt;        &lt;td&gt;Feasibility studies, including physical plant, security, manpower and other resources.          &lt;br /&gt;          &lt;br /&gt;Request is placed on the work task list if approved.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Design and Development&lt;/strong&gt;&lt;/td&gt;        &lt;td&gt;Code written according to organization’s chosen methodology, either on-premise or to multiple development teams on and off premise.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Implementation&lt;/strong&gt; &lt;/td&gt;        &lt;td&gt;Code checked into main branch.         &lt;br /&gt;          &lt;br /&gt;Code forked as needed. &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Testing&lt;/strong&gt; &lt;/td&gt;        &lt;td&gt;Code deployed to on-premise Testing servers.          &lt;br /&gt;          &lt;br /&gt;If no server capacity available, more resources procured through standard budgeting and ordering processes.           &lt;br /&gt;          &lt;br /&gt;Manual and automated functional, load, security, etc. performed.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Deployment to Production &lt;/strong&gt;&lt;/td&gt;        &lt;td&gt;Server team involved to select platform and environments with available capacity.         &lt;br /&gt;          &lt;br /&gt;If no server capacity available, standard budgeting and procurement process followed.          &lt;br /&gt;          &lt;br /&gt;If no server capacity available, systems built, configured and put under standard organizational IT control.          &lt;br /&gt;          &lt;br /&gt;Systems configured for proper operating systems, patches, security and virus scans.          &lt;br /&gt;          &lt;br /&gt;System maintenance, HA/DR, backups and recovery plans configured and put into place.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;strong&gt;Maintenance&lt;/strong&gt;&lt;/td&gt;        &lt;td&gt;Code changes evaluated and altered according to need.&lt;/td&gt;     &lt;/tr&gt;   &lt;/table&gt;  &lt;p&gt;&lt;font size="2"&gt;In a distributed computing environment like Windows Azure, the process maps a bit differently:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;     &lt;table cellspacing="0" cellpadding="2"&gt;         &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Requirements&lt;/font&gt; &lt;/strong&gt;&lt;/td&gt;            &lt;td&gt;Business requirements formed by Business Analysts, Developers and Data Professionals.&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Analysis&lt;/font&gt;&lt;/strong&gt;&lt;/td&gt;            &lt;td&gt;Feasibility studies, including budget, security, manpower and other resources.              &lt;br /&gt;              &lt;br /&gt;Request is placed on the work task list if approved.&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Design and Development&lt;/font&gt;&lt;/strong&gt;&lt;/td&gt;            &lt;td&gt;Code written according to organization’s chosen methodology, either on-premise or to multiple development teams on and off premise.&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Implementation&lt;/font&gt;&lt;/strong&gt; &lt;/td&gt;            &lt;td&gt;Code checked into main branch.             &lt;br /&gt;              &lt;br /&gt;Code forked as needed. &lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Testing&lt;/font&gt;&lt;/strong&gt; &lt;/td&gt;            &lt;td&gt;Code deployed to Azure.             &lt;br /&gt;               &lt;br /&gt;Manual and automated functional, load, security, etc. performed.&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Deployment to Production&lt;/font&gt; &lt;/strong&gt;&lt;/td&gt;            &lt;td&gt;Code deployed to Azure.             &lt;br /&gt;              &lt;br /&gt;Point in time backup and recovery plans configured and put into place.(&lt;em&gt;HA/DR and automated backups already present in Azure fabric&lt;/em&gt;)&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td&gt;&lt;strong&gt;&lt;font color="#d19049"&gt;Maintenance&lt;/font&gt;&lt;/strong&gt;&lt;/td&gt;            &lt;td&gt;Code changes evaluated and altered according to need.&lt;/td&gt;         &lt;/tr&gt;       &lt;/table&gt;   &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;This means that several steps can be removed or expedited. It also means that the business function requesting the application can be held directly responsible for the funding of that request, speeding the process further since the IT budgeting process may not be involved in the Azure scenario.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;An additional benefit is the “Azure Marketplace”, In effect this becomes an app store for Enterprises to select pre-defined code and data applications to mesh or bolt-in to their current code, possibly saving development time.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Resources:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Whitepaper download- What is ALM?&amp;#160; &lt;a href="http://go.microsoft.com/?linkid=9743693"&gt;http://go.microsoft.com/?linkid=9743693&lt;/a&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Whitepaper download - ALM and Business Strategy: &lt;a href="http://go.microsoft.com/?linkid=9743690"&gt;http://go.microsoft.com/?linkid=9743690&lt;/a&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;LiveMeeting Recording on ALM and Windows Azure (registration required, but free): &lt;a href="http://www.microsoft.com/uk/msdn/visualstudio/contact-us.aspx?sbj=DevelopingwithWindowsAzure(ALMperspective)-10:00-11:00-19thJan2011" target="_blank"&gt;http://www.microsoft.com/uk/msdn/visualstudio/contact-us.aspx?sbj=Developing with Windows Azure (ALM perspective) - 10:00-11:00 - 19th Jan 2011&lt;/a&gt; &lt;/font&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=32911" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure and SQL Azure Use Cases</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx</link><pubDate>Tue, 18 Jan 2011 15:14:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:32715</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/32715.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=32715</wfw:commentRss><description>&lt;p&gt;The key to effectively leveraging &amp;ldquo;Cloud Computing&amp;rdquo; or more accurately, Distributed Computing architectures like Windows and SQL Azure is to implement them where they make the most sense. This is actually good advice for any computing paradigm, but some folks believe that a particular tool should be used in all circumstances. Microsoft does not recommend that you take all of the computing resources you have on-premise and move them to a distributed architecture.&lt;/p&gt;
&lt;p&gt;A Use Case is defined as &amp;ldquo;when or where you use a technology&amp;rdquo; and a Pattern/Practice is defined as &amp;ldquo;how you implement a technology&amp;rdquo;.&amp;nbsp; In this series of posts, I&amp;rsquo;ll cover the use cases, and I&amp;rsquo;ll also give you resources to leverage to implement them. If you are looking for a way to learn "cloud" or Distributed Computing, &lt;a target="_blank" href="http://sqlblog.com/b/buckwoody/archive/2010/11/16/windows-azure-learning-plan.aspx"&gt;check out the Azure Learning Plan here&lt;/a&gt;.&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0" style="width:655px;"&gt;

&lt;tr&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;span style="color:#0000ff;"&gt;&lt;strong&gt;Windows Azure Use-Cases&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Elastic Scale - &lt;em&gt;&lt;span style="color:#339966;"&gt;Bursting workloads up and down in use patterns&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/01/18/windows-azure-use-case-elastic-scale.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-use-case-elastic-scale.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Agility - &lt;em&gt;&lt;span style="color:#339966;"&gt;The ability to quickly develop and deploy an application&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/01/25/windows-azure-use-case-agility.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/25/windows-azure-use-case-agility.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;New Development- &lt;em&gt;&lt;span style="color:#339966;"&gt;Code option for new applications&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/02/08/windows-azure-use-case-new-development.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/02/08/windows-azure-use-case-new-development.aspx&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Web-Centric Applications&amp;nbsp;- &lt;em&gt;&lt;span style="color:#339966;"&gt;Applications that are developed for a web paradigm&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/02/14/windows-azure-use-case-web-applications.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/02/14/windows-azure-use-case-web-applications.aspx&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Hybrid Applications and Data - &lt;em&gt;&lt;span style="color:#339966;"&gt;Applications and data that need to be both on-premise and in a distributed environment&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/02/22/windows-azure-use-case-hybrid-applications.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/02/22/windows-azure-use-case-hybrid-applications.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;High-Performance Computing - &lt;span style="color:#339966;"&gt;&lt;em&gt;Apllications that require multiple processing nodes, such as scientific, research or financial data (also known as &lt;/em&gt;Technical Computing&lt;em&gt;)&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/02/28/windows-azure-use-case-high-performance-computing-hpc.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/02/28/windows-azure-use-case-high-performance-computing-hpc.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Infrastructure Limits - &lt;em&gt;&lt;span style="color:#339966;"&gt;Inability or unwillingness to add more physical computers to the environment&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/03/08/windows-azure-use-case-infrastructure-limits.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/03/08/windows-azure-use-case-infrastructure-limits.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Fast Acquisitions&amp;nbsp;-&lt;span style="color:#339966;"&gt; &lt;em&gt;The ability to quickly migrate a newly acquired business to the current computing environment&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/03/15/windows-azure-use-case-fast-acquisitions.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/03/15/windows-azure-use-case-fast-acquisitions.aspx&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;span style="color:#0000ff;"&gt;SQL Azure Use-Cases&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Application Data Store -&lt;span style="color:#339966;"&gt; Uses SQL Azure to provide a central location for department-level or other collaborative applications&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/03/22/sql-azure-use-case-department-application-data-store.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/03/22/sql-azure-use-case-department-application-data-store.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Shared Data Hub &amp;nbsp;-&lt;span style="color:#339966;"&gt; &lt;em&gt;Provides a common data store for multiple organizations to&amp;nbsp;handle&amp;nbsp;data between them&amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/04/05/sql-azure-use-case-shared-data-hub.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/04/05/sql-azure-use-case-shared-data-hub.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Web-Based Applications&amp;nbsp;-&lt;span style="color:#339966;"&gt; &lt;em&gt;Using SQL Azure as a data store type for web applications&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/04/19/sql-azure-use-case-web-based-applications.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/04/19/sql-azure-use-case-web-based-applications.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="text-align:left;"&gt;Shared Storage&amp;nbsp;Application&amp;nbsp;-&lt;span style="color:#339966;"&gt; &lt;em&gt;Using SQL Azure as a hybrid data store or as part of a HA/DR plan.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p dir="ltr" style="margin-right:0px;"&gt;&lt;a href="http://blogs.msdn.com/b/buckwoody/archive/2011/04/26/sql-azure-use-case-shared-storage-application.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/04/26/sql-azure-use-case-shared-storage-application.aspx&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=32715" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Use Case: Elastic Scale</title><link>http://sqlblog.com/blogs/buck_woody/archive/2011/01/18/windows-azure-use-case-elastic-scale.aspx</link><pubDate>Tue, 18 Jan 2011 14:54:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:32713</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/32713.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=32713</wfw:commentRss><description>&lt;div class="wlWriterHeaderFooter" style="float:none;margin:0px;padding:4px 0px 4px 0px;"&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="font-size:x-small;"&gt;&lt;em&gt;&lt;span style="font-size:small;"&gt;This is one in a series of posts on when and where to use a distributed architecture design in your organization's computing needs. You can find the main post here: &lt;/span&gt;&lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx"&gt;&lt;span style="font-size:small;"&gt;http://blogs.msdn.com/b/buckwoody/archive/2011/01/18/windows-azure-and-sql-azure-use-cases.aspx&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&amp;#160;&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Description:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;“Elastic Scale” is a description of computing where the demands for the compute resources expands and contracts. Normally this involves increased user activity for the system, but the compute functions might also be driven by activity within the code itself. Let’s take a quick look at each.&lt;/p&gt;  &lt;p&gt;In a centralized computing model (such as client/server), there is a finite set of resources for Compute and Storage, defined by the limits of the server architecture in place. The compute and storage resources are at a constant, assuming that they are at their maximum levels. In effect, you’re paying for and maintaining a a high level of computing whether you use it or not. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/8321.Ealstic001_5F00_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Ealstic001" border="0" alt="Ealstic001" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/4604.Ealstic001_5F00_thumb.png" width="596" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In a distributed computing model (such as “Cloud Computing” and Windows Azure) computing and storage resources can be added - and removed - dynamically. This means that as demand increases, you can add more resources to the pool based on a trigger of your choosing, and establish the ceiling for those resources if you want one. Conversely, as the load decreases, the resources also decrease. In this design, the use drives the capacity you pay for.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/6758.Ealstic002_5F00_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Ealstic002" border="0" alt="Ealstic002" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/0804.Ealstic002_5F00_thumb.png" width="520" height="160" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Implementation:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The key to implementing a distributed application is to keep it &lt;em&gt;stateless&lt;/em&gt;. In a program, “state” is loosely defined as maintaining track of the previous operations within a program. Normally this record is kept in memory during the run of a particular program. &lt;/p&gt;  &lt;p&gt;For instance - when you begin a bank transaction, the ATM machine takes your card, accepts your PIN, accepts the money you deposit and the withdrawals you make, and then returns your card, closing out the transaction. It maintains the “state” of your entire process, bookmarked on each end by taking your card and giving it back to you.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/0486.Ealstic003_5F00_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="Ealstic003" border="0" alt="Ealstic003" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-79-79-metablogapi/3108.Ealstic003_5F00_thumb.png" width="637" height="80" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In stateless computing, the assumption is that the components within the process will come and go at various times. A good analogy here is e-mail. An e-mail system is made up of multiple parts:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Mail Client Software &lt;/li&gt;    &lt;li&gt;Message &lt;/li&gt;    &lt;li&gt;Transport &lt;/li&gt;    &lt;li&gt;Server &lt;/li&gt;    &lt;li&gt;Processing &lt;/li&gt;    &lt;li&gt;Transport &lt;/li&gt;    &lt;li&gt;Recipient(s) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;When you compose an e-mail message, none of the other components are aware of your activities. When you send it, your client program is no longer aware of what is happening to the message. When the server receives it, your client software might even be powered off. The “state” is maintained by each component.&lt;/p&gt;  &lt;p&gt;To adequately scale your workload, each component should be largely unaware of other components. That means you need to design your code such that it has more of the characteristics of an e-mail system. Keep in mind that even a bank ATM machine transaction can still be coded as a stateless application - I’m using it here as an example. In fact, very few things cannot be created in a stateless way.&lt;/p&gt;  &lt;p&gt;You can “persist” state - that is, save it - to storage that each component can access. This is in fact the purpose of the Message Queue storage in Windows Azure. It allows one component to write a message and then leave. The next component can pick up that message and work on it. It’s similar to what you see in a restaurant. The waiter takes your order and drops it off in the kitchen, and the cook looks at each order to prepare it. In this analogy, the “message” is the meal order ticket.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:small;"&gt;Resources:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Design Strategies for Scalable Active Server Applications - &lt;a href="http://msdn.microsoft.com/en-us/library/ms972349.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms972349.aspx&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Physical Tiers and Deployment&amp;#160; - &lt;a href="http://msdn.microsoft.com/en-us/library/ee658120.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee658120.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=32713" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Presentation Links: SQL Server Performance Tuning (Quest)</title><link>http://sqlblog.com/blogs/buck_woody/archive/2010/07/21/presentation-links-sql-server-performance-tuning-quest.aspx</link><pubDate>Wed, 21 Jul 2010 09:54:15 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:27199</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/27199.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=27199</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;I worked with a team of folks brought together by Quest software, and we presented multiple sessions on SQL Server Performance Tuning. Here are the links I mentioned during those presentations:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;Blitz! SQL Server Takeovers (Brent)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;You're minding your own business in your corner office - well, no, you're a DBA, so it's just your cubicle - when somebody says, "Did you know about this SQL Server over here?" Suddenly, you have to find out what the server's doing, how it was set up, and whether things are working correctly. In this real-time session, Brent will show you how he tackles unknown servers in 60 minutes to find problems, take an inventory, and set the server up for easier management down the road.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;SQL Server Best Practices Article: &lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc966412.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/en-us/library/cc966412.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;How to determine proper SQL Server configuration settings: &lt;/span&gt;&lt;a href="http://support.microsoft.com/kb/319942"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://support.microsoft.com/kb/319942&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Setting Server Configuration Options (SQL Server 2008 R2, other versions available) : &lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/library/ms189631.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/en-us/library/ms189631.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Running SQL Server 2008 in a Hyper-V Environment - Best Practices and Performance Recommendations: &lt;/span&gt;&lt;a href="http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Checklist: SQL Server Performance: &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms979169.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://msdn.microsoft.com/en-us/library/ms979169.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l2 level1 lfo1;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Script Repository for SQL Server Information: &lt;/span&gt;&lt;a href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/site/search?f%5B0%5D.Type=RootCategory&amp;amp;f%5B0%5D.Value=databases&amp;amp;f%5B0%5D.Text=Databases&amp;amp;f%5B1%5D.Type=SubCategory&amp;amp;f%5B1%5D.Value=sqlserver&amp;amp;f%5B1%5D.Text=SQL%20Server"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://gallery.technet.microsoft.com/ScriptCenter/en-us/site/search?f%5B0%5D.Type=RootCategory&amp;amp;f%5B0%5D.Value=databases&amp;amp;f%5B0%5D.Text=Databases&amp;amp;f%5B1%5D.Type=SubCategory&amp;amp;f%5B1%5D.Value=sqlserver&amp;amp;f%5B1%5D.Text=SQL%20Server&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&amp;ldquo;Turn your head and cough&amp;rdquo; &amp;ndash; Quick Health Check Using Wait Stats for the SQL Server Takeover (Kevin)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;So you&amp;rsquo;ve survived the SQL Server Blitz and have made sure that your server is properly setup, configured, and under proper preventative maintenance.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Now it&amp;rsquo;s time to play doctor and determining the health of your SQL Server.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Kevin will slip on the latex gloves and show you how to determine the health of an unknown server and the applications running on that SQL Server with a quick physical.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l3 level1 lfo2;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;SQL Server Best Practices Analyzer (SQL Server 2008 R2, other versions available) : &lt;/span&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=0fd439d7-4bff-4df7-a52f-9a1be8725591"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=0fd439d7-4bff-4df7-a52f-9a1be8725591&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l3 level1 lfo2;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Microsoft Assessment and Planning (MAP) Toolkit for SQL Server 2008 (will detect all the way down to SQL Server 2000): &lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/solutionaccelerators/dd537572.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/en-us/solutionaccelerators/dd537572.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l3 level1 lfo2;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;DMV Stats:&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.codeplex.com/sqldmvstats"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://www.codeplex.com/sqldmvstats&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l3 level1 lfo2;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;SQL Server 2005 Performance Dashboard Reports: &lt;/span&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=1d3a4a0d-7e0c-4730-8204-e419218c1efc&amp;amp;displaylang=en"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=1d3a4a0d-7e0c-4730-8204-e419218c1efc&amp;amp;displaylang=en&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;Lose Wait Fast with Wait Stats (Brent)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;It's time for you to get serious about wait loss - no, not weight loss, but wait loss.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;SQL Server wait stats will tell you what your queries and your server have been waiting on, and you don't even have to use Profiler or tracing!&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Brent will show you how to troubleshoot issues in real time and check historical data.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;He'll also show tools to make this process easier.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l0 level1 lfo3;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Troubleshooting Performance Problems in SQL Server 2008 Whitepaper (2005 version also available) : &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd672789.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://msdn.microsoft.com/en-us/library/dd672789.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l0 level1 lfo3;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;SQL Server 2005 Performance Tuning using Waits and Queues:&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://technet.microsoft.com/library/cc966413.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/library/cc966413.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l0 level1 lfo3;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;SQL Server 2005 Waits and Queues: &lt;/span&gt;&lt;a href="http://sqlcat.com/whitepapers/archive/2007/11/19/sql-server-2005-waits-and-queues.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://sqlcat.com/whitepapers/archive/2007/11/19/sql-server-2005-waits-and-queues.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l0 level1 lfo3;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;OLTP Top 6 Performance Issues for OLTP Applications:&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.microsoft.com/technet/prodtechnol/sql/bestpractice/oltp-performance-issues.mspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://www.microsoft.com/technet/prodtechnol/sql/bestpractice/oltp-performance-issues.mspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l0 level1 lfo3;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Top SQL Server 2005 Performance Issues for OLTP Applications: &lt;/span&gt;&lt;a href="http://sqlcat.com/top10lists/archive/2007/11/21/top-sql-server-2005-performance-issues-for-oltp-applications.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://sqlcat.com/top10lists/archive/2007/11/21/top-sql-server-2005-performance-issues-for-oltp-applications.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;PerfMon is &amp;ldquo;Irie Mon&amp;rdquo; (Kevin)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt;They say &amp;ldquo;irie mon&amp;rdquo; in Jamaica when everything is going well.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Performance Monitor is irie! It&amp;rsquo;s an extremely important tool in the pocket of any IT professional because it&amp;rsquo;s available on every version of Windows and provides valuable performance information across all of the components of SQL Server, from the relational and storage engine to SSIS, SSAS, and SSRS.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Kevin will show you how to make sense of PerfMon&amp;rsquo;s multitude of counters, how to store PerfMon data for long-term analysis, and how to correlate PerfMon&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l1 level1 lfo4;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Windows Reliability and Performance Monitor : &lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc755081(WS.10).aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/en-us/library/cc755081(WS.10).aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l1 level1 lfo4;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Overview of Windows Performance Monitor: &lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc749154.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://technet.microsoft.com/en-us/library/cc749154.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l1 level1 lfo4;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Scripts and Tools for Performance Tuning and Troubleshooting SQL Server 2005: &lt;/span&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/sql/sql2005/default.mspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://www.microsoft.com/technet/scriptcenter/scripts/sql/sql2005/default.mspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-size:small;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph" style="text-indent:-0.25in;margin:0in 0in 0pt 0.5in;mso-list:l1 level1 lfo4;"&gt;&lt;span style="font-family:Symbol;color:red;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Troubleshooting Performance Problems in SQL Server 2008: &lt;/span&gt;&lt;a href="http://sqlcat.com/whitepapers/archive/2009/04/14/troubleshooting-performance-problems-in-sql-server-2008.aspx"&gt;&lt;span style="color:red;"&gt;&lt;span style="font-family:Times New Roman;font-size:small;"&gt;http://sqlcat.com/whitepapers/archive/2009/04/14/troubleshooting-performance-problems-in-sql-server-2008.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=27199" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Server/default.aspx">SQL Server</category></item><item><title>Designing Dashboards</title><link>http://sqlblog.com/blogs/buck_woody/archive/2010/07/14/designing-dashboards.aspx</link><pubDate>Wed, 14 Jul 2010 14:44:06 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:27041</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/27041.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=27041</wfw:commentRss><description>&lt;p&gt;Not all data professionals get into the "front end" of the applications that hit their data. But most of us end up having to do a "dashboard" of information, even if it's a dashboard of our system information and performance tracking. I do this quite often for myself and for other folks, and I wanted to share a resource I use for that. It's from a site called "Quince", and I really like the way they break down all kinds of User-Interface (UI) information. Well worth your time to take a look, and share with your dev friends: &lt;a href="http://quince.infragistics.com/#/Main/ViewPattern$pattern=Dashboard/PatternExamples$guid=0cdc0314-2ab3-4981-bbef-0b7a038adab2"&gt;http://quince.infragistics.com/#/Main/ViewPattern$pattern=Dashboard/PatternExamples$guid=0cdc0314-2ab3-4981-bbef-0b7a038adab2&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=27041" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Server/default.aspx">SQL Server</category></item><item><title>Data-tier Applications in SQL Server 2008 R2</title><link>http://sqlblog.com/blogs/buck_woody/archive/2010/05/25/data-tier-applications-in-sql-server-2008-r2.aspx</link><pubDate>Tue, 25 May 2010 10:47:45 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:25501</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/25501.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=25501</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;I had the privilege of presenting to the Adelaide SQL Server User Group in Australia last evening, and I covered the Data Access Component (DAC) and the Utility Control Point (UCP) from SQL Server 2008 R2. Here are some links from that presentation:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;Whitepaper: &lt;a href="http://msdn.microsoft.com/en-us/library/ff381683.aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://msdn.microsoft.com/en-us/library/ff381683.aspx&lt;/span&gt;&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;Tutorials: &lt;a href="http://msdn.microsoft.com/en-us/library/ee210554(SQL.105).aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://msdn.microsoft.com/en-us/library/ee210554(SQL.105).aspx&lt;/span&gt;&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;From Visual Studio: &lt;a href="http://msdn.microsoft.com/en-us/library/dd193245(VS.100).aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://msdn.microsoft.com/en-us/library/dd193245(VS.100).aspx&lt;/span&gt;&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;Restrictions and capabilities by Edition: &lt;a href="http://msdn.microsoft.com/en-us/library/cc645993(SQL.105).aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://msdn.microsoft.com/en-us/library/cc645993(SQL.105).aspx&lt;/span&gt;&lt;/a&gt; &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;Glen Berry's Blog entry on scripts for UCP/DAC: &lt;a href="http://www.sqlservercentral.com/blogs/glennberry/archive/2010/05/19/sql-server-utility-script-from-24-hours-of-pass.aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://www.sqlservercentral.com/blogs/glennberry/archive/2010/05/19/sql-server-utility-script-from-24-hours-of-pass.aspx&lt;/span&gt;&lt;/a&gt; &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;Objects supported by a DAC: &lt;a href="http://msdn.microsoft.com/en-us/library/ee210549(SQL.105).aspx"&gt;&lt;span style="mso-bidi-font-family:'MS Shell Dlg 2';"&gt;http://msdn.microsoft.com/en-us/library/ee210549(SQL.105).aspx&lt;/span&gt;&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-family:'MS Shell Dlg 2','sans-serif';color:black;font-size:9pt;mso-bidi-font-family:'MS Shell Dlg 2';"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=25501" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Server/default.aspx">SQL Server</category></item><item><title>SQL Server for the Oracle DBA Links</title><link>http://sqlblog.com/blogs/buck_woody/archive/2010/04/28/sql-server-for-the-oracle-dba-links.aspx</link><pubDate>Wed, 28 Apr 2010 14:29:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:24637</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/24637.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=24637</wfw:commentRss><description>&lt;P&gt;I do a presentation (and a class) called "SQL Server for the Oracle DBA". It's a non-marketing overview that gives you the basics of working with SQL Server if you're already familiar wtih how Oracle works. This class and these links DO NOT help you with "Why should I use Oracle/SQL Server instead of Oracle/SQL Server" - I'll assume you're already there, and if not, there are LOTS of sites to help you make that decision. &lt;/P&gt;
&lt;P&gt;Although these links might contain slight marketing slants (I don't control them) I've tried to get the best links I can. Feel free to comment here to add more/better links.&lt;/P&gt;
&lt;P&gt;As such, these aren't links that help you work with Oracle - they are links to help you work with SQL Server. Some of them contain more information than you actually need, others don't have near enough. Taken together (and with the class) you're able to get done what you need to do.&lt;/P&gt;
&lt;P&gt;"Practical SQL Server for Oracle Professionals" - A Microsoft Whitepaper, probably the best place to get started: &lt;A href="http://download.microsoft.com/download/6/9/d/69d1fea7-5b42-437a-b3ba-a4ad13e34ef6/SQLServer2008forOracle.docx"&gt;http://download.microsoft.com/download/6/9/d/69d1fea7-5b42-437a-b3ba-a4ad13e34ef6/SQLServer2008forOracle.docx&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Free Training: &lt;A href="http://technet.microsoft.com/en-us/sqlserver/dd548020.aspx"&gt;http://technet.microsoft.com/en-us/sqlserver/dd548020.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Classroom training (will cost you): &lt;A href="http://www.microsoft.com/learning/en/us/course.aspx?ID=50068A&amp;amp;locale=en-us"&gt;http://www.microsoft.com/learning/en/us/course.aspx?ID=50068A&amp;amp;locale=en-us&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Terminology Differences: &lt;A href="http://www.associatedcontent.com/article/2383466/oracle_and_sql_server_basic_terminology.html"&gt;http://www.associatedcontent.com/article/2383466/oracle_and_sql_server_basic_terminology.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Datatype mapping between Oracle and SQL Server: &lt;A href="http://msdn.microsoft.com/en-us/library/ms151817.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms151817.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The "other" direction - can still be useful for the Oracle professional to see the other side: &lt;A href="http://blog.benday.com/archive/2008/10/23/23195.aspx"&gt;http://blog.benday.com/archive/2008/10/23/23195.aspx&lt;/A&gt; &lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=24637" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/DBA/default.aspx">DBA</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Developer/default.aspx">Developer</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Server/default.aspx">SQL Server</category></item><item><title>Consolidation Strategy References</title><link>http://sqlblog.com/blogs/buck_woody/archive/2010/03/09/consolidation-strategy-references.aspx</link><pubDate>Tue, 09 Mar 2010 13:11:19 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:23031</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/23031.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=23031</wfw:commentRss><description>&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;I have a presentation that I give on SQL Server Consolidation Strategies, and in that presentation I talk about a few links that are useful. Here are some that I’ve found – feel free to comment on more, or if these links go stale:         &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;   &lt;p&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt; &lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;Consolidation using SQL Server: &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee692366.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://msdn.microsoft.com/en-us/library/ee692366.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;SQL Server Consolidation Guidance:&lt;span style="mso-spacerun:yes;"&gt;&amp;#160; &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee819082.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://msdn.microsoft.com/en-us/library/ee819082.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;   &lt;p&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt; &lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;More references for SQL Server and Hyper-V: &lt;/font&gt;&lt;a href="http://www.sqlskills.com/BLOGS/KIMBERLY/post/Virtualization-with-SQL-Server.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://www.sqlskills.com/BLOGS/KIMBERLY/post/Virtualization-with-SQL-Server.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;Quick overview of Virtual Server licensing implications: &lt;/font&gt;&lt;a href="http://www.microsoft.com/uk/licensing/morethan250/learn/virtualisation.mspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://www.microsoft.com/uk/licensing/morethan250/learn/virtualisation.mspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;SQL Server and Hyper-V best practices: &lt;/font&gt;&lt;a href="http://sqlcat.com/whitepapers/archive/2008/10/03/running-sql-server-2008-in-a-hyper-v-environment-best-practices-and-performance-recommendations.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://sqlcat.com/whitepapers/archive/2008/10/03/running-sql-server-2008-in-a-hyper-v-environment-best-practices-and-performance-recommendations.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;High-Availability and Hyper-V: &lt;/font&gt;&lt;a href="http://technet.microsoft.com/en-us/magazine/2008.10.higha.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://technet.microsoft.com/en-us/magazine/2008.10.higha.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;Virtualization Calculator: &lt;/font&gt;&lt;a href="http://www.microsoft.com/Windowsserver2008/en/us/hyperv-calculators.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://www.microsoft.com/Windowsserver2008/en/us/hyperv-calculators.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;   &lt;p&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt; &lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;May not be current, but here’s a whitepaper from VMWare for SQL Server: &lt;/font&gt;&lt;a href="http://www.vmware.com/files/pdf/SQLServerWorkloads.pdf"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://www.vmware.com/files/pdf/SQLServerWorkloads.pdf&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;More information on SQL Server and VMWare: &lt;/font&gt;&lt;a href="http://blogs.msdn.com/cindygross/archive/2009/10/23/considerations-for-installing-sql-server-on-vmware.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://blogs.msdn.com/cindygross/archive/2009/10/23/considerations-for-installing-sql-server-on-vmware.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;   &lt;p&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt; &lt;/p&gt;  &lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;Server Virtualization Validation Program: &lt;/font&gt;&lt;a href="http://www.windowsservercatalog.com/svvp.aspx?svvppage=svvp.htm"&gt;&lt;u&gt;&lt;font color="#0000ff" size="3" face="Times New Roman"&gt;http://www.windowsservercatalog.com/svvp.aspx?svvppage=svvp.htm&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font size="3"&gt;&lt;font color="#000000"&gt;&lt;font face="Calibri"&gt;          &lt;p&gt;&lt;/p&gt;       &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=23031" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category></item></channel></rss>