<?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</title><link>http://sqlblog.com/blogs/buck_woody/default.aspx</link><description>Carpe Datum!</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Where are the Windows Azure customer case studies – and why aren’t there more?</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/05/08/where-are-the-windows-azure-customer-case-studies-and-why-aren-t-there-more.aspx</link><pubDate>Wed, 08 May 2013 14:31:28 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48995</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48995.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48995</wfw:commentRss><description>&lt;p&gt;&amp;ldquo;Case Studies&amp;rdquo; are a great tool when you&amp;rsquo;re evaluating a platform. Having evidence that other companies have deployed Windows Azure, in addition to how they did it, is a good way to plan your own deployments or even just evaluate whether Windows Azure would be a good fit. And we have several case studies you can examine here: &amp;nbsp;&lt;a href="https://www.windowsazure.com/en-us/home/case-studies/"&gt;https://www.windowsazure.com/en-us/home/case-studies/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2273.blog_2D00_1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2273.blog_2D00_1.png" alt="" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;But there aren&amp;rsquo;t a lot of them &amp;ndash; and there isn&amp;rsquo;t much detail on some. Why not?&lt;/p&gt;
&lt;p&gt;Well, as to the first question, we only keep a few of these on the web at any given time. They rotate based on date, industry, and other factors. If you want more, you can contact your local Microsoft team for something more specific to your situation or industry.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900387780.jpg"&gt;&lt;img style="max-width:550px;float:left;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900387780.jpg" alt="" width="106" height="106" border="0" /&gt;&lt;/a&gt;But even when you do, you may not get what you&amp;rsquo;re looking for &amp;ndash; a full-scale architecture diagram with costs, names and dates, sizes and layouts and so on. That&amp;rsquo;s a tougher thing to put on the web, and here&amp;rsquo;s why: companies are reluctant (as they should be) to include that level of detail in a public place. There are legal and competitive reasons they just can&amp;rsquo;t do that. And of course at the very beginning of any project we have to get the company to agree to do a case study, and no, we don&amp;rsquo;t pay for that. The company is going to have to let us document things, work with them, and generally get involved in the project. Not a lot of companies are willing to do that. &amp;nbsp;In the end, the case studies prove out that folks in your industry are using Windows Azure successfully, and that the detail is specific to your requirements and constraints. They are very useful to the business side of the company, but not as useful to the technical folks who want details. &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So we&amp;rsquo;ve stepped into that gap with more of the &amp;ldquo;real details&amp;rdquo; on how to implement a Windows Azure solution. In most cases these are live, real apps &amp;ndash; not just theoretical or best-practices kinds of documentation.&amp;nbsp; We have a few places you can check for more detail, including the Windows Azure Training Kit, and much more.&lt;/p&gt;
&lt;h2&gt;Complete Applications&lt;/h2&gt;
&lt;p&gt;Contoso Cycles &amp;ndash; a fully-functional, open sourced demo site on Azure: &lt;a href="http://archive.msdn.microsoft.com/contosocycles"&gt;http://archive.msdn.microsoft.com/contosocycles&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Fabrikam &amp;ndash; a fully-functional, open sourced demo site on Azure: &lt;a href="http://www.fabrikamshipping.com/"&gt;http://www.fabrikamshipping.com/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Complete Samples&lt;/h2&gt;
&lt;p&gt;Simple picture display app with source code: &lt;a href="http://code.msdn.microsoft.com/windowsazure/MyPictures-on-Windows-91bb3057"&gt;http://code.msdn.microsoft.com/windowsazure/MyPictures-on-Windows-91bb3057&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cloud Survey &amp;ndash; walkthough of a complete survey site using multiple components: &lt;a href="http://channel9.msdn.com/posts/Windows-Azure-Web-Sites-Modern-Application-Sample-Cloud-Survey"&gt;http://channel9.msdn.com/posts/Windows-Azure-Web-Sites-Modern-Application-Sample-Cloud-Survey&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Bidnow - Auction site running on Azure source code: &lt;a href="http://bidnow.codeplex.com/"&gt;http://bidnow.codeplex.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Layered Architecture Example &amp;ndash; Very in-depth pattern for working with hybrid and scale-out projects: &lt;a href="http://cloudsample.codeplex.com/"&gt;http://cloudsample.codeplex.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Other Code Samples: &lt;a href="https://www.windowsazure.com/en-us/develop/net/samples/"&gt;https://www.windowsazure.com/en-us/develop/net/samples/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Guidance and Patterns&lt;/h2&gt;
&lt;p&gt;General Guidance: &lt;a href="https://www.windowsazure.com/en-us/develop/net/guidance/"&gt;https://www.windowsazure.com/en-us/develop/net/guidance/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Architecture Patterns: &lt;a href="https://www.windowsazure.com/en-us/develop/net/architecture/"&gt;https://www.windowsazure.com/en-us/develop/net/architecture/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Patterns and Practices for Windows Azure: &lt;a href="http://msdn.microsoft.com/en-us/library/ff898430.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff898430.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48995" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Architecture/default.aspx">Architecture</category></item><item><title>The “Consumerization” of IT and the Dark Side of the Cloud</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/04/30/the-consumerization-of-it-and-the-dark-side-of-the-cloud.aspx</link><pubDate>Tue, 30 Apr 2013 13:33:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48936</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48936.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48936</wfw:commentRss><description>&lt;p&gt;Cloud computing is actually being largely driven by the &amp;ldquo;Consumerization of IT&amp;rdquo;. That phrase, as grammatically incorrect as it is, represents a fundamental change to the way businesses think about technology, and subsequently how the IT team provides it.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900400421.jpg"&gt;&lt;img style="max-width:550px;margin:5px;float:left;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900400421.jpg" alt="" width="139" height="139" /&gt;&lt;/a&gt;Years ago, technology was introduced by the office. No one owned a mainframe at home of course, and even in the early years of PC&amp;rsquo;s few people could afford to have them in their houses. Other than game consoles and hobbyists on small computers, most full-up &amp;ldquo;PC&amp;rsquo;s&amp;rdquo; were used for &amp;nbsp;work.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That rapidly changed, with the lowering of costs and miniaturization of technology. PC&amp;rsquo;s and then laptops became ubiquitous in the home, and of course the &amp;ldquo;smart phone&amp;rdquo; ushered in an entire generation where the technology available to the consumer outpaced what is installed at the place of work. Many of us have laptops&amp;nbsp; that are more powerful than some of the servers the company uses in some applications. &lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900439836.jpg"&gt;&lt;img style="max-width:550px;float:right;margin:5px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900439836.jpg" alt="" width="117" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;IT as a department grew up in the era of the &amp;ldquo;office-first&amp;rdquo; technology. Modern users, especially those controlling the budget, are now more &amp;ldquo;home-first&amp;rdquo; technology buyers. In extreme cases, I&amp;rsquo;ve seen IT departments relegated to maintenance of legacy systems, with new IT projects being scoped, designed and run by business teams &amp;ndash; usually on a Cloud Computing platform. The business wants to create a technical solution as quickly as they can download an app to their phone. They want the same level of speed and ease that they have on home technology in their business work.&lt;/p&gt;
&lt;p&gt;However, this can be problematic if not thought through. As with any new technology, Cloud Computing provides both benefits and concerns. It&amp;rsquo;s true that almost anyone can quickly stand up a server or deploy an application quickly with nothing more than an e-mail address and a credit card. But business teams are not always aware of areas such as security or similar concerns that the IT teams solved through many hours of careful planning. Unfortunately, it&amp;rsquo;s often a matter of &amp;ldquo;Ready, Fire, Aim.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;So what is the business (who wants the agility of a smart phone and a single-click solution) to do? What about the need for security, strategic design, integration and all of the other functions that IT needs to handle? This is where I think Windows Azure (not to be too sales-y) handles the situation well.&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;em&gt;If you&amp;rsquo;re using another cloud provider, by the way, that&amp;rsquo;s fine. The concepts here are the same.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Microsoft sells an on-premises operating system, and has done for many years. We&amp;rsquo;ve architected Windows Azure Virtual Machines, Active Directory Services, Platform-as-a-Service, and even the Hadoop and other offerings to work together &amp;ndash; and with the tools that you use to manage them today, like System Center and PowerShell.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; To the business team, I say this:&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900178800.jpg"&gt;&lt;img style="max-width:550px;vertical-align:bottom;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900178800.jpg" alt="" width="138" height="138" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Work with your IT staff on projects&lt;/strong&gt;, even if you&amp;rsquo;re designing the project and paying for it &amp;ndash; the IT professionals can keep you out of danger. Most of them have made the mistakes you're going to make, and know what to do to avoid them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plan for the future&lt;/strong&gt; &amp;ndash; &amp;ldquo;This is just a proof-of-concept&amp;rdquo; project becomes productions in a frighteningly quick period of time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Understand the cost model&lt;/strong&gt; &amp;ndash; a good architect can solve one problem in multiple ways, and cost is always a vector. The IT team can help you with this - they have the relationships with the vendors to consolidate and help you understand those costs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900422772.jpg"&gt;&lt;img style="max-width:550px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900422772.jpg" alt="" width="128" height="128" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To the IT team, I have this advice:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Don&amp;rsquo;t stand in the way of the business&lt;/strong&gt; &amp;ndash; they&amp;rsquo;ll just go around you. Work with them.&amp;nbsp; Enable the business to do what they need, when they need it, and they&amp;rsquo;ll work with you. I've seen both results when I witnessed the mainframe-to-the-PC transition, and I'm seeing it again in the PC-to-the-cloud transition. Change is inevitable - get on board or become irrelevant to the people who pay your salary.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Learn the cloud&lt;/strong&gt;. Talk to your vendor, get training, read up, ask questions. If this bothers the vendor, get a different one.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Create a self-service portal&lt;/strong&gt;. This point may be the most important one. Become your own &amp;ldquo;Cloud&amp;rdquo;, and your users won&amp;rsquo;t need to go elsewhere.&amp;nbsp; I&amp;rsquo;ll talk more about how to do this in another post.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900430906.jpg"&gt;&lt;img style="max-width:550px;float:left;margin:5px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900430906.jpg" alt="" width="156" height="156" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;In the end, the relationship between IT teams and Business is eerily similar to a marriage &amp;ndash; it&amp;rsquo;s an amazing thing, it takes a lot of work to get right, and the "Consumerization of IT" is that cute person at the end of the bar.Work together or &lt;a href="https://www.youtube.com/watch?v=CYQViYm92hg" target="_blank"&gt;one of you will soon be with somebody new&lt;/a&gt;. &lt;img style="max-width:550px;float:right;margin:5px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900185031.jpg" alt="" width="160" height="160" /&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48936" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category></item><item><title>Creating a Windows Azure Virtual Machine - the RIGHT Way</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/04/17/creating-a-windows-azure-virtual-machine-the-right-way.aspx</link><pubDate>Wed, 17 Apr 2013 13:08:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48758</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48758.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48758</wfw:commentRss><description>&lt;p&gt;Windows Azure has added Infrastructure-as-a-Service (IaaS), the ability to deploy, run and manage Virtual Machines, to its &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx" target="_blank"&gt;growing list of services&lt;/a&gt;. You can create Virtual Machines from a gallery, upload them from images you create locally on Hyper-V (that's right, you can do that, &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156055.aspx" target="_blank"&gt;even from PowerShell&lt;/a&gt;) and of course you can just jump right in and just click the "Plus" sign at the bottom of the&lt;a href="https://manage.windowsazure.com/" target="_blank"&gt; Windows Azure Management Portal&lt;/a&gt;, then hit &lt;em&gt;Compute&lt;/em&gt;, then&lt;em&gt; Virtual Machin&lt;/em&gt;e and then&lt;em&gt; Quick Create&lt;/em&gt;. Enter a few fields and you're off to the races.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1067.VM1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1067.VM1.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Of course, that works just fine - &lt;em&gt;but if you do it that way you're doing it wrong&lt;/em&gt;.&amp;nbsp; There's a better way - there are a few steps you should take before you deploy a Virtual Machine, and a few steps after. In general, the process looks like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="color:#008000;"&gt;Create an Affinity Group&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#008000;"&gt;Create a Virtual Network&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#008000;"&gt;Create your Storage Account and Container&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#008000;"&gt;Create the Virtual Machine&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#008000;"&gt;Optionally, add an Availability Set&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;em&gt;Note - some of these steps need to be done only once, others once per logical group of Virtual Machines, and so on. Hit the links below for more info on when to do what. &lt;/em&gt;&lt;/p&gt;
&lt;h1&gt;Step One: Create an Affinity Group&lt;/h1&gt;
&lt;p&gt;An &lt;em&gt;Affinity Group&lt;/em&gt; is a logical grouping that dictates how Windows Azure will lay out the resources assigned to it. When you create services, you can assign them to the Affinity Group, and the Fabric will deploy those into the same Datacenter cluster. Create one these per grouping that you want.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;More Detail: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156085.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/jj156085.aspx&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Steps to do that: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156209.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/jj156209.aspx&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h1&gt;Step Two: Create a Virtual Network&lt;/h1&gt;
&lt;p&gt;The TCP/IP address for Windows Azure Virtual Machines come from a predefined range. You can just let us pick that for you, or you can create your own &lt;em&gt;Virtual Network&lt;/em&gt; that has a user-defined range of DHCP addresses, and even place a DNS Server or connect your local network to the Windows Azure network for your Virtual Machines. When you create the Virtual Network, you can assign it to the Affinity Group. It's a way of grouping machine networks together. Create one of these per group of Virtual Machines that you want to have the same DHCP and DNS Server.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;More Detail: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156007.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/jj156007.aspx&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Steps to do that: &lt;a href="http://www.windowsazure.com/en-us/manage/services/networking/create-a-virtual-network/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/services/networking/create-a-virtual-network/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h1&gt;Step Three:&amp;nbsp; Create a Storage Account and Container&lt;/h1&gt;
&lt;p&gt;Windows Azure Virtual Machine Disks are stored in Windows Azure Storage. That's a great benefit. If you don't define a &lt;em&gt;Storage Account&lt;/em&gt; and a &lt;em&gt;Container &lt;/em&gt;first, The Windows Azure&amp;nbsp; Management Portal will do that for you as you create the machine. Defining that Storage Account and Container ahead of time allows more control, and a better naming convention than what we'll pick for you. Read more to find out the strategy you should use to group the disks. Also, some workloads such as SQL Server have a best-practice of creating a separate disk for data and backups. &lt;/p&gt;
&lt;p&gt;&lt;em&gt;More Detail: &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#what-is" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#what-is&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Steps to do that: &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#header-3" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#header-3&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h1&gt;Step Four:&amp;nbsp; Create the Virtual Machine&lt;/h1&gt;
&lt;p&gt;You have a lot of choices here, from creating the Virtual Machine quickly, from a Gallery with pre-loaded software (like SQL Server), or even choosing from Windows or Linux. You can also create the Virtual Machines by uploading an image of your own, or create them through PowerShell. With the previous steps completed, you can select those pre-defined entries as you build the machine - just select them from the drop-down menus when prompted.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;More Detail: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156003.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/jj156003.aspx&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Steps to do that:&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/" target="_blank"&gt;Create a Virtual Machine Running Windows Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/linux/tutorials/virtual-machine-from-gallery/" target="_blank"&gt;Create a Virtual Machine Running Linux&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/windows/how-to-guides/custom-create-a-vm/" target="_blank"&gt;How to Create a Custom Virtual Machine&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/windows/how-to-guides/quickly-create-a-vm/" target="_blank"&gt;How to Quickly Create a Virtual Machine&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/library/windowsazure/jj156055" target="_blank"&gt;Getting Started with Windows Azure PowerShell&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Step Five: Optionally, Add an Availability Set&lt;/h1&gt;
&lt;p&gt;When you build more than one Virtual Machine (always a good idea, and required for availability) you can load-balance the IP ports for them, and you can also specify that they are on separate "fault domains" for greater availability. This is called an &lt;em&gt;Availability Set&lt;/em&gt;. Even if you think you're only going to build one VM, you can add the Availability Set it up now and use it when you grow the systems. Create one of these per group of Virtual Machines you want to add into your High Availability strategy.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;More Detail: &lt;a href="http://www.windowsazure.com/en-us/manage/windows/common-tasks/manage-vm-availability/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/windows/common-tasks/manage-vm-availability/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Steps to do that:&amp;nbsp; &lt;a href="http://www.windowsazure.com/en-us/manage/windows/common-tasks/manage-vm-availability/#createset" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/windows/common-tasks/manage-vm-availability/#createset&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48758" width="1" height="1"&gt;</description><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/Windows+Azure/default.aspx">Windows Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/IaaS/default.aspx">IaaS</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Virtual+Machines/default.aspx">Virtual Machines</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/VM/default.aspx">VM</category></item><item><title>But what can I *do* with Windows Azure? Create (Free) Websites and Applications</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/04/09/but-what-can-i-do-with-windows-azure-create-free-websites-and-applications.aspx</link><pubDate>Tue, 09 Apr 2013 19:32:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48598</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48598.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48598</wfw:commentRss><description>&lt;p&gt;f you want to know more about Windows Azure, how it works, the components, or more about the entire platform, I&amp;rsquo;ve written about that here: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;But&amp;hellip;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Maybe you just want to cut to the chase. Windows Azure. What do I *&lt;strong&gt;do&lt;/strong&gt;* with it? How about...create some websites. Or website applications. Or both. For free. OK, ten of them are free, then you have to pay for more.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4705.Main.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4705.Main.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This week I wanted to set up a DotNetNuke Content Management System (More here if you don't know what that is: &lt;a href="http://www.dotnetnuke.com/Products/DotNetNuke-Platform.aspx" target="_blank"&gt;http://www.dotnetnuke.com/Products/DotNetNuke-Platform.aspx&lt;/a&gt;) for a charity I work with. DotNetNuke (DNN) is an open-source project, all ready to go and easy to manage place for web parts, content, blogs, whatever. With Windows Azure, you have the ability to quickly and easily create websites based on ASP or PHP code, for free. You also have the ability to use packages from a gallery, and one of those packages is DotNetNuke - both the community and the professional (pay for) use. I set this one up in 9 minutes:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2475.WS13.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2475.WS13.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It's easy to set these up. A simple website where you can deploy ASPX or PHP code is just a few clicks, but while I was setting up my site I figured I'd grab the screenshots and show them to you here.&lt;/p&gt;
&lt;p&gt;First, you need an account - you can get one of those for free: &lt;a href="https://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;https://www.windowsazure.com/en-us/pricing/free-trial/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After you sign up for the account, hit the http://windowsazure.com site and click the "Portal" button at the top right of the screen. Then click the second icon down, called "Web Sites":&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2438.WS1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2438.WS1.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Click the "Create a New Web Site" link on the screen and you're shown this menu:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3173.WS2.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3173.WS2.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you want a quick web site, just click "Create Web Site". If you want another type, click "From Gallery" and make your choice:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7506.WS3.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7506.WS3.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I selected the Community Edition of DotNetNuke. That brings up a configuration panel that looks like this:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4527.WS4.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4527.WS4.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You'll have to pick a name that isn't already in use, and in my case I told the system to create and build a SQL Azure (Windows Azure SQL Database) to hold the data. You'll also need to pick a region. After you make those selections, you'll need to enter the information for the database server and database:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1321.WS5.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1321.WS5.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Write down the database name, database administrator name and password - you'll need those later.&lt;/p&gt;
&lt;p&gt;After that, you'll see the system deploying the code, creating the database server and so on.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/8321.WS6.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/8321.WS6.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;From there, you're all set.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3323.WS7.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3323.WS7.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Whenever you want to monitor the site's health, you can just click the name here in the Portal to get more information on it:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4478.WS10.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4478.WS10.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Write down the URL of the site so you can access it in a moment. But don't move off of this screen - Windows Azure is now all set up, but DotNetNuke needs a little info when you first log in.&lt;/p&gt;
&lt;p&gt;Before you leave the Portal, click the "DB" icon, and click the name of the database server you created a moment ago (blanked out here on my graphic):&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1346.WS11.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1346.WS11.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Write down the entire server name (looks like &lt;em&gt;myserver.database.windows.net&lt;/em&gt;) and database name (looks like &lt;em&gt;mydatabasename&lt;/em&gt;) from this panel.&lt;/p&gt;
&lt;p&gt;Now open your new DotNetNuke URL in your browser, and DotNetNuke will take over. You'll be asked the name of the database server (type in the whole name with the .database.windows.net part) and database name, and the database admin name and password you wrote down earlier.&lt;/p&gt;
&lt;p&gt;You'll be asked to name the first site, and create a DotNetNuke admin name and password. Write all that down too.&lt;/p&gt;
&lt;p&gt;Now log in to your DotNetNuke site with the admin name and change the site to whatever you like! It defaults to "Awesome Cycles", but since you probably don't want that one, read up on what to do with DNN once you're here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1220.WS14.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1220.WS14.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;PS - Want to do more than just deploy a canned site? Write code! Do HTML5! BE the Web: &lt;a href="https://www.windowsazure.com/en-us/develop/net/tutorials/get-started/" target="_blank"&gt;https://www.windowsazure.com/en-us/develop/net/tutorials/get-started/&amp;nbsp;&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48598" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure+Use+Cases/default.aspx">Windows Azure Use Cases</category></item><item><title>But what can I *do* with Windows Azure? Backups</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/03/26/but-what-can-i-do-with-windows-azure-backups.aspx</link><pubDate>Tue, 26 Mar 2013 17:27:29 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48430</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48430.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48430</wfw:commentRss><description>&lt;p&gt;If you want to know more about Windows Azure, how it works, the components, or more about the entire platform, I&amp;rsquo;ve written about that here: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;But&amp;hellip;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Maybe you just want to cut to the chase. Windows Azure. What do I *&lt;strong&gt;do&lt;/strong&gt;* with it? Let&amp;rsquo;s talk about that. One of the quickest, easiest ways to use Azure is in the storage feature, as a backup target.&amp;nbsp; Can Windows Azure backup data, servers, workstations or databases? Yes. Yes it can.&amp;nbsp; Windows Azure storage is replicated three times in one datacenter (on different fault-domains) and then those three are replicated to another geographically separate (but still in the same country region) location, you get six copies of the data automatically. Your data stays in the datacenter you choose, and is replicated within a geo-politically same region. So it&amp;rsquo;s actually a great target for backups.&lt;/p&gt;
&lt;p&gt;First, you need a storage account, a container underneath that, and a Blob object to put the backups on. Here&amp;rsquo;s how you do that (for free):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Set up an account: &lt;a href="https://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;https://www.windowsazure.com/en-us/pricing/free-trial/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Create a Container: &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#create-account" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/#create-account&lt;/a&gt; (Steps 1-7 are all you need)&lt;/li&gt;
&lt;li&gt;Get the Account String: Open the Portal (as above), click on &lt;strong&gt;Storage&lt;/strong&gt;, select the account you want, and click &lt;strong&gt;Manage Keys&lt;/strong&gt; at the bottom of the screen. Copy that string to a secure place.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;OK, now that you have all that, you&amp;rsquo;re all set. In fact, you&amp;rsquo;re all set for things like Web Sites, VM&amp;rsquo;s, Code Deployment and lots of other things, but let&amp;rsquo;s focus on backups first. What are your options?&lt;/p&gt;
&lt;h1&gt;Mount a Drive, Use as Backup Target&lt;/h1&gt;
&lt;p&gt;The easiest way to send files to Windows Azure is to mount the storage as if it is a local drive. &amp;nbsp;You can use that as regular storage (I&amp;rsquo;ll talk more about this in my next post) but you can also use that as a drive letter where you can send backups. While that&amp;rsquo;s simple to implement, it isn&amp;rsquo;t always the most efficient &amp;ndash; you&amp;rsquo;re going through a layer of storage abstraction. Still and all, it&amp;rsquo;s a good choice and quick and easy to implement.&amp;nbsp; Here are some options:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Gladinet: &lt;a href="http://sqlblog.com/b/avkashchauhan/archive/2012/01/10/accessing-windows-azure-blob-storage-as-network-drive.aspx" target="_blank"&gt;http://blogs.msdn.com/b/avkashchauhan/archive/2012/01/10/accessing-windows-azure-blob-storage-as-network-drive.aspx&lt;/a&gt;, and &lt;a href="http://www.gladinet.com/" target="_blank"&gt;http://www.gladinet.com/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Cloudberry: &lt;a href="http://www.cloudberrylab.com/virtual-drive-amazon-s3-azure.aspx" target="_blank"&gt;http://www.cloudberrylab.com/virtual-drive-amazon-s3-azure.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CloudDrive: &lt;a href="http://www.clouddrive.com.au/default.html" target="_blank"&gt;http://www.clouddrive.com.au/default.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Open Source: &lt;a href="http://coderead.wordpress.com/2011/09/02/mount-azure-blob-storage-as-a-windows-drive/" target="_blank"&gt;http://coderead.wordpress.com/2011/09/02/mount-azure-blob-storage-as-a-windows-drive/&lt;/a&gt; which uses: &lt;a href="http://dokan-dev.net/en/" target="_blank"&gt;http://dokan-dev.net/en/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Backup Servers and Workstations using Third-Party Software&lt;/h1&gt;
&lt;p&gt;In addition to (and including) the providers mentioned above, some also skip the step of having to mount a drive to use as a backup target, and simply allow you to mount an agent or tool that just backs up straight to Azure.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cloudberry: &lt;a href="http://techinch.com/blog/backup-your-files-to-windows-azure-with-cloudberry" target="_blank"&gt;http://techinch.com/blog/backup-your-files-to-windows-azure-with-cloudberry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Veeam is an interesting product which focuses on backing up Virtual Machines: &lt;a href="http://blogs.technet.com/b/haroldwong/archive/2013/02/14/modern-data-protection-for-virtual-environments-using-veeam-and-windows-azure.aspx" target="_blank"&gt;http://blogs.technet.com/b/haroldwong/archive/2013/02/14/modern-data-protection-for-virtual-environments-using-veeam-and-windows-azure.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Commvault (Simpana) Lots of options here: &lt;a href="http://news.commvault.com/articles/011089_Microsoft_CommVault_Offer_Simpana_Data_Management_With_Windows_Azure_.asp" target="_blank"&gt;http://news.commvault.com/articles/011089_Microsoft_CommVault_Offer_Simpana_Data_Management_With_Windows_Azure_.asp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Evault is a backup service that use Windows Azure: &lt;a href="http://www.evault.com/products/cloud-storage-services/laptop-backup/endpoint-protection.html" target="_blank"&gt;http://www.evault.com/products/cloud-storage-services/laptop-backup/endpoint-protection.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;&amp;nbsp;Backup Servers and Workstations using Hardware&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;StorSimple &amp;ndash; a hardware appliance that can act as storage or backups, with encryption, de-duplication, compression and a Hierarchical Storage Management concept: &lt;a href="http://www.storsimple.com/total-storage/" target="_blank"&gt;http://www.storsimple.com/total-storage/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Riverbed Whitewater &amp;ndash; hardware, provides de-duplication and encryption onsite prior to backup to Windows Azure: &lt;a href="http://filipv.net/2012/08/11/using-windows-azure-cloud-storage-with-riverbed-whitewater/" target="_blank"&gt;http://filipv.net/2012/08/11/using-windows-azure-cloud-storage-with-riverbed-whitewater/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Nasuni: &lt;a href="http://www.nasuni.com/" target="_blank"&gt;http://www.nasuni.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Backup Servers and Workstations using Data Protection Manager&lt;/h1&gt;
&lt;p&gt;Data Protection Manager is a feature that is part of the System Center suite. We&amp;rsquo;ve updated that in the latest versions that will allow you to incrementally back up Servers and even Workstations and Laptops straight to Windows Azure. The beauty of this feature is that if the user is in a remote office or traveling the data will flow up to Windows Azure from wherever they are.&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;More on Windows Azure Backup Services here: &lt;a href="http://www.windowsazure.com/en-us/home/features/online-backup/" target="_blank"&gt;http://www.windowsazure.com/en-us/home/features/online-backup/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;And more on how to use DPM with Azure here: &lt;a href="http://technet.microsoft.com/en-us/library/jj728752.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/library/jj728752.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Backup SQL Server Databases&lt;/h1&gt;
&lt;p&gt;SQL Server can use the mounted-drive approach described above, and you can back up your databases&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Mount Drive (first option described above)&lt;/li&gt;
&lt;li&gt;SQL Server 2012 backup to Windows Azure: &lt;a href="http://msdn.microsoft.com/en-us/library/jj919148.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/jj919148.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;And, as part of HADR, this: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48430" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>DevOps for Windows Azure</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/03/12/devops-for-windows-azure.aspx</link><pubDate>Tue, 12 Mar 2013 15:29:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48210</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/48210.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=48210</wfw:commentRss><description>&lt;p&gt;"DevOps" (Short for&lt;strong&gt; Dev&lt;/strong&gt;eloper &lt;strong&gt;Op&lt;/strong&gt;eration&lt;strong&gt;s&lt;/strong&gt;) is one of a group of new terms such as "Cloud", "Big Data" and "Data Scientist" - words that are somewhere between marketing and tasks we've actually had around in other forms for years.However, working in a Distributed Environment (Both on and off premises)&amp;nbsp; like Windows Azure does bring a new set of tasks to the operations we currently perform in Information Technology.&lt;/p&gt;
&lt;p&gt;Before I offer some guidance here, I need to carefully define the term "DevOps" as I use it.There are other definitions that involve Application Lifecycle Management (ALM) and standard operations policies, and you're free to use those as well, but this is the definition I'll use for this post: &amp;nbsp;By DevOps I mean &lt;em&gt;those tasks involved with deploying, managing and monitoring a Windows Azure (or hybrid) project&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Another caveat: This is a non-authoritative, non-comprehensive post. I'll include only an outline of the major tasks, not a complete manual on the topic. There's enough knowledge needed on this topic for at least a whitepaper or two, and perhaps even a book, but for the moment I wanted to get some information out to ensure you have something to work from until those come along.This is primarily a list of resources for a DevOps team.&lt;/p&gt;
&lt;p&gt;With all of those caveats in mind, we'll start the discussion after the project is conceived and architected. In most cases the DevOps team (whether that is a dedicated team or simply part of what the current IT Ops team does) is also involved in the design, at least from an information point of view. There's a great overview of the entire process available in poster form here:&amp;nbsp;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=36837" target="_blank"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=36837 &lt;/a&gt;And you should also read this complete manual in preparation here: &lt;a href="http://msdn.microsoft.com/en-us/library/hh871440.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/hh871440.aspx &lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Deployment&lt;/h1&gt;
&lt;p&gt;The first task after the design of the project is deployment. The deployment method depends on the type of solution; Windows Azure has the ability to run VM's, software code, or provide services that are already created (such as Active Directory).&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;IaaS&lt;/h2&gt;
&lt;h3&gt;Deploying Virtual Machines:&lt;/h3&gt;
&lt;p&gt;Manually from the Portal:&lt;a href="http://go.microsoft.com/fwlink/?linkid=254427&amp;amp;amp;clcid=0x409" target="_blank"&gt; http://go.microsoft.com/fwlink/?linkid=254427&amp;amp;clcid=0x409&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Through Scripting: &lt;a href="https://www.windowsazure.com/en-us/downloads/?fb=en-us" target="_blank"&gt;https://www.windowsazure.com/en-us/downloads/?fb=en-us&lt;/a&gt;,&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/ee460812.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ee460812.aspx &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Copying your own VM's to Windows Azure: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg465385.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/gg465385.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Using System Center: &lt;a href="http://www.techrepublic.com/blog/datacenter/deploy-an-on-premise-vm-to-windows-azure-with-app-controller/5919" target="_blank"&gt;http://www.techrepublic.com/blog/datacenter/deploy-an-on-premise-vm-to-windows-azure-with-app-controller/5919&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Virtual Networking: http://msdn.microsoft.com/en-us/library/windowsazure/jj156075.aspx, &lt;a href="http://channel9.msdn.com/Shows/Cloud+Cover/Episode-88-Tips-and-Tricks-for-Windows-Azure-Virtual-Machines-and-Virtual-Networks"&gt;http://channel9.msdn.com/Shows/Cloud+Cover/Episode-88-Tips-and-Tricks-for-Windows-Azure-Virtual-Machines-and-Virtual-Networks, &lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;PaaS&lt;/h3&gt;
&lt;p&gt;Through Visual Studio: &lt;a href="http://www.microsoft.com/BizSpark/Azure/HowToDeployAzureApp.aspx" target="_blank"&gt;http://www.microsoft.com/BizSpark/Azure/HowToDeployAzureApp.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Using CSPack: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg432988.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/gg432988.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Through Scripting: &lt;a href="https://www.windowsazure.com/en-us/downloads/?fb=en-us" target="_blank"&gt;https://www.windowsazure.com/en-us/downloads/?fb=en-us&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee460812.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ee460812.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;SaaS&lt;/h3&gt;
&lt;p&gt;Manually from the Portal:&lt;a href="https://datamarket.azure.com/" target="_blank"&gt;https://datamarket.azure.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Through Scripting: &lt;a href="https://www.windowsazure.com/en-us/downloads/?fb=en-us" target="_blank"&gt;https://www.windowsazure.com/en-us/downloads/?fb=en-us&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Monitoring&lt;/h1&gt;
&lt;p&gt;Monitoring the system after deployment involves watching the availability and uptime of the system, along with security intrusions and tracking access through code.&lt;/p&gt;
&lt;h2&gt;Health&lt;/h2&gt;
&lt;p&gt;Using MetricsHub: &lt;a href="http://channel9.msdn.com/Shows/Cloud+Cover/Episode-102-Using-MetricsHub-to-Monitor-Your-Windows-Azure-Applications" target="_blank"&gt;http://channel9.msdn.com/Shows/Cloud+Cover/Episode-102-Using-MetricsHub-to-Monitor-Your-Windows-Azure-Applications &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Uptime and Availability through the Portal: &lt;a href="http://www.windowsazure.com/en-us/support/service-dashboard/" target="_blank"&gt;http://www.windowsazure.com/en-us/support/service-dashboard/ &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Uptime and Availability through Third Party Vendors: &lt;a href="http://www.paraleap.com/AzureWatch" target="_blank"&gt;http://www.paraleap.com/AzureWatch&lt;/a&gt;, &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Automatic Notification: &lt;a href="http://www.codeproject.com/Articles/375892/Adding-SMS-notifications-to-your-Windows-Azure-pro" target="_blank"&gt;http://www.codeproject.com/Articles/375892/Adding-SMS-notifications-to-your-Windows-Azure-pro&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Performance&lt;/h2&gt;
&lt;p&gt;Performance Counters: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh411520.aspx&amp;amp;nbsp;" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/hh411520.aspx&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Logging Diagnostics PaaS: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg433048.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/gg433048.aspx &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Internal Instrumentation for PaaS: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh674491%28v=vs.103%29.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/hh674491%28v=vs.103%29.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Third Party Performance Testing: &lt;a href="http://www.neustar.biz/enterprise/web-performance" target="_blank"&gt;http://www.neustar.biz/enterprise/web-performance&lt;/a&gt;, &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Costs&lt;/h2&gt;
&lt;p&gt;Understanding Costs: &lt;a href="http://msdn.microsoft.com/en-us/library/ff803372.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ff803372.aspx&lt;/a&gt;, &lt;a href="http://technet.microsoft.com/en-us/magazine/gg213848.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/magazine/gg213848.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Subscription Management: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg465713.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/gg465713.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;System Center: &lt;a href="http://technet.microsoft.com/en-us/library/hh221354.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/library/hh221354.aspx &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Third-Party Tools: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Example of listing your deployments: &lt;a href="http://msdn.microsoft.com/en-us/library/gg651127.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/gg651127.aspx &lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Management&lt;/h1&gt;
&lt;p&gt;Managing the deployment involves Security, Upgrades, Troubleshooting, and High-Availability/Disaster Recovery.&lt;/p&gt;
&lt;p&gt;Windows Azure Management Portal:&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/" target="_blank"&gt;http://www.windowsazure.com/en-us/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Management API's: &lt;a href="https://www.windowsazure.com/en-us/downloads/?fb=en-usandhttp://msdn.microsoft.com/en-us/library/ee460812.aspx" target="_blank"&gt;https://www.windowsazure.com/en-us/downloads/?fb=en-us and http://msdn.microsoft.com/en-us/library/ee460812.aspx&lt;/a&gt;,&amp;nbsp;&lt;a href="http://www.packtpub.com/sites/default/files/2220-chapter-7-managing-hosted-services-with-the-service-management-api.pdf?utm_source=packtpub&amp;amp;amp;utm_medium=free&amp;amp;amp;utm_campaign=pdf" target="_blank"&gt;http://www.packtpub.com/sites/default/files/2220-chapter-7-managing-hosted-services-with-the-service-management-api.pdf?utm_source=packtpub&amp;amp;utm_medium=free&amp;amp;utm_campaign=pdf &lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Security&lt;/h2&gt;
&lt;p&gt;Security Trust Center: &lt;a href="http://www.windowsazure.com/en-us/support/trust-center/" target="_blank"&gt;http://www.windowsazure.com/en-us/support/trust-center/ &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Working with Windows Azure Active Directory: &lt;a href="http://sqlblog.com/b/windowsazure/archive/2012/11/28/windows-azure-now-supports-federation-with-windows-server-active-directory.aspx" target="_blank"&gt;http://blogs.msdn.com/b/windowsazure/archive/2012/11/28/windows-azure-now-supports-federation-with-windows-server-active-directory.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Windows Azure Authentication: &lt;a href="http://sqlblog.com/controlpanel/blogs/posteditor.aspx&gt;&lt;strong&gt;&lt;/strong&gt;http:/www.asp.net/vnext/overview/fall-2012-update/windows-azure-authentication" target="_blank"&gt;&lt;strong&gt;&lt;/strong&gt;http://www.asp.net/vnext/overview/fall-2012-update/windows-azure-authentication&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Deploying a secure ASP.NET MVC application with OAuth: &lt;a href="http://sqlblog.com/b/webdev/archive/2013/03/12/deploy-a-secure-asp-net-mvc-application-with-oauth-membership-and-sql-database.aspx" target="_blank"&gt;http://blogs.msdn.com/b/webdev/archive/2013/03/12/deploy-a-secure-asp-net-mvc-application-with-oauth-membership-and-sql-database.aspx &lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Upgrades&lt;/h2&gt;
&lt;p&gt;ALM Process for PaaS: &lt;a href="http://sqlblog.com/blogs/buck_woody/archive/2011/01/25/windows-azure-use-case-agility.aspx" target="_blank"&gt;http://sqlblog.com/blogs/buck_woody/archive/2011/01/25/windows-azure-use-case-agility.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Troubleshooting&lt;/h2&gt;
&lt;p&gt;Windows Azure Support: &lt;a href="http://www.windowsazure.com/en-us/support/contact/" target="_blank"&gt;http://www.windowsazure.com/en-us/support/contact/ &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Upgrade and Fault Domains: &lt;a href="http://blog.toddysm.com/2010/04/upgrade-domains-and-fault-domains-in-windows-azure.html" target="_blank"&gt;http://blog.toddysm.com/2010/04/upgrade-domains-and-fault-domains-in-windows-azure.html &lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;HADR&lt;/h2&gt;
&lt;p&gt;Load-Balancing Endpoints for IaaS: &lt;a href="http://www.windowsazure.com/en-us/manage/windows/common-tasks/how-to-load-balance-virtual-machines/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/windows/common-tasks/how-to-load-balance-virtual-machines/ &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Extending SQL Server HADR to Windows Azure: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;HADR for IaaS: &lt;a href="http://www.visionsolutions.com/" target="_blank"&gt;http://www.visionsolutions.com/,&amp;nbsp;http://blogs.technet.com/b/windowsserver/archive/2012/03/28/microsoft-online-backup-service.aspx &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Multiple Instances for PaaS: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee871996.aspx&amp;amp;nbsp;" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee871996.aspx&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Business Continuity for Windows Azure: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh873027.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/hh873027.aspx&lt;/a&gt;,&amp;nbsp;&lt;a href="http://sqlblog.com/b/avkashchauhan/archive/2011/10/14/windows-azure-vm-downtime-due-to-host-and-guest-os-update-and-how-to-manage-it-in-multi-instance-windows-azure-application.aspx" target="_blank"&gt;http://blogs.msdn.com/b/avkashchauhan/archive/2011/10/14/windows-azure-vm-downtime-due-to-host-and-guest-os-update-and-how-to-manage-it-in-multi-instance-windows-azure-application.aspx &lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Disposition&lt;/h1&gt;
&lt;p&gt;When the project is complete, you'll need to remove the VM's in IaaS, or data and code from PaaS and shut down the deployment. Prior to doing that, you should:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Copy all data from the deployment to a local repository&lt;/li&gt;
&lt;li&gt;Document the process&lt;/li&gt;
&lt;li&gt;Notify Microsoft of your intent to stop the project to work with your representative on billing matters&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The primary tool for disposal is the Windows Azure Portal.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=48210" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Security/default.aspx">Security</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Management/default.aspx">Management</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/DevOps/default.aspx">DevOps</category></item><item><title>Link List: Becoming a Data Professional</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/02/21/link-list-becoming-a-data-professional.aspx</link><pubDate>Thu, 21 Feb 2013 15:02:57 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47850</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47850.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47850</wfw:commentRss><description>&lt;p&gt;Whenever I present at a conference, I try and make sure to include references to the topics I discuss in the session. That means you either need a lot of handouts, or I need to wait for you to take lots of notes. While note-taking is essential, writing out web links (especially long ones) is not a good use of your time. So I post the references here on my blog, with the tag &amp;ldquo;Link Lists&amp;rdquo; and you can simply write down one small URL to get to them all.&lt;/p&gt;
&lt;p&gt;This topic deals with the skills needed to become a data professional. I&amp;rsquo;ll include references here on the role of a data professional, and also some places where you can drill in further for the skills that you need to fill those roles. I&amp;rsquo;ll try and keep this list updated, and if you have some information on any of these topics, feel free to leave that as a comment below.&amp;nbsp; This list isn&amp;rsquo;t meant to be an exhaustive web search of all the technologies and concepts I mentioned, but it does cover the references I cited in the talk.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Data Professional Roles&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=299"&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=299&lt;/a&gt; &amp;ndash; The Data Professional&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=247"&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=247&lt;/a&gt; - Becoming a DBA&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=132"&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=132&lt;/a&gt; &amp;ndash; DBA Levels&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=131"&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=131&lt;/a&gt; &amp;ndash; Certification&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=356"&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=356&lt;/a&gt; &amp;ndash; SQL Server Development Plan&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/opinion/opinion-pieces/learn-where-you-are/"&gt;http://www.simple-talk.com/opinion/opinion-pieces/learn-where-you-are/&lt;/a&gt; - Learn where you are&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Groups and Associations:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/opinion/opinion-pieces/the-value-of-professional-associations/"&gt;http://www.simple-talk.com/opinion/opinion-pieces/the-value-of-professional-associations/&lt;/a&gt; - The value of professional associations&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sqlpass.org/"&gt;http://www.sqlpass.org/&lt;/a&gt; - The Professional Organization for SQL Server&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sigkdd.org/"&gt;http://www.sigkdd.org/&lt;/a&gt; - Association for Computing Machinery (ACM) SIG for Knowledge Discovery from data&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sigmod.org/"&gt;http://www.sigmod.org/&lt;/a&gt; - Association for Computing Machinery (ACM) SIG for Data Management&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Technology Futures&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/sql/database-administration/big-data-is-just-a-fad/"&gt;http://www.simple-talk.com/sql/database-administration/big-data-is-just-a-fad/&lt;/a&gt; - &amp;ldquo;Big Data&amp;rdquo; is just a fad&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.faithpopcorn.com/"&gt;http://www.faithpopcorn.com/&lt;/a&gt; - Demographic trends and predictions (Click &amp;ldquo;Tredbank&amp;rdquo; when you open the link)&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.the451group.com/information_management/2013/02/04/updated-database-lanscape-map-february-2013/"&gt;http://blogs.the451group.com/information_management/2013/02/04/updated-database-lanscape-map-february-2013/&lt;/a&gt; - Database Landscape Map&lt;/p&gt;
&lt;p&gt;&lt;a href="http://pragprog.com/book/rwdata/seven-databases-in-seven-weeks"&gt;http://pragprog.com/book/rwdata/seven-databases-in-seven-weeks&lt;/a&gt; - Seven Databases in Seven Weeks&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Science&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://radar.oreilly.com/2010/06/what-is-data-science.html"&gt;http://radar.oreilly.com/2010/06/what-is-data-science.html&lt;/a&gt; - What is Data Science?&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.ocdqblog.com/home/demystifying-data-science.html"&gt;http://www.ocdqblog.com/home/demystifying-data-science.html&lt;/a&gt; - Demystifying Data Science&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/sql/database-administration/setting-up-a-data-science-laboratory/"&gt;http://www.simple-talk.com/sql/database-administration/setting-up-a-data-science-laboratory/&lt;/a&gt; - Setting up a data science laboratory system&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/sql/database-administration/mission-critical-database-design/"&gt;http://www.simple-talk.com/sql/database-administration/mission-critical-database-design/&lt;/a&gt; - Data Design Checklist&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Reading Lists&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.goodreads.com/group/bookshelf/81991-data-science"&gt;http://www.goodreads.com/group/bookshelf/81991-data-science&lt;/a&gt; - Goodreads Data Science list&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Special Interest Groups&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.linkedin.com/groups/Data-Science-Central-4298680"&gt;http://www.linkedin.com/groups/Data-Science-Central-4298680&lt;/a&gt; - LinkedIn Data Science Group&lt;/p&gt;
&lt;p&gt;&lt;a href="http://amstat.org/"&gt;http://amstat.org/&lt;/a&gt; - American Statistical Society&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rss.org.uk/site/cms/contentChapterView.asp?chapter=1"&gt;http://www.rss.org.uk/site/cms/contentChapterView.asp?chapter=1&lt;/a&gt; &amp;ndash; The Royal Statistical Society&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47850" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Career/default.aspx">Career</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category></item><item><title>How Does the Cloud Change a  Developer's Job?</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/02/12/how-does-the-cloud-change-a-developer-s-job.aspx</link><pubDate>Tue, 12 Feb 2013 16:26:51 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47670</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47670.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47670</wfw:commentRss><description>&lt;p&gt;I've recently &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/22/how-does-the-cloud-change-a-systems-architect-s-job.aspx" target="_blank"&gt;posted a blog on how cloud computing would change the Systems Architect&amp;rsquo;s role in an organization&lt;/a&gt;, another on &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/29/how-does-the-cloud-change-a-database-administrator-s-job.aspx" target="_blank"&gt;how the cloud changes a Database Administrator's job&lt;/a&gt;, and the &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/02/05/how-does-the-cloud-change-a-systems-administrator-s-job.aspx" target="_blank"&gt;last post dealt with the &lt;/a&gt;&lt;a&gt;Systems Administrator&lt;/a&gt;. In this post I'll cover the changes facing the Software Developer when using the cloud. &lt;/p&gt;
&lt;p&gt;The software developer role was the earliest adopter of cloud computing. This makes perfect sense, because the software developer has always used computing "as a service" - they (most often) don't buy and configure servers, platforms and the like, they write code that runs on those platforms. And there's probably not a simpler definition of a software developer to be found, but as with all simple statements, you lose fidelity and detail.&amp;nbsp; I'll offer a more complete list in a moment.&lt;/p&gt;
&lt;p&gt;Because the software developer's process involves designing, testing and writing code locally and then migrating it to a production environment, all of the paradigms in cloud computing - &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx" target="_blank"&gt;from IaaS to PaaS to SaaS&lt;/a&gt; - come naturally. &lt;/p&gt;
&lt;h1&gt;The Software Developer's Role&lt;/h1&gt;
&lt;p&gt;The software developer has evolved since the earliest days of programming.The software developer not only "writes code"&amp;nbsp; - there are far more tasks involved in modern systems development:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Assisting the Business Role(s) in developing software specifications&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning software system components and modules&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Designing system components&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Working in teams writing classes, modules, interfaces and software endpoints&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Designing data layouts, architectures, access and other data controls&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Designing and implementing security, either programmatic, declarative, or referential&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Mixing and matching various languages, scripting and other constructs within the system&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Designing and implementing user and account security rights and restrictions&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Designing various software code tests - unit, functional, fuzz, integration, regression, performance and others&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Deploying systems &lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Managing and maintaining code updates and changes&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Like most of the previous roles, those tasks also unpacks into a larger set of tasks, and no single developer has exactly that same list. And like the DBA, the role is often more, or less of that list based on where the developer works. Smaller companies may include the development platform in the duties so that a developer is also a systems administrator. In larger organizations I've seen developers that specialized on User Interfaces, Engine Components, Data Controls or other specific areas.&lt;/p&gt;
&lt;h1&gt;How the Cloud Changes Things&lt;/h1&gt;
&lt;p&gt;The software developer role obviously has the same concerns and impacts of "the cloud" as the Systems Architect. They need to educate themselves on the options within this new option (&lt;span style="color:#0000ff;"&gt;Knowledge&lt;/span&gt;), try a few test solutions out (&lt;span style="color:#0000ff;"&gt;Experience&lt;/span&gt;) and of course work with others on various parts of the implementation (&lt;span style="color:#0000ff;"&gt;Coordination&lt;/span&gt;).&lt;/p&gt;
&lt;p&gt;The big changes for a developer include three major areas: Hybrid Software Design, Security, and Distributed Computing.&lt;/p&gt;
&lt;h2&gt;Hybrid Software Design&lt;/h2&gt;
&lt;p&gt;After the PC revolution, software developers designed systems that ran primarily on a single computer. From there the industry moved to "client/server", where most of the code still lived on the user's workstation, and various levels of state (such as the data layer) moved to a server over fast connected lines. After than followed the Internet phase, which had less to do with HTML coding than it did with state-less architectures. While no architecture is truly stateless, there are ways of allowing the client to be in a different state than the server of the application at any one time - this is the way the Web works.&lt;/p&gt;
&lt;p&gt;Even so, the developer often simply moved one the primary layers (such as Model, View or Controller) to the server, using the User Interface merely as the View or Presentation layer. While technically stateless, this doesn't require a great deal of architecture change - there are various software modules that run on a server, and perhaps that connects to a remote data server. In the end, it's still a single paradigm.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;We now have the ability to run IaaS (hardware abstraction), PaaS (hardware, operating system and runtime abstraction) and SaaS (everything abstracted, API calls only) in a single environment such as Windows Azure. A single application might have a Web-based Interface Server with federated processes&amp;nbsp; (using a PaaS set of roles), a database service (using a SaaS provider such as Windows Azure SQL Database), a specialized process in Linux (using an IaaS role in Windows Azure) and a translator API (from the Windows Azure Marketplace). This example involves only one vendor - Microsoft. I've seen applications that use multiple vendors in this same way.&lt;/p&gt;
&lt;p&gt;Thinking this way opens up a great deal of flexibility - and complexity. Complexity isn't evil; it's how complicated things get done many times. The modern developer&amp;nbsp; needs to understand how to build hybrid software architectures. &lt;/p&gt;
&lt;p style="color:#993300;"&gt;&lt;span style="color:#993300;"&gt;&lt;em&gt;&lt;span style="color:#0000ff;"&gt;Resources&lt;/span&gt;:&lt;/em&gt;&lt;/span&gt; Hybrid Architectures with step-by-step instructions and examples:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/hh871440.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/hh871440.aspx &lt;/a&gt; and &lt;span style="color:#993300;"&gt;Windows Azure Hybrid Systems&lt;/span&gt;:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/hh871440.aspx?AnnouncementFeed&amp;amp;nbsp;" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/hh871440.aspx?AnnouncementFeed&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Security&lt;/h2&gt;
&lt;p&gt;Having a single security boundary, such as "everyone who works in my company", is a relatively simple problem to solve. Normally the System Administrators configure and control a security provider, such as Active Directory, and developers can access that security layer programmatically.&amp;nbsp; That allows for good separation of duties and role-based control.&lt;/p&gt;
&lt;p&gt;In modern applications, clients, managers, and users both internal and external need various levels of access to the same objects, code and data. A client should be able to enter an order, a store should be able to accept the order, the credit-card company should be able to check the order and authorize payment, and the managers should be able to report on the order or change it if needed. Using role-based security across multiple domains would be impossible to maintain.&lt;/p&gt;
&lt;p&gt;Enter "claims-based" authentication. In this paradigm, the user logs in with whatever security they use - corporate or other Active Directory, Facebook, Google, whatever. The application (using Windows Identity Foundation or WIF) can accept a "claim" from that provider, and the developer can match whatever parts of that claim they wish to the objects, code and data. And example might be useful.&lt;/p&gt;
&lt;p&gt;Buck logs in to his corporate Active Directory (AD), and attempts to use a program based in Windows Azure. Windows Azure rejects the login silently, and is configured to check with Buck's AD. Buck's AD says "yes, I know Buck, and he has been granted the following claims: "partner", "manager", "approver". The developer does not need to know about Buck's AD, Buck, his login, or anything else. She simply codes the proper data access to allow "approver" to approve a sale.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This allows a lot of control, at a very fine level, without having to get into the details of each security provider. .&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;&lt;em&gt;&lt;span style="color:#0000ff;"&gt;Resources&lt;/span&gt;:&lt;/em&gt;&lt;/span&gt; &lt;span style="color:#993300;"&gt;Overview of using claims-based Azure Security&lt;/span&gt;: &lt;a href="http://adnanboz.wordpress.com/2011/02/06/claims-based-access-and-windows-azure/" target="_blank"&gt;http://adnanboz.wordpress.com/2011/02/06/claims-based-access-and-windows-azure/ &lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Distributed Computing&lt;/h2&gt;
&lt;p&gt;Is there a difference between stateless computing, or even the hybrid programming I mentioned earlier, and "Distributed Computing"? Yes - the primary difference is latency. Even stateless code can have too small a tolerance for latency.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Dealing with slow connectivity, or breaks in connections has many impacts. One method of dealing with this is to locate data and computing of that data as closely as possible, even if this means relaxing consistency or duplicating data. Another method is to go back to a great paradigm from the past that is possible underused today is a Service Oriented Architecture. The Windows Azure Service Bus is possibly one of the fastest and easiest way to adopt cloud computing without completely rearchitecting your application. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;References&lt;/em&gt;&lt;/span&gt;: &lt;span style="color:#993300;"&gt;Great breakdown of the thought process around a distributed architecture:&lt;/span&gt; &lt;a href="http://msdn.microsoft.com/en-us/magazine/jj553517.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/magazine/jj553517.aspx &lt;/a&gt;and &lt;span style="color:#993300;"&gt;using a Windows Azure Relay Service&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-relay/" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-relay/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47670" 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/Career/default.aspx">Career</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/Data/default.aspx">Data</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/Windows+Azure/default.aspx">Windows Azure</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/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category></item><item><title>How Does the Cloud Change a  Systems Administrator's Job?</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/02/05/how-does-the-cloud-change-a-systems-administrator-s-job.aspx</link><pubDate>Tue, 05 Feb 2013 15:46:02 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47492</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47492.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47492</wfw:commentRss><description>&lt;p&gt;I recently&lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/22/how-does-the-cloud-change-a-systems-architect-s-job.aspx" target="_blank"&gt; posted a blog entry on how cloud computing would change the Systems Architect&amp;rsquo;s role in an organization&lt;/a&gt;, and another on &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/29/how-does-the-cloud-change-a-database-administrator-s-job.aspx" target="_blank"&gt;how the cloud changes a database administrator's job&lt;/a&gt;. This time I'll cover a few of the changes the cloud brings for the &lt;a href="http://en.wikipedia.org/wiki/Systems_administrator" target="_blank"&gt;Systems Administrator&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The systems administrator shares some similarity with the database administrator, in that it's rare to find a single job description that fits all people in that role. There are some basic similarities among various organizations, so I'll use those as a starting point.&lt;/p&gt;
&lt;h1&gt;The Systems Administrator Role&lt;/h1&gt;
&lt;p&gt;The systems administrator role is perhaps one of the earliest in technology, at least as far as the implementation of a system goes. In the earliest days of computing, electronic technical professionals built prototype computers, and newly minted "programmers" wrote logical instructions for these systems. In time, the systems administration role owned the installation, configuration, operation and tuning of these systems once they went into production and use on a larger scale. A few of the tasks associated with the role are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, installing and configuring systems&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, designing and creating storage, networking and other system components&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, designing and implementing High Availability and Disaster Recovery for each system&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Maintaining and monitoring systems&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Implementing performance tuning systems based on monitoring&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Re-balancing workloads across servers based on monitoring&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Securing systems, networks and individual computers based on requirements and implementation&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, implementing and controlling user and account security rights and restrictions&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Like the DBA, that&amp;rsquo;s just a short list, and each of those tasks also unpacks into a larger set of tasks. And like the DBA, the role is often more, or less of that list based on where the system administrator works. In smaller companies I've been a "systems administrator" that also ran the database and mail servers, web systems, front-line end-user support and made the coffee. In larger organization I was only able to spend the day on one or two parts of that list, since there were so many systems and they interacted with so many other systems.&lt;/p&gt;
&lt;p&gt;Systems administrators often deal with multiple operating systems. In one company where I was a system administrator, I worked with no less than six operating systems from mainframes to PC servers, two of them highly specialized to the hardware.&lt;/p&gt;
&lt;h1&gt;How the Cloud Changes Things&lt;/h1&gt;
&lt;p&gt;The systems administrator has the same concerns and impacts of "the cloud" as the DBA and the Systems Architect. They need to educate themselves on the options within this new option (&lt;span style="color:#0000ff;"&gt;Knowledge&lt;/span&gt;), try a few test solutions out (&lt;span style="color:#0000ff;"&gt;Experience&lt;/span&gt;) and of course work with others on various parts of the implementation (&lt;span style="color:#0000ff;"&gt;Coordination&lt;/span&gt;).&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/windows/fundamentals/intro-to-windows-azure/#components" target="_blank"&gt;I've mentioned the three big buckets of cloud computing&lt;/a&gt;, dealing with Virtual Machines (IaaS) writing code (PaaS) and using software that&amp;rsquo;s already written and being delivered via an Application Programming Interface (API).&amp;nbsp; In my experience, the systems administrator role normally tackles the first "bucket" most often - IaaS, which has at its base the technology of virtualization.&lt;/p&gt;
&lt;h2&gt;Virtualization&lt;/h2&gt;
&lt;p&gt;One of the first areas the systems administrator is involved with "the cloud" is in the &lt;a href="http://en.wikipedia.org/wiki/Virtualization" target="_blank"&gt;area of virtualization&lt;/a&gt;. This technology isn't new - in fact, I worked on Virtual Machines (VM's) way back in my mainframe days. It's the process of using software to emulate hardware - which has implications far beyond that simple sentence.&lt;/p&gt;
&lt;p&gt;Virtualization is normally a standard on-premises process. When you take Virtual Machines and host them in another location, this is called Co-Location, or CoLo. Personally, I don't define either of these activities as "Cloud" computing - it's simply virtualization. Infrastructure as a Service (IaaS) normally involves several more components, at the very least being able to set up the systems (provision) and deploy them in a standard, automated way. It also involves (at a minimum) the ability to monitor, move and alter the systems using a prescribed methodology. There are other parts of IaaS to be sure, but this level above simply scripting installations or virtualizing a machine is where the system administrator becomes involved in this new "cloud computing" paradigm.&lt;/p&gt;
&lt;p&gt;There are multiple VM technologies available, from the hypervisor that is built-in to the Windows operating system (Hyper-V) to third-party alternatives such as VMWare. The choice of cloud provider often dictates the selection of hypervisor. Windows Azure uses Hyper-V, and allows you to move systems from the cloud to the desktop and back again. Other providers use VMWare, or a proprietary format. Some allow you to push or pull images from the cloud service, others do not. The systems administrator must educate themselves on the business need and then select the cloud provider that best fits the requirements for a workload. It's also common to use several cloud providers within a single company.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;&lt;em&gt;&lt;span style="color:#0000ff;"&gt;Resources&lt;/span&gt;:&lt;/em&gt;&lt;/span&gt; &lt;span style="color:#993300;"&gt;Windows Azure Virtual Machines&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/"&gt;http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/&lt;/a&gt;&amp;nbsp;and&lt;span style="color:#993300;"&gt; System Center&lt;/span&gt;: &lt;a href="http://blogs.technet.com/b/server-cloud/archive/2011/12/01/managing-and-monitoring-windows-azure-applications-with-system-center-2012.aspx" target="_blank"&gt;http://blogs.technet.com/b/server-cloud/archive/2011/12/01/managing-and-monitoring-windows-azure-applications-with-system-center-2012.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Cloud Computing Architecture - Private, Public and Hybrid&lt;/h2&gt;
&lt;p&gt;It's important to note that IaaS can be on-premises, at another facility, or both. The first is called "private cloud", the second "public cloud", and the third "hybrid cloud". Yes, these are marketing terms, but they are useful in describing where the decisions are for deploying a system. If data security is paramount, then private cloud may be the right choice for a given workload. If agility or cost is an issue, public cloud may be the right answer for another workload. And in many cases - perhaps most - using both architectures is the right way to split the workload.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The key is to understand the workload well. In the past the system administrator needed to know the component requirements, such as how much memory, CPU, network and storage a workload needed. In cloud computing, these are also concerns, but you need to add in the questions of cost, business use, location of users, security and other vectors. These concerns bring the systems administrator closer to the business and its goals.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;&lt;em&gt;&lt;span style="color:#0000ff;"&gt;Resources&lt;/span&gt;:&lt;/em&gt;&lt;/span&gt; &lt;span style="color:#993300;"&gt;Windows Azure Hybrid Systems&lt;/span&gt;:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/hh871440.aspx?AnnouncementFeed&amp;amp;nbsp;" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/hh871440.aspx?AnnouncementFeed&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;DevOps&lt;/h2&gt;
&lt;p&gt;One new term introduced into cloud computing is "DevOps" - short for Developer Operations. Not everyone agrees that this is even a real "thing" - that it's a made-up term by cloud vendors. Regardless, there is a new set of tasks that the cloud brings that may sit within the purview of the system administrator.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Basically it involves the administration needed at the PaaS or SaaS level. The IaaS function of cloud computing holds most of the same characteristics as an on-premises system, defined the in the first list I mentioned above. But when the organization uses Platform as a Service, the operating system, much of the security, scale and other components of infrastructure are abstracted into the platform, and are often even controlled by the developer.&lt;/p&gt;
&lt;p&gt;But once the application "goes live", there are a host of billing, controlling, scaling and other security questions that developers aren't equipped to handle. Who takes care of those? As companies are finding out, they need to appoint someone to cover these overlapped areas between developers and administrators.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;References&lt;/em&gt;&lt;/span&gt;: &lt;span style="color:#993300;"&gt;How DevOps brings order:&lt;/span&gt; &lt;a href="http://searchcloudcomputing.techtarget.com/feature/How-DevOps-brings-order-to-a-cloud-oriented-world" target="_blank"&gt;http://searchcloudcomputing.techtarget.com/feature/How-DevOps-brings-order-to-a-cloud-oriented-world&lt;/a&gt; and Managing Windows Azure: &lt;a href="http://www.windowsazure.com/en-us/manage/overview/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/overview/ &lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47492" 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/Career/default.aspx">Career</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/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</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></item><item><title>How Does the Cloud Change a Database Administrator’s Job?</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/01/29/how-does-the-cloud-change-a-database-administrator-s-job.aspx</link><pubDate>Tue, 29 Jan 2013 15:08:32 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47385</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47385.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47385</wfw:commentRss><description>&lt;p&gt;I recently&lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/22/how-does-the-cloud-change-a-systems-architect-s-job.aspx" target="_blank"&gt; posted a blog entry on how cloud computing would change the Systems Architect&amp;rsquo;s role in an organization&lt;/a&gt;. In a way, the Systems Architect has the easiest transition to a new way of using computing technologies. In fact, that&amp;rsquo;s actually part of the job description.&amp;nbsp;I mentioned that a Systems Architect has three primary vectors to think about for cloud computing, as it applies to what they should do:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;Knowledge - Which options are available to solve problems, and what are their strengths and weaknesses.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;Experience - What has the System Architect seen and worked with in the past.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;Coordination - A system design is based on multiple factors, and one person can't make all the choices. There will need to be others involved at every level of the solution, and the Systems Architect will need to know who those people are and how to work with them.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;The Database Administrator Role&lt;/h1&gt;
&lt;p&gt;But a Database Administrator (DBA) is probably one of the harder roles to think about when it comes to cloud computing. First, let&amp;rsquo;s define what a Database Administrator usually thinks about as part of their job:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, Installing and Configuring a Database Platform&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, designing and creating databases&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Planning, designing and implementing High Availability and Disaster Recovery for each database (HADR) based on requirements for its workload&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Maintaining and monitoring the database platform&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Implementing performance tuning on the databases based on monitoring&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Re-balancing workloads across database servers based on monitoring&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#993300;"&gt;Securing databases platforms and individual databases based on requirements and implementation&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That&amp;rsquo;s just a short list, and each of those unpacks into a larger set of tasks.&lt;/p&gt;
&lt;p&gt;The issue is that&lt;em&gt; I&amp;rsquo;ve never actually met a DBA that does all of those things&lt;/em&gt;, or &lt;strong&gt;just&lt;/strong&gt; all of those things. Many times they do much more, sometimes the systems are so large they specialize on just a few of them.&lt;/p&gt;
&lt;p&gt;And as you can see from the list, some of these areas are shared with other roles. For instance, in some shops, the DBA plans, purchases, sets up and configures the hardware for database servers. In others that&amp;rsquo;s done&lt;br /&gt;by the Infrastructure Team. In some shops the DBA designs databases from software requirements, and in others the developers do that &amp;ndash; or perhaps it&amp;rsquo;s done as a joint effort. The same holds true for database code &amp;ndash; sometimes the&lt;br /&gt;DBA does it, other times the developer, and still others it&amp;rsquo;s a shared task.&lt;/p&gt;
&lt;p&gt;In fact, you could argue that there are few other roles in IT where the roles are so intermixed. Also, the DBA works with software the company develops, and software the company buys. They work with hardware, networking, security and software. There are certain aspects of design and tuning that are outside the purview of some of those things, and inside the others.&lt;/p&gt;
&lt;p&gt;With all of these variables, simply telling a DBA that they should &amp;ldquo;use the cloud&amp;rdquo; is not the proper approach.&lt;/p&gt;
&lt;h1&gt;How the Cloud Changes Things&lt;/h1&gt;
&lt;p&gt;To be sure, the DBA has the same vectors as the Systems Architect. They need to educate themselves on the options within this new option (&lt;span style="color:#0000ff;"&gt;Knowledge&lt;/span&gt;), try a few test solutions out (&lt;span style="color:#0000ff;"&gt;Experience&lt;/span&gt;) and of course work with others on various parts of the implementation (&lt;span style="color:#0000ff;"&gt;Coordination&lt;/span&gt;). But it goes beyond that.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/manage/windows/fundamentals/intro-to-windows-azure/#components" target="_blank"&gt;There are three big buckets of cloud computing&lt;/a&gt;, dealing with simply using a Virtual Machine (IaaS) to writing code without worrying about the virtualization or even the operating system (PaaS) and using software that&amp;rsquo;s already written and being delivered via an Application Programming Interface (API). Each of these has so many options and configurations that it&amp;rsquo;s often better to think about the problem you&amp;rsquo;re trying to solve rather than all of the technology within a given area - although some of that is certainly necessary anyway.&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Database Platform Architecture&lt;/h2&gt;
&lt;p&gt;I&amp;rsquo;ll start with when the DBA should even consider cloud computing for a solution. Once again, it&amp;rsquo;s not an &amp;ldquo;all or nothing&amp;rdquo; paradigm, where you either run something on premises or in the cloud &amp;ndash; it&amp;rsquo;s often a matter of selecting the right components to solve a problem.&amp;nbsp; In my design sessions with DBA&amp;rsquo;s I break these down into three big areas where they might want to consider the cloud &amp;ndash;and then we talk about how to implement each one:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;Audiences&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;HADR&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;Data Services&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Audiences&lt;/h3&gt;
&lt;p&gt;If the users of your database systems all sit in the same facility, you own the servers and networking, and the application servers are separate from the database server, it doesn&amp;rsquo;t usually make sense to take that database workload and place it on Windows Azure &amp;ndash; or any other cloud provider. The latency alone prevents a satisfactory performance profile, and in some cases won&amp;rsquo;t work at all. It doesn&amp;rsquo;t matter if the cloud solution is cheaper or easier &amp;ndash; if you&amp;rsquo;re moving a lot of data every second between an on-premises system and the cloud it won&amp;rsquo;t work well.&lt;/p&gt;
&lt;p&gt;However &amp;ndash; if your users are in multiple locations, especially globally, or you have a mix of company and external customer users, it might make sense to evaluate a shared data location. You still need to consider the implications of how much data the application server pushes back and forth, but you may be able to locate both the application server and SQL Server in an IaaS role. Assuming the data sent to the final client will work across public Internet channels, there may be a fit. There are security implications, but unless you have point-to-point connections for your current solution you&amp;rsquo;re faced with the same security questions on both options.&lt;/p&gt;
&lt;p&gt;Your audience might also be developers looking for a way to quickly spin up a server and then turn it down when they are done, paying for the time and not the hardware or licenses. This is also a prime case for evaluating IaaS. And there are others that you'll find in your own organization as you work through the requirements you have.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Resources: Windows Azure Virtual Machines: &lt;a href="http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/"&gt;http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;span style="color:#993300;"&gt;Windows Azure SQL Server Virtual Machines&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/manage/windows/common-tasks/install-sql-server/"&gt;http://www.windowsazure.com/en-us/manage/windows/common-tasks/install-sql-server/&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;HADR&lt;/h3&gt;
&lt;p&gt;The next possible place to consider using cloud computing with SQL Server is as a part of your High Availability and Disaster Recovery plans. In fact, this is the most common use I see for cloud computing and the Database Administrator. The key is the Recovery Point Objective (RPO) and Recovery Time Objective (RTO). Based on each application&amp;rsquo;s requirements, you may find that using Windows Azure or even supplementing your current plan is&lt;br /&gt;the right place to evaluate options. I&amp;rsquo;ve covered this use-case in more detail in another article.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References: SQL Server High Availability and Disaster Recovery options with Windows Azure&lt;/span&gt;: &lt;a href="http://sqlblog.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx"&gt;http://blogs.msdn.com/b/buckwoody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Data Services&lt;/h3&gt;
&lt;p&gt;Windows Azure, along with other cloud providers, offers another way to design, create and consume data. In this use-case, however, the tasks DBA&amp;rsquo;s normally perform for sizing, ordering and configuring a system don&amp;rsquo;t apply.&lt;/p&gt;
&lt;p&gt;With Windows Azure SQL Databases (the artist formerly known as SQL Azure), you can simply create a database and begin using it. There are places where this fits and others where it doesn&amp;rsquo;t, and there are differences, limitations and enhancements, so it isn&amp;rsquo;t meant as replacement for what you could do with &amp;ldquo;Full-up&amp;rdquo; SQL Server on a Windows Azure Virtual Machine or an on-premises Instance. If a developer needs an Relational Database Management&lt;br /&gt;(RDBMS) data store for a web-based application, then this might be a perfect fit.&lt;/p&gt;
&lt;p&gt;But there is more to data services than Windows Azure SQL Databases. Windows Azure also offers MySQL as a service, RIAK and MongoDB (among others) and even Hadoop for larger distributed data sets. In addition you can use Windows Azure Reporting Services, and also tap into datasets and data functions in the Windows Azure Marketplace.&lt;/p&gt;
&lt;p&gt;The key for the DBA with this option is that you &lt;em&gt;will&lt;/em&gt; have to do a little investigation this time, and potentially without a specific workload in mind this time. I think that&amp;rsquo;s acceptable thing to ask &amp;ndash; DBA&amp;rsquo;s constantly keep up with data processing trends, and most will consider different ways to solve a problem.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;Windows Azure SQL Databases&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/home/features/data-management/" target="_blank"&gt;http://www.windowsazure.com/en-us/home/features/data-management/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;Windows Azure Reporting Services&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/manage/services/other/sql-reporting/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/services/other/sql-reporting/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;HDInsight Service (Hadoop on Azure): &lt;/span&gt;&lt;a href="https://www.hadooponazure.com/" target="_blank"&gt;https://www.hadooponazure.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;MongoDB Offerings on Windows Azure&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/manage/linux/common-tasks/mongodb-on-a-linux-vm/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/linux/common-tasks/mongodb-on-a-linux-vm/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;Windows Azure Marketplace&lt;/span&gt;: &lt;a href="http://www.windowsazure.com/en-us/store/overview/" target="_blank"&gt;http://www.windowsazure.com/en-us/store/overview/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47385" width="1" height="1"&gt;</description><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/Design/default.aspx">Design</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/Career/default.aspx">Career</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/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data/default.aspx">Data</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/Windows+Azure/default.aspx">Windows Azure</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/Application+Architecture/default.aspx">Application Architecture</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/Database+Administration/default.aspx">Database Administration</category></item><item><title>How Does the Cloud Change a  Systems Architect’s Job?</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/01/22/how-does-the-cloud-change-a-systems-architect-s-job.aspx</link><pubDate>Tue, 22 Jan 2013 15:43:59 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47243</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47243.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47243</wfw:commentRss><description>&lt;p&gt;I know - I said I didn't like the "cloud" term, but my better-phrased "Distributed Systems" moniker just never took off like I had hoped. So I'll stick with the "c" word for now, at least until the search engines catch up with my more accurate term.&lt;/p&gt;
&lt;p&gt;I thought I might spend a little time on how the cloud affects the way we work - from Systems Architects to Database Administrators and Developers, and Systems Administrators - a group often referred to as "IT Pro's". But each role within these groups have different aspects when using cloud computing. In this post we'll take a look at the role of the Systems Architect, and in the posts that follow I'll talk more about the other roles in the IT Pro area.&lt;/p&gt;
&lt;h1&gt;The Systems Architect Role&lt;/h1&gt;
&lt;p&gt;What does a "Systems Architect" do? Like most IT roles, it depends on the company or organization where they work. &lt;a href="http://en.wikipedia.org/wiki/Systems_architect" target="_blank"&gt;In fact, the term isn't even specific to technology&lt;/a&gt;, but I'll use it in that context here. In general, a Systems Architect takes the requirements for a given system, and assembles the relevant technology areas that best fulfill those requirements. That's a single-sentence explanation, and needs further unpacking.&lt;/p&gt;
&lt;p&gt;As an example, a Systems Architect at a medical firm&amp;nbsp;is presented with a set of requirements for tracking a patient through the entire care cycle. The Systems Architect first looks at all of the requirements for the data that needs to be collected based on business, financial, regulations, and other requirements, and then how that data needs to flow from one system to another. They check the security requirements, performance, location and other aspects of the system. They then check to see which options are available for processing that data, and which parts they should "build or buy".&lt;/p&gt;
&lt;p&gt;For instance, the requirements might be so specific that only custom code is the proper solution - but even there, choices still exist, such as which language(s) to use, what type of data persistence (a Relational Database Management System or or other data storage and processing) will be used, what talent within the company is available for the system and a myriad of other decision.&lt;/p&gt;
&lt;p&gt;All of this boils down to three primary vectors:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;&lt;strong&gt;Knowledge&lt;/strong&gt; - Which options are available to solve problems, and what are their strengths and weaknesses.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;&lt;strong&gt;Experience&lt;/strong&gt; - What has the System Architect seen and worked with in the past.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color:#0000ff;"&gt;&lt;strong&gt;Coordination&lt;/strong&gt; - A system design is based on multiple factors, and one person can't make all the choices. There will need to be others involved at every level of the solution, and the Systems Architect will need to know who those people are and how to work with them.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;How the Cloud Changes Things&lt;/h1&gt;
&lt;p&gt;From the outset, it doesn't seem that using a distributed system would change anything in the Systems Architect role. Isn't the cloud simply another option that the Systems Architect needs to learn and apply? Yes, that is true - but it goes a bit deeper. Let's return to those vectors a moment to see what a Systems Architect needs to take into account.&lt;/p&gt;
&lt;h2&gt;Knowledge&lt;/h2&gt;
&lt;p&gt;The first and probably most obvious impact is learning about cloud technologies. But the important part of that knowledge is to learn &lt;em&gt;when&lt;/em&gt; and &lt;em&gt;where&lt;/em&gt; to use each service. It's a common misconception that the cloud should be an "all or nothing" approach. That's just not true - every Windows Azure project I work on has some element of on-premises interaction, and in some cases only one small part of a solution is placed on the Windows Azure architecture. Since Windows Azure contains IaaS (VM's) PaaS (you write code, we run it)&amp;nbsp; and even SaaS (Such as Hadoop or Media Services), a given architecture can use multiple components even within just one provider. And I've worked on several projects where the customer used not only Windows Azure and On-Premises environments, but also components from other providers. That's not only acceptable, but often the best way to solve a given problem.&lt;/p&gt;
&lt;p&gt;As part of the learning experience, it's vital to keep in mind what you need to pick as key decision points. In your organization, cost could be ranked higher than performance, or perhaps security is the highest decision point.&lt;/p&gt;
&lt;p&gt;To stay educated, there are various journals, websites and conferences that Systems Architects use to keep current. Almost all of those are talking about "cloud" - but there is no substitute for learning from the vendor about their solution. I'm speaking here of the technical information, not the marketing information. The marketing information is also useful, at least from a familiarity standpoint, but the technical information is what you need.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#800000;"&gt;Resource: For Windows Azure, the Systems Architect can start here:&lt;/span&gt; &lt;a href="http://sqlblog.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx" target="_blank"&gt;http://blogs.msdn.com/b/buckwoody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx&lt;/a&gt;&amp;nbsp; &lt;/p&gt;
&lt;h2&gt;Experience&lt;/h2&gt;
&lt;p&gt;Cloud computing is relatively new - it's only been out a few years, and the main competitors are only now settling in to their respective areas. It might not be common for a Systems Architect to have a lot of hands-on experience with cloud projects.&lt;/p&gt;
&lt;p&gt;Even so, there are ways to leverage the experience of others, such as direct contact or even attending conferences where customers present findings from their experiences.&lt;/p&gt;
&lt;p&gt;You can also gain hands-on experience by setting up pilots and proof-of-concept projects yourself. Most all vendors - Microsoft included - have free time available on their systems. The key to an experiment like this is choosing some problem you are familiar with that exercises as many features in the platform as possible. There is no substitute for working with a platform when you want to design a solution. &lt;/p&gt;
&lt;h2&gt;Coordination&lt;/h2&gt;
&lt;p&gt;Probably one of the largest changes in the Systems Architect role that the cloud brings is in the area of coordination. When a Systems Architect deals with the business and other technical professionals, there is a 20+ year history of technology that we are all familiar with. When you mention "the cloud", those audiences may not have spent the time you have in understanding what that means - and often they think it means the "all or nothing" approach I mentioned earlier.&lt;/p&gt;
&lt;p&gt;I've found that a series of "lunch and learns" for the technical staff is useful to explain to each role-group how the cloud is used in their area is useful. In the posts that follow this one, I'll give you some material for those. For managers and business professionals, you'll want to go a different route. I've found that an "Executive Briefing" e-mail, consisting of about a page, with headings that are applicable to your audience.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#800000;"&gt;Resource: Writing Executive Summaries:&lt;/span&gt; &lt;a href="http://writing.colostate.edu/guides/guide.cfm?guideid=76" target="_blank"&gt;http://writing.colostate.edu/guides/guide.cfm?guideid=76&lt;/a&gt; &lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47243" 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/Career/default.aspx">Career</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/Data/default.aspx">Data</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/Windows+Azure/default.aspx">Windows Azure</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/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category></item><item><title>Microsoft Windows Azure Disaster Recovery Options for On-Premises SQL Server</title><link>http://sqlblog.com/blogs/buck_woody/archive/2013/01/08/microsoft-windows-azure-disaster-recovery-options-for-on-premises-sql-server.aspx</link><pubDate>Tue, 08 Jan 2013 14:40:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47070</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/47070.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=47070</wfw:commentRss><description>&lt;p&gt;One of the use-cases for a cloud solution is to serve as a Disaster Recovery option for your on-premises servers. I&amp;rsquo;ll explain one particular use-case in this entry, specifically using Windows Azure &amp;ldquo;IaaS&amp;rdquo; or Virtual Machines as a Recovery Solution for SQL Server (more detail here: &lt;a href="http://www.windowsazure.com/en-us/home/features/virtual-machines/" target="_blank"&gt;http://www.windowsazure.com/en-us/home/features/virtual-machines/&lt;/a&gt;). In future installments I&amp;rsquo;ll explain options for other workloads such as Linux and Windows Servers, SharePoint and other solutions. Some architectures also allow for using Windows Azure SQL Database (Formerly SQL Azure) in recovery scenarios; I&amp;rsquo;ll cover that separately.&lt;/p&gt;
&lt;p&gt;Using Azure as a Disaster Recovery site gives you a range of options, uses world-wide datacenters that you can pick from, and does not require traditional licensing and maintenance paths. You can also integrate the offsite data into other uses, such as reporting (in some cases) or to leverage within other applications.&amp;nbsp; However, the cost-model is different, so make sure you do your homework to ensure that it makes sense to use a cloud provider for safety. You may find that it is cheaper, more expensive, or that you require a mix of technologies and options to get the best solution.&lt;/p&gt;
&lt;p style="padding-left:30px;"&gt;&lt;span style="color:#339966;"&gt;&lt;em&gt;NOTE: The Microsoft Windows Azure platform evolves constantly. That means new features and capabilities, as well as security, optimizations and more improve on a frequent basis. As with any cloud provider, ensure that you check the date of this post to ensure you are within six months or so. If the date is longer than that, then check each of the &amp;ldquo;Details&amp;rdquo; links to ensure you are working with the latest information. &lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The options you have range from simple off-site storage for database backups to systems that your users can access when your primary options are offline.&amp;nbsp; To select which options to use, evaluate the databases you want to protect, and then create your Recovery Point Objectives (RPO) and Recovery Time Objectives (RTO) for each workload. Those two vectors will provide the starting point for each choice you make.&lt;/p&gt;
&lt;p style="padding-left:30px;"&gt;&lt;em&gt;NOTE: If you&amp;rsquo;re not familiar with RPO and RTO on a database system, learn those terms carefully before designing a recovery solution &amp;ndash; on any platform. RPO and RTO are business/technology terms, and are not vendor or platform-specific. &lt;a href="http://wikibon.org/wiki/v/Recovery_point_objective_-_recovery_time_objective_strategy" target="_blank"&gt;http://wikibon.org/wiki/v/Recovery_point_objective_-_recovery_time_objective_strategy&lt;/a&gt;&amp;nbsp; &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The range of protection you have is very similar to the on-premises options for SQL Server (on-premises details here: &lt;a href="http://msdn.microsoft.com/en-us/library/ms190202.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ms190202.aspx&lt;/a&gt;), with the primary limitation being bandwidth. While Microsoft has the largest connections we can get into our datacenters, depending on where your systems are and their connection to the Internet, you will need to consider how much data you transfer, and how often.&amp;nbsp; For backup files, a single, larger transfer is acceptable, using Log Shipping or Database Mirroring, smaller, more frequent transfers are preferable.&lt;/p&gt;
&lt;p&gt;Another limitation is controlling the hardware on the Windows Azure Virtual Machine. That means hardware-based clustering isn&amp;rsquo;t possible, as of this writing. You&amp;rsquo;re also limited to the size of the Virtual Machines that Windows Azure (or any other cloud provider) offers. It&amp;rsquo;s important to keep in mind that you&amp;rsquo;re building a Disaster Recovery solution, not necessarily a full Highly-Available system. The difference is that in this case DR provides a means to recover and operate at a more limited fashion than a full on-premises HA (with matching hardware and licenses) involves. Storage, however, isn&amp;rsquo;t as affected. You can mount large amounts of storage on a Windows Azure Virtual Machine, so it&amp;rsquo;s more memory and CPU that you need to consider for your solution.&lt;/p&gt;
&lt;p&gt;The final consideration is security. There are two aspects in security that you need to consider: data security and authentication and access. For the first consideration, the Windows Azure system does hold multiple certifications and attestations that you can find here:&amp;nbsp; . In some cases those certifications are agreements on the part of security each party will hold liability for; so it&amp;rsquo;s important to carefully read and understand what the agreement states. There are also methods of encrypting data (such as the backups) using your own certificates or hardware devices and then storing them externally. This means no one can easily un-encrypt your data.&lt;/p&gt;
&lt;p&gt;For the authentication portion, you can create a secure &amp;ldquo;tunnel&amp;rdquo;&amp;nbsp; between your network and Windows Azure. This involves a certificate that is installed on your hardware firewall at your facility, and an agent that is enabled with the same certificate on Windows Azure. This gives you a &amp;ldquo;point to point&amp;rdquo; connection, encrypted but over a public connection. From there you can use Active Directory to connect the authentication for the systems involved in the DR solution.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Backups&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;The First and most simple DR solution using Windows Azure is to store your backup files (&lt;em&gt;*.bak&lt;/em&gt;) in Windows Azure storage. Windows Azure Storage is triple-redundant across multiple fault-domains within a single datacenter, and then all three copies are replicated to a geographically separate (although data-sovereignty same) location. That translates to six copies of data stored remotely. In case of a disaster, you connect to storage, download the images, and restore them to a new server. The server can have the same name or different, and unless you&amp;rsquo;re using contained databases, you&amp;rsquo;ll need to re-create and re-authorize the security accounts needed for the database.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6740.HADR1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6740.HADR1.png" alt="" width="353" height="89" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Note that you also have the option of using an &amp;ldquo;appliance&amp;rdquo;, which is a piece of hardware you install at your facility which will act as a backup device or share location (or both). The device handles the encryption, de-duplication and compression for the files, and then stores those files on Windows Azure. More information on that option is here: &lt;a href="http://www.storsimple.com/" target="_blank"&gt;http://www.storsimple.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RPO: As of last backup&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RTO: (Time of transfer from Windows Azure + Time of Restore to New System + Bringing System Online with User Accounts) - Time of Backup&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;More detail on storing files on Windows Azure: &lt;a href="http://sqlblog.com/blogs/sqlos_team/archive/2013/01/24/backup-and-restore-to-cloud-simplified-in-sql-server-2012-sp1-cu2.aspx" target="_blank"&gt;http://sqlblog.com/blogs/sqlos_team/archive/2013/01/24/backup-and-restore-to-cloud-simplified-in-sql-server-2012-sp1-cu2.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Free Client: &lt;a href="http://azurestorageexplorer.codeplex.com/" target="_blank"&gt;http://azurestorageexplorer.codeplex.com/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Database Mirroring&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Database Mirroring is a deprecated feature in SQL Server, which means it will be removed in a future release. It is, however, still supported in SQL Server 2012, and it can be used between on-premises SQL Server Instances and Windows Azure VM&amp;rsquo;s.&amp;nbsp; Using connection strings and .NET languages, clients can actually point to the partner server automatically.&lt;/p&gt;
&lt;p&gt;The granularity of this solution is at the individual database level.&amp;nbsp; Machines can retain their individual identities. You can use certificates to connect the systems, or you can use the point-to-point solution and Active Directory.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6874.HADR3.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6874.HADR3.png" alt="" width="354" height="133" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There are limitations, however. You won&amp;rsquo;t use a Listener in this configuration, and you&amp;rsquo;ll be using Asynchronous mode. If you are not running in the same Active Directory, you&amp;rsquo;ll also need to factor in the time to re-create and tie out those accounts when calculating the RTO value.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4212.HADR2.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/4212.HADR2.png" alt="" width="332" height="130" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RPO: As of last good synchronization&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RTO: (Time of failure + Time of client redirect to New System ) - Time of last good synchronization&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;A complete tutorial on setting up this configuration is here: &lt;a href="http://msdn.microsoft.com/en-us/library/jj870964.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/jj870964.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Log Shipping&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Another feature available for DR in a Hybrid fashion is using Log Shipping, which also protects your system at a database level. Log shipping involves an automated log backup of your database, and the log is copied and then applied at the secondary server. Because the log file is copied to a Windows share, this solution requires both networking access and an Active Directory integration.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3146.HADR4.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/3146.HADR4.png" alt="" width="429" height="180" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RPO: As of last good log backup application to the secondary system&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RTO: (Time of failure + Time of manual client redirect to New System + Time of Manual Failover ) - Time of last good log backup&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Log Shipping information is here: &lt;a href="http://technet.microsoft.com/en-us/library/ms187103.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/library/ms187103.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;AlwaysOn Availability Groups&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;SQL Server 2012 introduces a new set of features called &amp;ldquo;AlwaysOn&amp;rdquo; that encompass many of the HA/DR features in previous releases. One feature within that set is called &amp;ldquo;Availability Groups&amp;rdquo;, and with certain caveats that feature is available for a Hybrid on-premises to Windows Azure VM solution.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7183.HADR5.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7183.HADR5.png" alt="" width="390" height="136" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;AlwaysOn requires a Windows Cluster (WFSC), which is where the caveats come into play. You&amp;rsquo;re able to set up a&amp;nbsp; multi-subnet WSFC cluster, but you won&amp;rsquo;t have access to the Availability Group Listener function, so you need to consider the client reconnection.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RPO: As of last good synchronization&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RTO: (Time of failure + Time of manual client redirect to New System + Time of Manual Failover ) - Time of last good log backup&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References: &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;A complete tutorial on setting up this configuration is here: &lt;a href="http://msdn.microsoft.com/en-us/library/jj870959.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/jj870959.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Other Solution Options&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Taking an overview approach, you can use other data transfer mechanisms. While these involve more manual coding and architecture, you do have more control. For instance, you could copy the data to multiple locations, platforms and more, and allow reading and manipulations of the data at the destination. You can use code options, Windows Azure Data Sync (&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/hh456371.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/hh456371.aspx&lt;/a&gt;), or even SQL Server Replication (blog on this process is here: &lt;a href="http://tk.azurewebsites.net/2012/07/17/how-to-setup-peer-to-peer-replication-in-azure-iaas-sql-server-2012/" target="_blank"&gt;http://tk.azurewebsites.net/2012/07/17/how-to-setup-peer-to-peer-replication-in-azure-iaas-sql-server-2012/&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RPO: Varies&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;"&gt;&lt;em&gt;RTO: Varies&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#993300;"&gt;References:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;A whitepaper on the information I've discussed throughout this article and other options is available here: &lt;a href="http://msdn.microsoft.com/en-us/library/jj870962.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/jj870962.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The &amp;ldquo;SQL AlwaysOn&amp;rdquo; Team Blog (where you may find more current information) is here: &lt;a href="http://sqlblog.com/b/sqlalwayson/" target="_blank"&gt;http://blogs.msdn.com/b/sqlalwayson/&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=47070" width="1" height="1"&gt;</description><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/Disaster+Recovery/default.aspx">Disaster Recovery</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/Windows+Azure/default.aspx">Windows Azure</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/Use-Cases/default.aspx">Use-Cases</category></item><item><title>Conducting Effective Web Meetings</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/12/18/conducting-effective-web-meetings.aspx</link><pubDate>Tue, 18 Dec 2012 14:51:56 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:46686</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/46686.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=46686</wfw:commentRss><description>&lt;p&gt;There are several forms of corporate communication. From immediate, rich communications like phones and IM messaging to historical transactions like e-mail, there are a lot of ways to get information to one or more people. From time to time, it's even useful to have a meeting.&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="color:#ff00ff;"&gt;&lt;em&gt;(This is where a witty picture of a guy sleeping in a meeting goes. I won't bother actually putting one here; you're already envisioning it in your mind)&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Most meetings are pointless, and a complete waste of time. This is the fault, completely and solely, of the organizer. It's because he or she hasn't thought things through enough to think about alternate forms of information passing. Here's the criteria for a good meeting - whether in-person or over the web:&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="color:#339966;font-size:medium;"&gt;100% of the content of a meeting should require the participation of 100% of the attendees for 100% of the time&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;It doesn't get any simpler than that. If it doesn't meet that criteria, then don't invite that person to that meeting. If you're just conveying information and no one has the need for immediate interaction with that information (like telling you something that modifies the message), then send an e-mail. If you're a manager, and you need to get status from lots of people, pick up the phone.If you need a quick answer, use IM. &lt;/p&gt;
&lt;p&gt;I once had a high-level manager that called frequent meetings. His real need was status updates on various processes, so 50 of us would sit in a room while he asked each one of us questions. He believed this larger meeting helped us "cross pollinate ideas". In fact, it was a complete waste of time for most everyone, except in the one or two moments that they interacted with him. So I wrote some code for a Palm Pilot (&lt;a href="http://en.wikipedia.org/wiki/Palm_Pilot" target="_blank"&gt;which was a kind of SmartPhone but with no phone and no real graphics&lt;/a&gt;, but this was in the days when we had just discovered fire and the wheel, although the order of those things is still in debate) that took an average of the salaries of the people in the room (I guessed at it) and ran a timer which multiplied the number of people against the salaries.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/2/25/Palmpilot5000_eu.png"&gt;&lt;img style="max-width:550px;" src="http://upload.wikimedia.org/wikipedia/commons/2/25/Palmpilot5000_eu.png" alt="" width="146" height="207" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I left that running in plain sight for him, and when he asked about it, I explained how much the meetings were really costing the company. We had far fewer meetings after.&lt;/p&gt;
&lt;p&gt;Meetings are now web-enabled. I believe that's largely a good thing, since it saves on travel time and allows more people to participate, but I think the rule above still holds. And in fact, there are some other rules that you should follow to have a great meeting - and fewer of them.&lt;/p&gt;
&lt;h1&gt;Be Clear About the Goal&lt;/h1&gt;
&lt;p&gt;This is important in any meeting, but all of us have probably gotten an invite with a web link and an ambiguous title. Then you get to the meeting, and it's a 500-level deep-dive on something everyone expects you to know.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900443099.jpg"&gt;&lt;img style="max-width:550px;float:right;margin:5px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900443099.jpg" alt="" width="205" height="205" /&gt;&lt;/a&gt;This is unfair to the "expert" and to the participants. I always tell people that invite me to a meeting that I will be as detailed as I can - but the more detail they can tell me about the questions, the more detailed I can be in my responses. Granted, there are times when you don't know what you don't know, but the more you can say about the topic the better.&lt;/p&gt;
&lt;p&gt;There's another point here - and it's that you should have a clearly defined "win" for the meeting. When the meeting is over, and everyone goes back to work, what were you expecting them to do with the information? Have that clearly defined in your head, and in the meeting invite. &lt;/p&gt;
&lt;h1&gt;Understand the Technology&lt;/h1&gt;
&lt;p&gt;There are several web-meeting clients out there. I use them all, since I meet with clients all over the world. They all work differently - so I take a few moments and read up on the different clients and find out how I can use the tools properly. I do this with the technology I use for everything else, and it's important to understand it if the meeting is to be a success. If you're running the meeting, know the tools. I don't care if you like the tools or not, learn them anyway. Don't waste everyone else's time just because you're too bitter/snarky/lazy to spend a few minutes reading.&lt;/p&gt;
&lt;p&gt;Check your phone or mic. Check your video size. Install (and learn to use)&amp;nbsp; ZoomIT (http://technet.microsoft.com/en-us/sysinternals/bb897434.aspx). Format your slides or screen or output correctly. Learn to use the voting features of the meeting software, and especially it's whiteboard features. Figure out how multiple monitors work. Try a quick meeting with someone to test all this. Do this *before* you invite lots of other people to your meeting. &amp;nbsp; &lt;/p&gt;
&lt;h1&gt;Use a WebCam&lt;/h1&gt;
&lt;p&gt;I'm not a pretty man. I have a face fit for radio. But after attending a meeting with clients where one Microsoft person used a webcam and another did not, I'm convinced that people pay more attention when a face is involved. There are tons of studies around this, or you can take my word for it, but toss a shirt on over those pajamas and turn the webcam on.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900442485.jpg"&gt;&lt;img style="max-width:550px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900442485.jpg" alt="" width="188" height="188" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Set Up Early&lt;/h1&gt;
&lt;p&gt;Whether you're attending or leading the meeting, don't wait to sign on to the meeting at the time when it starts. I can almost plan that a 10:00 meeting will actually start at 10:10 because the participants/leader is just now installing the web client for the meeting at 10:00. Sign on early, go on mute, and then wait for everyone to arrive. &lt;/p&gt;
&lt;h1&gt;Mute When Not Talking&lt;/h1&gt;
&lt;p&gt;No one wants to hear your screaming offspring / yappy dog / other cubicle conversations / car wind noise (are you driving in a desert storm or something?) while the person leading the meeting is trying to talk. I use the Lync software from Microsoft for my meetings, and I mute everyone by default, and then tell them to un-mute to talk to the group.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900262265.jpg"&gt;&lt;img style="max-width:550px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900262265.jpg" alt="" width="125" height="125" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Share Collateral&lt;/h1&gt;
&lt;p&gt;If you have a PowerPoint deck, mail it out in case you have a tech failure. If you have a document, share it as an attachment to the meeting. Don't make people ask you for the information - that's why you're there to begin with. Even better, send it out early. "But", you say, "then no one will come to the meeting if they have the deck first!" Uhm, then don't have a meeting. Send out the deck and a quick e-mail and let everyone get on with their productive day. &lt;/p&gt;
&lt;h1&gt;Set Actions At the Meeting&lt;/h1&gt;
&lt;p&gt;A meeting should have some sort of outcome (see point one). That means there are actions to take, a follow up, or some deliverable. Otherwise, it's an e-mail. At the meeting, decide who will do what, when things are needed, and so on. And avoid, if at all possible, setting up another meeting, unless absolutely necessary.&lt;/p&gt;
&lt;p&gt;So there you have it. Whether it's on-premises or on the web, meetings are a necessary evil, and should be treated that way. Like politicians, you should have as few of them as are necessary to keep the roads paved and public libraries open. &lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=46686" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Rant/default.aspx">Rant</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/How+I+work/default.aspx">How I work</category></item><item><title>I Could Sure Use Some Windows Azure Code Samples…</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/12/10/i-could-sure-use-some-windows-azure-code-samples.aspx</link><pubDate>Tue, 11 Dec 2012 03:47:55 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:46607</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/46607.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=46607</wfw:commentRss><description>&lt;p&gt;There are multiple ways to learn, and one of the most effective is with examples. You have multiple options with Windows Azure, &lt;a href="http://www.windowsazure.com/en-us/develop/downloads/"&gt;including the Software Development Kit&lt;/a&gt;, the &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=8396"&gt;Windows Azure Training Kit&lt;/a&gt; and now another one&amp;hellip;. the &lt;a href="http://1code.codeplex.com/" target="_blank"&gt;&lt;strong&gt;Microsoft All-In-One Code Framework&lt;/strong&gt;&lt;/a&gt;,, a free, centralized code sample library driven by developers' real-world pains and needs. The goal is to provide customer-driven code samples for all Microsoft development technologies, and Windows Azure is included.&lt;/p&gt;
&lt;p&gt;Once you hit the site, you download an EXE that will create a web-app based installer for a Code Browser.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6874.AIO1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6874.AIO1.png" alt="" width="637" height="477" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once inside, you can configure where the samples store data and other settings, and then search for what you want.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/8371.AIO2.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/8371.AIO2.png" alt="" width="756" height="438" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can also request a sample &amp;ndash; if enough people ask, we do it. OneCode also partnered with gallery and Visual Studio team to develop &lt;a href="http://aka.ms/samplebrowservsx"&gt;this Sample Browser Visual Studio extension&lt;/a&gt;. &amp;nbsp;It&amp;rsquo;s an easy way for developers to find and download samples from within Visual Studio.&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=46607" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Using Hadooop (HDInsight) with Microsoft - Two (OK, Three) Options </title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/12/04/using-hadooop-hdinsight-with-microsoft-two-ok-three-options.aspx</link><pubDate>Tue, 04 Dec 2012 15:28:23 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:46509</guid><dc:creator>BuckWoody</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/46509.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=46509</wfw:commentRss><description>&lt;p&gt;Microsoft has many tools for &amp;ldquo;Big Data&amp;rdquo;. In fact, you need many tools &amp;ndash; there&amp;rsquo;s no product called &amp;ldquo;Big Data Solution&amp;rdquo; in a shrink-wrapped box &amp;ndash; if you find one, you probably shouldn&amp;rsquo;t buy it. It&amp;rsquo;s tempting to want a single tool that handles everything in a problem domain, but with large, complex data, that isn&amp;rsquo;t a reality. You&amp;rsquo;ll mix and match several systems, open and closed source, to solve a given problem.&lt;/p&gt;
&lt;p&gt;But there are tools that help with handling data at large, complex scales. Normally the best way to do this is to break up the data into parts, and then put the calculation engines for that chunk of data right on the node where the data is stored. These systems are in a family called &amp;ldquo;Distributed File and Compute&amp;rdquo;. Microsoft has a couple of these, including the &lt;a href="http://www.microsoft.com/hpc/en/us/default.aspx"&gt;High Performance Computing edition of Windows Server&lt;/a&gt;. Recently we partnered with &lt;a href="http://hortonworks.com/"&gt;Hortonworks&lt;/a&gt; to bring the &lt;a href="http://hadoop.apache.org/"&gt;Apache Foundation&amp;rsquo;s release of Hadoop&lt;/a&gt; to Windows. And as it turns out, there are actually two (technically three) ways you can use it.&lt;/p&gt;
&lt;p style="padding-left:30px;"&gt;&lt;span style="color:#993300;"&gt;&lt;em&gt;(There&amp;rsquo;s a more detailed set of information here: &lt;a href="http://www.microsoft.com/sqlserver/en/us/solutions-technologies/business-intelligence/big-data.aspx"&gt;&lt;span style="color:#993300;"&gt;http://www.microsoft.com/sqlserver/en/us/solutions-technologies/business-intelligence/big-data.aspx&lt;/span&gt;&lt;/a&gt;, I&amp;rsquo;ll cover the options at a general level below)&amp;nbsp; &lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h1&gt;First Option: Windows Azure HDInsight Service&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;Your first option is that you can simply log on to a Hadoop control node and begin to run Pig or Hive statements against data that you have stored in Windows Azure. There&amp;rsquo;s nothing to set up (although you can configure things where needed), and you can send the commands, get the output of the job(s), and stop using the service when you are done &amp;ndash; and repeat the process later if you wish.&lt;/p&gt;
&lt;p&gt;(There are also connectors to run jobs from Microsoft Excel, but that&amp;rsquo;s another post)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/0572.option_2D00_1.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/0572.option_2D00_1.png" alt="" width="367" height="212" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This option is useful when you have a periodic burst of work for a Hadoop workload, or the data collection has been happening into Windows Azure storage anyway. That might be from a web application, the logs from a web application, &lt;a href="http://en.wikipedia.org/wiki/Telemetry"&gt;telemetrics&lt;/a&gt; (remote sensor input), and other modes of constant collection. &amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can read more about this option here: &amp;nbsp;&lt;a href="http://sqlblog.com/b/windowsazure/archive/2012/10/24/getting-started-with-windows-azure-hdinsight-service.aspx"&gt;http://blogs.msdn.com/b/windowsazure/archive/2012/10/24/getting-started-with-windows-azure-hdinsight-service.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Second Option: Microsoft HDInsight Server&lt;/h1&gt;
&lt;p&gt;Your second option is to use the Hadoop Distribution for on-premises Windows called Microsoft HDInsight Server. You set up the Name Node(s), Job Tracker(s), and Data Node(s), among other components, and you have control over the entire ecostructure.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7041.option_2D00_2.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/7041.option_2D00_2.png" alt="" width="152" height="179" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This option is useful if you want to &amp;nbsp;have complete control over the system, leave it running all the time, or you have a huge quantity of data that you have to bulk-load constantly &amp;ndash; something that isn&amp;rsquo;t going to be practical with a network transfer or disk-mailing scheme.&lt;/p&gt;
&lt;p&gt;You can read more about this option here: &lt;a href="http://www.microsoft.com/sqlserver/en/us/solutions-technologies/business-intelligence/big-data.aspx"&gt;http://www.microsoft.com/sqlserver/en/us/solutions-technologies/business-intelligence/big-data.aspx&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Third Option (unsupported): Installation on Windows Azure Virtual Machines&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;Although unsupported, you could simply use a Windows Azure Virtual Machine (we support both Windows and Linux servers) and install Hadoop yourself &amp;ndash; it&amp;rsquo;s open-source, so there&amp;rsquo;s nothing preventing you from doing that.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/0121.option_2D00_3.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/0121.option_2D00_3.png" alt="" width="326" height="188" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Aside from being unsupported, there are other issues you&amp;rsquo;ll run into with this approach &amp;ndash; primarily involving performance and the amount of configuration you&amp;rsquo;ll need to do to access the data nodes properly. But for a single-node installation (where all components run on one system) such as learning, demos, training and the like, this isn&amp;rsquo;t a bad option.&lt;/p&gt;
&lt;p&gt;Did I mention that&amp;rsquo;s unsupported? :) &lt;/p&gt;
&lt;p&gt;You can learn more about Windows Azure Virtual Machines here: &lt;a href="http://www.windowsazure.com/en-us/home/scenarios/virtual-machines/"&gt;http://www.windowsazure.com/en-us/home/scenarios/virtual-machines/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And more about Hadoop and the installation/configuration (on Linux) here: &lt;a href="http://en.wikipedia.org/wiki/Apache_Hadoop"&gt;http://en.wikipedia.org/wiki/Apache_Hadoop&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And more about the HDInsight installation here: &lt;a href="http://www.microsoft.com/web/gallery/install.aspx?appid=HDINSIGHT-PREVIEW"&gt;http://www.microsoft.com/web/gallery/install.aspx?appid=HDINSIGHT-PREVIEW&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Choosing the right option&lt;/h1&gt;
&lt;p&gt;Since you have two or three routes you can go, the best thing to do is evaluate the need you have, and place the workload where it makes the most sense.&amp;nbsp; My suggestion is to install the HDInsight Server locally on a test system, and play around with it. Read up on the best ways to use Hadoop for a given workload, understand the parts, write a little Pig and Hive, and get your feet wet. Then sign up for a test account on HDInsight Service, and see how that leverages what you know. If you're a true tinkerer, go ahead and try the VM route as well. &lt;/p&gt;
&lt;p&gt;Oh - there&amp;rsquo;s another great reference on the Windows Azure HDInsight that just came out, here: &lt;a href="http://sqlblog.com/b/brunoterkaly/archive/2012/11/16/hadoop-on-azure-introduction.aspx"&gt;http://blogs.msdn.com/b/brunoterkaly/archive/2012/11/16/hadoop-on-azure-introduction.aspx&lt;/a&gt; &amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=46509" width="1" height="1"&gt;</description><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/Windows+Azure/default.aspx">Windows Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data+Science/default.aspx">Data Science</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Big+Data/default.aspx">Big Data</category></item></channel></rss>