<?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 : Azure</title><link>http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx</link><description>Tags: Azure</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><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/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Career/default.aspx">Career</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data/default.aspx">Data</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/Windows+Azure/default.aspx">Windows Azure</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/Azure/default.aspx">Azure</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/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</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/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Career/default.aspx">Career</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data/default.aspx">Data</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Database+Administration/default.aspx">Database Administration</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/DBA/default.aspx">DBA</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</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/SQL+Server/default.aspx">SQL Server</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</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/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Career/default.aspx">Career</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data/default.aspx">Data</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/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>High Availability for IaaS, PaaS and SaaS in the Cloud</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/11/06/high-availability-for-iaas-paas-and-saas-in-the-cloud.aspx</link><pubDate>Tue, 06 Nov 2012 15:15:28 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:45969</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/45969.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=45969</wfw:commentRss><description>&lt;p&gt;Outages, natural disasters and unforeseen events have proved that even in a distributed architecture, you need to plan for High Availability (HA). In this entry I'll explain a few considerations for HA within Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS). In a separate post I'll talk more about Disaster Recovery (DR), since each paradigm has a different way to handle that.&lt;/p&gt;
&lt;h1&gt;Planning for HA in IaaS&lt;/h1&gt;
&lt;p&gt;IaaS involves Virtual Machines - so in effect, an HA strategy here takes on many of the same characteristics as it would on-premises. The primary difference is that the vendor controls the hardware, so you need to verify what they do for things like local redundancy and so on from the hardware perspective.&lt;/p&gt;
&lt;p&gt;As far as what you can control and plan for, the primary factors fall into three areas: multiple instances, geographical dispersion and task-switching.&lt;/p&gt;
&lt;p&gt;In almost every cloud vendor I've studied, to ensure your application will be protected by any level of HA, you need to have at least two of the Instances (VM's) running. This makes sense, but you might assume that the vendor just takes care of that for you - they don't. If a single VM goes down (for whatever reason) then the access to it is lost. Depending on multiple factors, you might be able to recover the data, but you should assume that you can't. You should keep a sync to another location (perhaps the vendor's storage system in another geographic datacenter or to a local location) to ensure you can continue to serve your clients.&lt;/p&gt;
&lt;p&gt;You'll also need to host the same VM's in another geographical location. Everything from a vendor outage to a network path problem could prevent your users from reaching the system, so you need to have multiple locations to handle this.&lt;/p&gt;
&lt;p&gt;This means that you'll have to figure out how to manage state between the geo's. If the system goes down in the middle of a transaction, you need to figure out what part of the process the system was in, and then re-create or transfer that state to the second set of systems. If you didn't write the software yourself, this is non-trivial.&lt;/p&gt;
&lt;p&gt;You'll also need a manual or automatic process to detect the failure and re-route the traffic to your secondary location. You could flip a DNS entry (if your application can tolerate that) or invoke another process to alias the first system to the second, such as load-balancing and so on. There are many options, but all of them involve coding the state into the application layer. If you've simply moved a state-ful application to VM's, you may not be able to easily implement an HA 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/6366.HAIaaS.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/6366.HAIaaS.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Planning for HA in PaaS&lt;/h1&gt;
&lt;p&gt;Implementing HA in PaaS is a bit simpler, since it's built on the concept of stateless applications deployment. Once again, you need at least two copies of each element in the solution (web roles, worker roles, etc.) to remain available in a single datacenter. Also, you need to deploy the application again in a separate geo, but the advantage here is that you could work out a "shared storage" model such that state is auto-balanced across the world. In fact, you don't have to maintain a "DR" site, the alternate location can be live and serving clients, and only take on extra load if the other site is not available. In Windows Azure, you can use the Traffic Manager service top route the requests as a type of auto balancer.&lt;/p&gt;
&lt;p&gt;Even with these benefits, I recommend a second backup of storage in another geographic location. Storage is inexpensive; and that second copy can be used for not only HA but DR.&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/2313.HAPaaS.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/2313.HAPaaS.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;Planning for HA in SaaS&lt;/h1&gt;
&lt;p&gt;In Software-as-a-Service (such as Office 365, or Hadoop in Windows Azure) You have far less control over the HA solution, although you still maintain the responsibility to ensure you have it. Since each SaaS is different, check with the vendor on the solution for HA - and make sure you understand what they do and what you are responsible for. They may have no HA for that solution, or pin it to a particular geo, or perhaps they have a massive HA built in with automatic load balancing (which is often the case).&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/8345.HASaaS.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/8345.HASaaS.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;All of these options (with the exception of SaaS) involve higher costs for the design. Do not sacrifice reliability for cost - that will always cost you more in the end. Build in the redundancy and HA at the very outset of the project - if you try to tack it on later in the process the business will push back and potentially not implement HA.&lt;/p&gt;
&lt;p&gt;References: &lt;a href="http://www.bing.com/search?q=windows+azure+High+Availability"&gt;http://www.bing.com/search?q=windows+azure+High+Availability&lt;/a&gt;&amp;nbsp; (each type of implementation is different, so I'm routing you to a search on the topic - look for the "Patterns and Practices" results for the area in Azure you're interested in)&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=45969" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Administration/default.aspx">Administration</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/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Best+Practices/default.aspx">Best Practices</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Computing/default.aspx">Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Monitoring/default.aspx">Monitoring</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Cloud Computing - just get started already!</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/10/30/cloud-computing-just-get-started-already.aspx</link><pubDate>Tue, 30 Oct 2012 14:43:27 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:45857</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/45857.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=45857</wfw:commentRss><description>&lt;p&gt;OK - you've been hearing about "cloud" (I really dislike that term, but whatever) for over two years. You've equated it with just throwing some VM's in some vendor's datacenter - which is certainly part of it, but not the whole story. There's a whole world of - wait for it - *coding* out there that you should be working on. If you're a developer, this is just a set of servers with operating systems and the runtime layer (like.NET, Java, PHP, etc.) that you can deploy code to and have it run. It can expand in a horizontal way, allowing massive - and I really, honestly mean massive, not just marketing talk kind of scale. We see this every day.&lt;/p&gt;
&lt;p&gt;If you're not a developer, well, now's the time to learn. Explore a little. Try it.&lt;/p&gt;
&lt;p&gt;We'll help you. There's a free conference you can attend in November, and you can sign up for it now. It's all on-line, and the tools you need to code are free.&lt;/p&gt;
&lt;p&gt;Put down Facebook and Twitter for a minute - go sign up. Learn. Do. :)&lt;/p&gt;
&lt;p&gt;See you there. &lt;a href="http://www.windowsazureconf.net/"&gt;http://www.windowsazureconf.net/&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=45857" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Development/default.aspx">Development</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Programming/default.aspx">Programming</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Keeping your options open in a cloud solution</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/09/25/keeping-your-options-open-in-a-cloud-solution.aspx</link><pubDate>Tue, 25 Sep 2012 14:20:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:45345</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/45345.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=45345</wfw:commentRss><description>&lt;p&gt;In on-premises solutions we have the full range of options open for a given computing solution &amp;ndash; but we don&amp;rsquo;t always take advantage of them, for multiple reasons. Data goes in a Relational Database Management System, files go on a share, and e-mail goes to the Exchange server.&lt;/p&gt;
&lt;p&gt;Over time, vendors (including ourselves) add in functionality to one product that allow non-standard use of the platform. For example, SQL Server (and Oracle, and others) allow large binary storage in or through the system &amp;ndash; something not originally intended for an RDBMS to handle. There are certainly times when this makes sense, of course, but often these platform hammers turn every problem into a nail. It can make us &amp;ldquo;lazy&amp;rdquo; in our design &amp;ndash; we sometimes don&amp;rsquo;t take the time to learn another architecture because the one we&amp;rsquo;ve spent so much time with can handle what we want to do.&lt;/p&gt;
&lt;p&gt;But there&amp;rsquo;s a distinct danger here. In nature, when a population shares too many of the same traits, it can cause a complete collapse if a situation exploits a weakness shared by that population. The same is true with not using the right&lt;br /&gt;tool for the job in a computing environment. Your company or organization depends on your knowledge as a professional to select the best mix of supportable, flexible, cost-effective technologies to solve their problems, whether you&amp;rsquo;re in an architect role or not.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So take some time today to learn something new. The way I do this is to select a given problem, and try to solve it with a technology I&amp;rsquo;m not familiar with. For instance &amp;ndash; create a Purchase Order system in Excel, then in Hadoop or MongoDB, or even in flat-files using PowerShell as an interface. No, I&amp;rsquo;m not suggesting any of these architectures are the proper way to solve the PO problem, but taking something concrete that you know well and applying that meta-knowledge to another platform will assist you in exercising the &amp;ldquo;little grey cells&amp;rdquo; and help you and your organization understand what is open to you.&lt;/p&gt;
&lt;p&gt;And of course you can do all of this on-premises &amp;ndash; but my recommendation is to check out a cloud platform (my suggestion would of course be Windows Azure :) ) and try it there. Most providers (including Microsoft) provide free time to do that.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=45345" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>The Windows Azure Software Development Kit (SDK) and the Windows Azure Training Kit (WATK)</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/09/12/the-windows-azure-software-development-kit-sdk-and-the-windows-azure-training-kit-watk.aspx</link><pubDate>Wed, 12 Sep 2012 13:40:40 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:45165</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/45165.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=45165</wfw:commentRss><description>&lt;p&gt;Windows Azure is a platform that allows you to write software, run software, or use software that we've already written. We provide lots of resources to help you do that - many can be found right here in this blog series. There are two primary resources you can use, and it's important to understand what they are and what they do.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900441285.jpg"&gt;&lt;img width="121" height="107" style="float:left;max-width:550px;" alt="" src="http://officeimg.vo.msecnd.net/en-us/images/MH900441285.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;The Windows Azure Software Development Kit (SDK)&lt;/h1&gt;
&lt;p&gt;Actually, this isn't one resource. We have SDK's for multiple development environments, such as Visual Studio and also Eclipse, along with SDK's for iOS, Android and other environments. Windows Azure is a "back end", so almost any technology or front end system can use it to solve a problem.&lt;/p&gt;
&lt;p&gt;The SDK's are primarily for development. In the case of Visual Studio, you'll get a runtime environment for Windows Azure which allows you to develop, test and even run code all locally - you do not have to be connected to Windows Azure at all, until you're ready to deploy.&lt;/p&gt;
&lt;p&gt;You'll also get a few samples and codeblocks, along with all of the libraries you need to code with Windows Azure in .NET, PHP, Ruby, Java and more.&lt;/p&gt;
&lt;p&gt;The SDK is updated frequently, so check this location to find the latest for your environment and language - just click the bar that corresponds to what you want:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/downloads/" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/downloads/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://officeimg.vo.msecnd.net/en-us/images/MH900438678.jpg"&gt;&lt;img width="151" height="163" style="margin:2px 5px;border:0px currentColor;float:left;max-width:550px;" src="http://officeimg.vo.msecnd.net/en-us/images/MH900438678.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;The Windows Azure Training Kit (WATK)&lt;/h1&gt;
&lt;p&gt;Whether you're writing code, using Windows Azure Virtual Machines (VM's) or working with Hadoop, you can use the WATK to get examples, code, PowerShell scripts, PowerPoint decks, training videos and much more. This should be your second download after the SDK. This is all of the training you need to get started, and even beyond. The WATK is updated frequently - and you can find the latest one here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;There are many other resources - again, check the &lt;a href="http://windowsazure.com"&gt;http://windowsazure.com&lt;/a&gt; site, the &lt;a href="http://www.windowsazure.com/en-us/community/newsletter/2012/june/" target="_blank"&gt;community newsletter (which introduces the latest features)&lt;/a&gt;, and &lt;a href="http://sqlblog.com/b/buckwoody/rss.aspx" target="_blank"&gt;my blog for more&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=45165" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Community/default.aspx">Community</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Documentation/default.aspx">Documentation</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Downloads/default.aspx">Downloads</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Latest+Version/default.aspx">Latest Version</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Learning/default.aspx">Learning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Link+Lists/default.aspx">Link Lists</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Links/default.aspx">Links</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Presentations/default.aspx">Presentations</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Scripts/default.aspx">Scripts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>Windows Azure Database (SQL Azure) Development Tip</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/08/15/windows-azure-database-sql-azure-development-tip.aspx</link><pubDate>Wed, 15 Aug 2012 14:55:44 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44722</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44722.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44722</wfw:commentRss><description>&lt;p&gt;When you create something in the cloud, it's real, and you're charged for it. There are free offerings, and you even get free resources with your Microsoft Developer Network (MSDN) subscription, but there are limits within those. Creating a 1 GB database - even with nothing in it - is a 1 GB Database. If you create it, drop it, and create it again 2 minutes later, that's 2 GB of space you've used for the month. Wait - how do I develop in this kind of situation?&lt;/p&gt;
&lt;p&gt;With Windows Azure, you can simply install the free Software Development Kit (SDK) and develop your entire application for free - you need never even log in to Windows Azure to code. Once you're done, you simply deploy the app and you start making money from the application as you're paying for it.&lt;/p&gt;
&lt;p&gt;Windows Azure Databases (The Artist Formerly Known As SQL Azure) is a bit different. It's not emulated in the SDK - because it doesn't have to be. It's just SQL Server, &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ff394115.aspx" target="_blank"&gt;with some differences in feature set&lt;/a&gt;. To develop in this environment, you can use SQL Server, any edition. Be aware of the feature differences, of course, but just develop away - &lt;a href="http://technet.microsoft.com/en-us/library/cc645993(v=sql.110).aspx" target="_blank"&gt;even in the free "Express" or LocalDB flavors&lt;/a&gt; - and then &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee730904.aspx" target="_blank"&gt;right-click in SQL Server Management Studio to script objects. Script the database, but change the "Advanced" selection to the Engine Type of "SQL Azure"&lt;/a&gt;. Bing.&lt;/p&gt;
&lt;p&gt;Although most all T-SQL ports directly, one thing to keep in mind is that you need a Clustered Index on every table. Often the Primary Key (PK) is a good choice for that.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44722" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Best+Practices/default.aspx">Best Practices</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category></item><item><title>The Importance of Paranoia for the Technical Professional</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/08/08/the-importance-of-paranoia-for-the-technical-professional.aspx</link><pubDate>Wed, 08 Aug 2012 12:19:11 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44620</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44620.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44620</wfw:commentRss><description>&lt;p&gt;I recently read a blog post from a technical professional who&amp;rsquo;s account had been hacked (&lt;a href="http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/"&gt;http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/&lt;/a&gt;)&amp;nbsp;&amp;nbsp;&amp;ndash; not because he used poor passwords or unsafe practices, but because the hackers used some social engineering to get around the safety he had put into place.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;While I won&amp;rsquo;t focus on the particulars of his situation, the interesting part of his loss was the fragility of the security of his data. In this case, he lost personal data &amp;ndash; with no way to replace it. Two things stood out for me in his article: the chain of security through his accounts, and the single-source of data he had.&lt;/p&gt;
&lt;p&gt;In this case, someone contacted the vendor and pretended to be this person. Using easily obtained information, they simply gained access to the account, and didn&amp;rsquo;t even have to hack the password. From there, the chain was that using various convenience-features, the hackers could delete the smartphone, and then on to the laptop the person owned. They completely wiped that out, and this is where there is an issue &amp;ndash; he had his data on that laptop, and on the same vendor&amp;rsquo;s cloud backup. Since the hacker *&lt;b&gt;was&lt;/b&gt;* the account owner by that time, they wiped out both. The person&amp;rsquo;s personal pictures, etc were gone forever. From there the hackers impersonated the person on Twitter and made racist and other statements to embarrass the person.&lt;/p&gt;
&lt;p&gt;Although lots of features are available in all vendor products, I&amp;rsquo;ve always been&amp;hellip;.paranoid about using them. I try to follow the &amp;ldquo;moats and bridges&amp;rdquo; approach to security, meaning that one account or feature doesn&amp;rsquo;t lead to another. I don&amp;rsquo;t link things together that can be used to attach to more than one account, even when it's a cool new feature. One public logon from an airport&amp;rsquo;s &amp;ldquo;free&amp;rdquo; wifi (which I never use, by the way) can lead to these attacks &amp;ndash; even if you don&amp;rsquo;t think you&amp;rsquo;re logging on. Ever check your mail from the airport? Do you have more than one mail account in your mail client? You could be hacked. I realize most client software does a good job of trying to prevent this, but I use my own MiFi device which I have set to the highest encryption I can.&lt;/p&gt;
&lt;p&gt;I also keep lots of data in the cloud &amp;ndash; but that&amp;rsquo;s not the only place. Periodically I have my important data backed up to a local drive,which I rotate to another secure location. After all, I&amp;rsquo;ve moved most of my books, pictures, scans, everything to a digital format. There&amp;rsquo;s no way I&amp;rsquo;m keeping that in just one place, or on just one vendor.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;There are other things you can do to protect yourself &amp;ndash; a great list is here: &lt;a href="http://gizmodo.com/5932663/9-things-you-absolutely-must-do-to-keep-your-online-identity-secure"&gt;http://gizmodo.com/5932663/9-things-you-absolutely-must-do-to-keep-your-online-identity-secure&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When I help clients design solutions on Windows Azure,&amp;nbsp;I recommend another copy of the storage wherever possible &amp;ndash; even on other vendor's cloud storage or locally on a drive, or both. I&amp;rsquo;m paranoid that way &amp;ndash; I don&amp;rsquo;t want them to lose data. We take extraordinary precautions against losing data. Azure data has three copies on separate fault domains, and then those three are copied again to another physical datacenter automatically, that&amp;rsquo;s just built into the system. Even so, I&amp;nbsp; recommend periodic backups to other&lt;br /&gt;locations of data the client can&amp;rsquo;t easily re-generate.&lt;/p&gt;
&lt;p&gt;While we provide lots of tools, information and guidance about security and protection in Windows Azure, ultimately it's up to you to properly secure your assets and plan for disaster recovery. That's true of any cloud provider - you need to learn the platform well to understand how to protect your data.&lt;/p&gt;
&lt;p&gt;What I architect in Windows Azure I practice at home. Read that blog post, and I think you will agree it&amp;rsquo;s good to be a little paranoid. Sometimes they really are out to get you.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44620" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Best+Practices/default.aspx">Best Practices</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Security/default.aspx">Security</category></item><item><title>Windows Azure Visio Shapes</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/07/25/windows-azure-visio-shapes.aspx</link><pubDate>Wed, 25 Jul 2012 13:44:23 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44437</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44437.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44437</wfw:commentRss><description>&lt;p&gt;Normally when I diagram a solution for a customer, I use whatever they are comfortable with. I do most of my work these days in OneNote, especially when it’s an Architecture Design Session (ADS), since I can capture notes, handwriting, drawings, web pages, whiteboards, camera shots and even voice. In fact you can search on most of those. &lt;/p&gt;  &lt;p&gt;Simplicity is the rule – I just want to capture enough data to move to the next phase of the project and ensure everyone understands what we are doing. When we get to that next phase, I like to use Visio. It’s a vector-based drawing and diagraming tool, which means you can zoom in or out a great deal without a loss of definition, in most cases. For complicated diagrams, this is essential. &lt;/p&gt;  &lt;p&gt;The basic shapes in Visio are fine – and there are some computer and network shapes I use there all the time. But I wanted something that would show the basic parts of Windows Azure, from our IaaS to our PaaS to the SaaS shapes, as well as security federation providers like Google or Yahoo that you can leverage in Azure. &lt;/p&gt;  &lt;p&gt;So I created some shapes, and I’ll share them here. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/5008.AzureShapes_5F00_2.jpg"&gt;&lt;img title="AzureShapes" style="display:inline;background-image:none;" border="0" alt="AzureShapes" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2055.AzureShapes_5F00_thumb.jpg" width="822" height="478" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here’s the link to the file on my SkyDrive – understand that these are from Buck Woody, NOT Microsoft. They are neither official nor approved, and if they cause your machine to break Microsoft isn’t liable for that: &lt;a href="http://sdrv.ms/QjalVR"&gt;http://sdrv.ms/QjalVR&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;font face="Calibri"&gt;&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="color:maroon;font-size:10pt;mso-bidi-font-size:11.0pt;mso-bidi-font-family:calibri;mso-ansi-language:en;"&gt;Disclaimer, for people who need to be told this sort of thing: &lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="color:maroon;font-size:10pt;mso-bidi-font-family:calibri;mso-ansi-language:en;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Calibri"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="color:maroon;font-size:10pt;mso-bidi-font-family:calibri;mso-ansi-language:en;"&gt;Never trust any software packages, including those that you find here, until you understand exactly what it does and how it will act on your systems. Always check the script on a test system or Virtual Machine, not a production system. Yes, there are always multiple ways to do things, and this tool may not work in every situation, for everything. It’s just a graphic, people. All code on this site is performed by a professional stunt driver on a closed course. Your mileage may vary. Void where prohibited. Offer good for a limited time only. Keep out of reach of small children. Do not operate heavy machinery while using this software. If you experience blurry vision, indigestion or diarrhea during the operation of this software, see a physician immediately.&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:'Times New Roman','serif';font-size:12pt;mso-ansi-language:en;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="3" face="Times New Roman"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44437" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Downloads/default.aspx">Downloads</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item><item><title>In the Cloud, Everything Costs Money</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/07/10/in-the-cloud-everything-costs-money.aspx</link><pubDate>Tue, 10 Jul 2012 12:55:50 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44239</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44239.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44239</wfw:commentRss><description>&lt;p&gt;I’ve been teaching my daughter about budgeting. I’ve explained that most of the time the money coming in is from only one or two sources – and you can only change that from time to time. The money going out, however, is to many locations, and it changes all the time. She’s made a simple debits and credits spreadsheet, and I’m having her research each part of the budget. Her eyes grow wide when she finds out everything has a cost – the house, gas for the lawnmower, dishes, water for showers, food, electricity to run the fridge, a new fridge when that one breaks, everything has a cost. She asked me “how do you pay for all this?” It’s a sentiment many adults have looking at their own budgets – and one reason that some folks don’t even make a budget. It’s hard to face up to the realities of how much it costs to do what we want to do. &lt;/p&gt;  &lt;p&gt;When we design a computing solution, it’s interesting to set up a similar budget, because we don’t always consider all of the costs associated with it. I’ve seen design sessions where the new software or servers are considered, but the “sunk” costs of personnel, networking, maintenance, increased storage, new sizes for backups and offsite storage and so on are not added in. They are already on premises, so they are assumed to be paid for already.&lt;/p&gt;  &lt;p&gt;When you move to a distributed architecture, you'll see more costs directly reflected. Store something, pay for that storage. If the system is deployed and no one is using it, you’re still paying for it. As you watch those costs rise, you might be tempted to think that a distributed architecture costs more than an on-premises one. &lt;/p&gt;  &lt;p&gt;And you might be right – for some solutions. I’ve worked with a few clients where moving to a distributed architecture doesn’t make financial sense – so we didn’t implement it. I still designed the system in a distributed fashion, however, so that when it does make sense there isn’t much re-architecting to do. &lt;/p&gt;  &lt;p&gt;In other cases, however, if you consider all of the on-premises costs and compare those accurately to operating a system in the cloud, the distributed system is much cheaper. Again, I never recommend that you take a “here-or-there-only” mentality – I think a hybrid distributed system is usually best – but each solution is different. There simply is no “one size fits all” to architecting a solution.&lt;/p&gt;  &lt;p&gt;As you design your solution, cost out each element. You might find that using a hybrid approach saves you money in one design and not in another. It’s a brave new world indeed. &lt;/p&gt;  &lt;p&gt;So yes, in the cloud, everything costs money. But an on-premises solution also costs money – it’s just that “dad” (the company) is paying for it and we don’t always see it. When we go out on our own in the cloud, we need to ensure that we consider all of the costs. &lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44239" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Business+Enablement/default.aspx">Business Enablement</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Concepts/default.aspx">Concepts</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data+Professional/default.aspx">Data Professional</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/Planning/default.aspx">Planning</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Process/default.aspx">Process</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/SQL+Azure/default.aspx">SQL Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Tips/default.aspx">Tips</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category></item><item><title>Management and Monitoring Tools for Windows Azure</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/07/03/management-and-monitoring-tools-for-windows-azure.aspx</link><pubDate>Tue, 03 Jul 2012 13:10:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44190</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44190.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44190</wfw:commentRss><description>&lt;p&gt;&lt;span style="color:#339966;"&gt;&lt;em&gt;&lt;strong&gt;(Last updated on 01/15/2013)&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;With such a large platform, Windows Azure has a lot of moving parts. We&amp;rsquo;ve done our best to keep the interface as simple as possible, while giving you the most control and visibility we can. However, as with most Microsoft products, there are multiple ways to do something &amp;ndash; and I&amp;rsquo;ve always found that to be a good strength. Depending on the situation, I might want a graphical interface, a command-line interface, or just an API so I can incorporate the management into my own tools, or have third-party companies write other tools.&lt;/p&gt;
&lt;p&gt;While by no means exhaustive, I thought I might put together a quick list of a few tools you can use to manage and monitor Windows Azure components, from our IaaS, SaaS and PaaS offerings. Some of the products focus on one area more than another, but all are available today. I&amp;rsquo;ll try and maintain this list to keep it current, but make sure you check the date of this post&amp;rsquo;s update &amp;ndash; if it&amp;rsquo;s more than six months old, it&amp;rsquo;s most likely out of date. Things move fast in the cloud.&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;The Windows Azure Management Portal&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The primary tool for managing Windows Azure is our portal &amp;ndash; most everything you need is there, from creating new services to querying a database. There are two versions as of this writing &amp;ndash; a Silverlight client version, and a newer HTML5 version. The latter is being updated constantly to be in parity with the Silverlight client.&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s a balance in this portal between simplicity and power &amp;ndash; we&amp;rsquo;re following the &amp;ldquo;less is more&amp;rdquo; approach, with increasing levels of detail as you work through the portal rather than overwhelming you with a single, long &amp;ldquo;more is more&amp;rdquo; page.&lt;/p&gt;
&lt;p&gt;You can find the Portal here: &lt;a href="http://windowsazure.com"&gt;http://windowsazure.com&lt;/a&gt; (then click &amp;ldquo;Log In&amp;rdquo; and then &amp;ldquo;Portal&amp;rdquo;)&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;Windows Azure Management API&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;You can also use programming tools to either write your own interface, or simply provide management functions directly within your solution. You have two options &amp;ndash; you can use the more universal REST API&amp;rsquo;s, which area bit more complex but work with any system that can write to them, or the more approachable .NET API calls in code.&lt;/p&gt;
&lt;p&gt;You can find the reference for the API&amp;rsquo;s here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee460799.aspx"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee460799.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;All Class Libraries, for each part of Windows Azure: &lt;a href="http://msdn.microsoft.com/en-us/library/ee393295.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee393295.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;PowerShell Command-lets&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;PowerShell is one of the most powerful scripting languages I&amp;rsquo;ve used with Windows &amp;ndash; and it&amp;rsquo;s baked into all of our products. When you need to work with multiple servers, scripting is really the only way to go, and the Windows Azure PowerShell Command-Lets allow you to work across most any part of the platform &amp;ndash; and can even be used within the services themselves. You can do everything with them from creating a new IaaS, PaaS or SaaS service, to controlling them and even working with security and more.&lt;/p&gt;
&lt;p&gt;You can find more about the Command-Lets here: &lt;a href="http://wappowershell.codeplex.com/documentation"&gt;http://wappowershell.codeplex.com/documentation&lt;/a&gt; (older link, still works, will point you to the new ones as well)&lt;/p&gt;
&lt;p&gt;We have command-line utilities for other operating systems as well: &lt;a href="https://www.windowsazure.com/en-us/manage/downloads/"&gt;https://www.windowsazure.com/en-us/manage/downloads/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Video walkthrough of using the Command-Lets: &lt;a href="http://channel9.msdn.com/Events/BUILD/BUILD2011/SAC-859T"&gt;http://channel9.msdn.com/Events/BUILD/BUILD2011/SAC-859T&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;System Center&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;System Center is actually a suite of graphical tools you can use to manage, deploy, control, monitor and tune software from Microsoft and even other platforms. This will be the primary tool we&amp;rsquo;ll recommend for managing a hybrid or contiguous management process &amp;ndash; and as time goes on you&amp;rsquo;ll see more and more features put into System Center for the entire Windows Azure suite of products.&lt;/p&gt;
&lt;p&gt;You can find the Management Pack and README for it here: &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=11324"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=11324&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;SQL Server Management Studio / Data Tools / Visual Studio&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;SQL Server has two built-in management and development, and since Version 2008 R2, you can use them to manage Windows Azure Databases. Visual Studio also lets you connect to and manage portions of Windows Azure as well as Windows Azure Databases.&lt;/p&gt;
&lt;p&gt;You can read more about Visual Studio here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee405484"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee405484&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can read more about managing Windows Azure Subscriptions with Visual Studio here: &lt;a href="http://fabriccontroller.net/blog/posts/manage-your-subscriptions-with-the-windows-azure-tools-for-visual-studio/" target="_blank"&gt;http://fabriccontroller.net/blog/posts/manage-your-subscriptions-with-the-windows-azure-tools-for-visual-studio/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can read more about the SQL tools here: &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee621784.aspx"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee621784.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;Vendor-Provided Tools&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Microsoft does not suggest or endorse a specific third-party product. We do, however, use them, and see lots of other customers use them. You can browse to these sites to learn more, and chat with their folks directly on how they support Windows Azure.&lt;/p&gt;
&lt;p&gt;Cerebrata: Tools for managing from the command-line, graphical diagnostics, graphical storage management - &lt;a href="http://www.cerebrata.com/"&gt;http://www.cerebrata.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Quest Cloud Tools: Monitoring, Storage Management, and costing tools - &lt;a href="http://communities.quest.com/community/cloud-tools"&gt;http://communities.quest.com/community/cloud-tools&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Paraleap: Monitoring tool - &lt;a href="http://www.paraleap.com/AzureWatch"&gt;http://www.paraleap.com/AzureWatch&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Cloudgraphs: Monitoring too -&amp;nbsp; &lt;a href="http://www.cloudgraphs.com/"&gt;http://www.cloudgraphs.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Opstera: Monitoring for Windows Azure and a Scale-out pattern manager - &lt;a href="http://www.opstera.com/products/Azureops/"&gt;http://www.opstera.com/products/Azureops/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Compuware: SaaS performance monitoring, load testing -&amp;nbsp; &lt;a href="http://www.compuware.com/application-performance-management/gomez-apm-products.html"&gt;http://www.compuware.com/application-performance-management/gomez-apm-products.html&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;SOASTA: Penetration and Security Testing - &lt;a href="http://www.soasta.com/cloudtest/enterprise/"&gt;http://www.soasta.com/cloudtest/enterprise/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;LoadStorm: Load-testing tool - &lt;a href="http://loadstorm.com/windows-azure"&gt;http://loadstorm.com/windows-azure&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;New Relic: Application Monitoring - &lt;a href="http://newrelic.com/azure"&gt;http://newrelic.com/azure&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;AppDynamics: Application Monitoring - &lt;a href="http://www.appdynamics.com/azure.php"&gt;http://www.appdynamics.com/azure.php&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Manage Engine's Application Monitor: http://www.manageengine.com/products/applications_manager/windows-azure-monitoring.html&lt;/p&gt;
&lt;p&gt;I ran across this blog entry that deals with storage clients - your mileage may vary, but he has some screen-shots and his impressions: &lt;a href="http://cloud.dzone.com/articles/windows-azure-blob-storage"&gt;http://cloud.dzone.com/articles/windows-azure-blob-storage&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style="color:#0000ff;"&gt;Open-Source Tools&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is probably the most specific set of tools, and the list I&amp;rsquo;ll have to maintain most often. Smaller projects have a way of coming and going, so I&amp;rsquo;ll try and make sure this list is current.&lt;/p&gt;
&lt;p&gt;Windows Azure MMC: (I actually use this one a lot) &lt;a href="http://wapmmc.codeplex.com/"&gt;http://wapmmc.codeplex.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Windows Azure Diagnostics Monitor: &lt;a href="http://archive.msdn.microsoft.com/wazdmon"&gt;http://archive.msdn.microsoft.com/wazdmon&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Azure Application Monitor: &lt;a href="http://azuremonitor.codeplex.com/"&gt;http://azuremonitor.codeplex.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Azure Web Log: &lt;a href="http://www.xentrik.net/software/azure_web_log.html"&gt;http://www.xentrik.net/software/azure_web_log.html&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Cloud Ninja:Multi-Tennant billing and performance monitor -&amp;nbsp; &lt;a href="http://cnmb.codeplex.com/"&gt;http://cnmb.codeplex.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Cloud Samurai: Multi-Tennant Management- &lt;a href="http://cloudsamurai.codeplex.com/"&gt;http://cloudsamurai.codeplex.com/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Azure Storage Explorer: Storage management - &lt;a href="http://azurestorageexplorer.codeplex.com/" rel="nofollow" target="_new"&gt;azurestorageexplorer.codeplex.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you have additions to this list, please post them as a comment and I&amp;rsquo;ll research and then add them. Thanks!&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44190" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Administration/default.aspx">Administration</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Application+Fabric/default.aspx">Application Fabric</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/Management/default.aspx">Management</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></item><item><title>Creating a Corporate Data Hub</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/06/26/creating-a-corporate-data-hub.aspx</link><pubDate>Tue, 26 Jun 2012 14:36:41 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:44090</guid><dc:creator>BuckWoody</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/44090.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=44090</wfw:commentRss><description>&lt;p&gt;The Windows Azure Marketplace has a rich assortment of data and software offerings for you to use – a type of Software as a Service (SaaS) for IT workers, not necessarily for end-users. Among those offerings is the “Data Hub” – a&amp;#160; codename for a project that ironically actually does what the codename says. &lt;/p&gt;  &lt;p&gt;In many of our organizations, we have multiple data quality issues. Finding data is one problem, but finding it just once is often a bigger problem. Lots of departments and even individuals have stored the same data more than once, and in some cases, made changes to one of the copies. It’s difficult to know which location or version of the data is authoritative.&lt;/p&gt;  &lt;p&gt;Then there’s the problem of accessing the data. It’s fairly straightforward to publish a database, share or other location internally to store the data. But then you have to figure out who owns it, how it is controlled, and pass out the various connection strings to those who want to use it. And then you need to figure out how to let folks access the internal data externally – bringing up all kinds of security issues. Finally, in many cases our user community wants us to combine data from the internally sources with external data, bringing up the security, strings, and exploration features up all over again.&lt;/p&gt;  &lt;p&gt;Enter the Data Hub. This is an online offering, where you assign an administrator and data stewards. You import the data into the service, and it’s available to you - and only you and your organization if you wish. &lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.microsoft.com/global/en-us/sqlazurelabs/PublishingImages/datahub-image3-large.jpg" width="447" height="376" /&gt;&lt;/p&gt;  &lt;p&gt;The basic steps for this service are to set up the portal for your company, assign administrators and permissions, and then you assign data areas and import data into them. From there you make them discoverable, and then you have multiple options that you or your users can access that data. You’re then able, if you wish, to combine that data with other data in one location. &lt;/p&gt;  &lt;p&gt;So how does all that work? What about security? Is it really that easy? And can you really move the data definition off to the Subject Matter Experts (SME’s) that know the particular data stack better than the IT team does?&lt;/p&gt;  &lt;p&gt;Well, nothing good is easy – but using the Data Hub is actually pretty simple. I’ll give you a link in a moment where you can sign up and try this yourself. Once you sign up, you assign an administrator. From there you’ll create data areas, and then use a simple interface to bring the data in. All of this is done in a portal interface – nothing to install, configure, update or manage. &lt;/p&gt;  &lt;p&gt;After the data is entered in, and you’ve assigned meta-data to describe it, your users have multiple options to access it. They can simply use the portal – which actually has powerful visualizations you can use on any platform, even mobile phones or tablets. &lt;/p&gt;  &lt;p&gt;&lt;img src="http://i.msdn.microsoft.com/dynimg/IC498608.gif" width="459" height="213" /&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Your users can also hit the data with Excel – which gives them ultimate flexibility for display, all while using an authoritative, single reference for the data. Since the service is online, they can do this wherever they are – given the proper authentication and permissions. You can also hit the service with simple API calls, like this one from C#: &lt;a title="http://msdn.microsoft.com/en-us/library/hh921924" href="http://msdn.microsoft.com/en-us/library/hh921924"&gt;http://msdn.microsoft.com/en-us/library/hh921924&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You can make HTTP calls instead of code, and the data can even be exposed as an OData Feed. As you can see, there are a lot of options. &lt;/p&gt;  &lt;p&gt;You can check out the offering here: &lt;a title="http://www.microsoft.com/en-us/sqlazurelabs/labs/data-hub.aspx" href="http://www.microsoft.com/en-us/sqlazurelabs/labs/data-hub.aspx"&gt;http://www.microsoft.com/en-us/sqlazurelabs/labs/data-hub.aspx&lt;/a&gt; and you can read the documentation here: &lt;a title="http://msdn.microsoft.com/en-us/library/hh921938" href="http://msdn.microsoft.com/en-us/library/hh921938"&gt;http://msdn.microsoft.com/en-us/library/hh921938&lt;/a&gt;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=44090" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure+Use+Cases/default.aspx">Azure Use Cases</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Business+Enablement/default.aspx">Business Enablement</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Data/default.aspx">Data</category></item><item><title>Windows Azure – Write, Run or Use Software</title><link>http://sqlblog.com/blogs/buck_woody/archive/2012/06/13/windows-azure-write-run-or-use-software.aspx</link><pubDate>Wed, 13 Jun 2012 22:47:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:43884</guid><dc:creator>BuckWoody</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/buck_woody/comments/43884.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/buck_woody/commentrss.aspx?PostID=43884</wfw:commentRss><description>&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;Windows Azure&lt;/a&gt; is a platform that has you covered, whether you need to write software, run software that is already written, or Install and use &amp;ldquo;canned&amp;rdquo; software whether you or someone else wrote it. Like any platform, it&amp;rsquo;s a set of tools you can use where it makes sense to solve a problem.&lt;/p&gt;
&lt;p&gt;You can click on the graphic below for a larger picture of these components, or download a poster with more details &lt;a title="Azure Poster Download" href="http://www.microsoft.com/en-us/download/details.aspx?id=35473&amp;amp;WT.mc_id=rss_alldownloads_all" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1715.AzureArch.png"&gt;&lt;img src="http://sqlblog.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79/1715.AzureArch.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The primary location for Windows Azure information is located at &lt;a href="http://windowsazure.com" target="_blank"&gt;http://windowsazure.com&lt;/a&gt;. You can find everything there from the development kits for writing software to pricing, licensing and tutorials on all of that.&lt;/p&gt;
&lt;p&gt;I have a few links here for learning to use Windows Azure &amp;ndash; although it&amp;rsquo;s best if you focus not on the tools, &lt;em&gt;but what you want to solve&lt;/em&gt;. I&amp;rsquo;ve got it broken down here into various sections, so you can quickly locate things you want to know. I&amp;rsquo;ll include resources here from Microsoft and elsewhere &amp;ndash; I use these same resources in the Architectural Design Sessions (ADS) I do with my clients worldwide.&lt;/p&gt;
&lt;p&gt;There is also a great &lt;a href="http://sqlblog.com/b/alfredth/archive/2012/08/30/cloud-fundamentals-video-series.aspx" target="_blank"&gt;video series on Cloud Fundamentals here, if you have some time to watch them. It's a&amp;nbsp;great series that covers a lot of ground&lt;/a&gt;.&lt;/p&gt;
&lt;h1&gt;&lt;span style="color:#0000ff;"&gt;&lt;span style="font-weight:normal;"&gt;Write Software&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Also called &amp;ldquo;&lt;a href="http://www.microsoft.com/industry/government/guides/cloud_computing/5-PaaS.aspx" target="_blank"&gt;Platform as a Service&lt;/a&gt;&amp;rdquo; (PaaS), Windows Azure has lots of components you can use together or separately that allow you to write software in .NET or various Open Source languages to work completely online, or in partnership with code you have on-premises or both &amp;ndash; even if you&amp;rsquo;re using other cloud providers. Keep in mind that all of the features you see here can be used together, or independently. For instance, you might only use a Web Site, or use Storage, but you can use both together. You can access all of these components through standard REST API calls, or using our &lt;a href="http://www.windowsazure.com/en-us/develop/downloads/" target="_blank"&gt;Software Development Kit&amp;rsquo;s API&amp;rsquo;s, which are a lot easier&lt;/a&gt;. In any case, you simply use Visual Studio, Eclipse, Cloud9 IDE, or even a text editor to write your code from a Mac, PC or Linux.&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-metablogapi/6545.Items_5F00_2.png"&gt;&lt;img style="margin:0px 8px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="Items" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/5305.Items_5F00_thumb.png" alt="Items" width="24" height="19" align="left" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;em&gt;Components you can use:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/web-sites/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2251.link_5F00_5.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/web-sites/" target="_blank"&gt;Azure Web Sites&lt;/a&gt;: Windows Azure Web Sites allow you to quickly write an deploy websites, without setting a Virtual Machine, installing a web server or configuring complex settings. They work alone, with other Windows Azure Web Sites, or with other parts of Windows Azure. Read more about &lt;a href="http://sqlblog.com/b/acoat/archive/2012/06/24/windows-azure-when-do-i-use-what.aspx" target="_blank"&gt;deciding to use Web Sites or Roles&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/home/features/cloud-services/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0601.link_5F00_6.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/home/features/cloud-services/" target="_blank"&gt;Web and Worker Roles&lt;/a&gt;: Windows Azure Web Roles give you a full stateless computing instance with Internet Information Services (IIS) installed and configured. Windows Azure Worker Roles give you a full stateless computing instance without Information Services (IIS) installed, often used in a "Services" mode. Scale-out is achieved either manually or programmatically under your control.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee924681.aspx" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2337.link_5F00_7.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee924681.aspx" target="_blank"&gt;Storage&lt;/a&gt;: Windows Azure Storage types include &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/" target="_blank"&gt;Blobs&lt;/a&gt; to store raw binary data, &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/table-services/" target="_blank"&gt;Tables&lt;/a&gt; to use key/value pair data (like NoSQL data structures), &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/queue-service/" target="_blank"&gt;Queues&lt;/a&gt; that allow interaction between stateless roles, and a relational &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/sql-database/" target="_blank"&gt;SQL Server database&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/net/fundamentals/hybrid-solutions/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2843.link_5F00_8.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/net/fundamentals/hybrid-solutions/" target="_blank"&gt;Other Services&lt;/a&gt;: Windows Azure has many other services such as a &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/access-control/" target="_blank"&gt;security mechanism&lt;/a&gt;, a &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/cache/" target="_blank"&gt;Cache&lt;/a&gt; (memcacheD compliant), a &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-topics/" target="_blank"&gt;Service Bus&lt;/a&gt;, a Traffic Manager and more. Once again, these features can be used with a Windows Azure project, or alone based on your needs.&lt;/p&gt;
&lt;p&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2843.link_5F00_8.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/mobile-services/" target="_blank"&gt;Windows Azure Mobile Services&lt;/a&gt;: A simple framework service which enables you to quickly develop the back-end for mobile services. For the front-end, check out the &lt;a href="https://github.com/WindowsAzure-Toolkits/wa-toolkit-ios" target="_blank"&gt;iOS SDK&lt;/a&gt;, &lt;a href="http://blogs.technet.com/b/microsoft_blog/archive/2011/05/09/microsoft-announces-windows-azure-toolkits-for-ios-android-and-windows-phone.aspx" target="_blank"&gt;news about the Android SDK&lt;/a&gt;, and the &lt;a href="http://watwp.codeplex.com/" target="_blank"&gt;Windows Phone SDK&lt;/a&gt;.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/overview/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/1680.link_5F00_9.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/overview/" target="_blank"&gt;Various Languages&lt;/a&gt;: Windows Azure supports the .NET stack of languages, as well as many Open-Source languages like Java, Python, PHP, Ruby, NodeJS, C++ and more.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;&lt;span style="color:#0000ff;"&gt;&lt;span style="font-weight:normal;"&gt;Use Software&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Also called &amp;ldquo;&lt;a href="http://msdn.microsoft.com/en-us/library/bb507203.aspx" target="_blank"&gt;Software as a Service&lt;/a&gt;&amp;rdquo; (SaaS) this often means consumer or business-level software like Hotmail or Office 365. In other words, you simply log on, use the software, and log off &amp;ndash; there&amp;rsquo;s nothing to install, and little to even configure. For the Information Technology professional, however, It&amp;rsquo;s not quite the same. We want software that provides services, but in a platform. That means we want things like Hadoop or other software we don&amp;rsquo;t want to have to install and configure.&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-metablogapi/6545.Items_5F00_2.png"&gt;&lt;img style="margin:0px 8px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="Items" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/5305.Items_5F00_thumb.png" alt="Items" width="24" height="19" align="left" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;em&gt;Components you can use:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=MpsIh2HwdPo"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2744.link_5F00_10.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.youtube.com/watch?v=MpsIh2HwdPo" target="_blank"&gt;Kits&lt;/a&gt;: Various software &amp;ldquo;kits&amp;rdquo; or packages are supported with just a few clicks, such as Umbraco, Wordpress, and others.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/home/features/media-services/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/6557.link_5F00_11.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/home/features/media-services/" target="_blank"&gt;Windows Azure Media Services&lt;/a&gt;: Windows Azure Media Services is a suite of services that allows you to upload media for encoding, processing and even streaming &amp;ndash; or even one or more of those functions. We can add DRM and even commercials to your media if you like. Windows Azure Media Services is used to stream large events all the way down to small training videos.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/big-data/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/3821.link_5F00_12.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/big-data/" target="_blank"&gt;High Performance Computing and &amp;ldquo;Big Data&amp;rdquo;&lt;/a&gt;: Windows Azure allows you to scale to huge workloads using a few clicks to deploy &lt;a href="https://www.hadooponazure.com/" target="_blank"&gt;Hadoop&lt;/a&gt; Clusters or the &lt;a href="http://msdn.microsoft.com/en-us/library/hh560251(v=vs.85).aspx" target="_blank"&gt;High Performance Computing (HPC) nodes&lt;/a&gt;, accepting HPC Jobs, Pig and Hive Jobs, and even interfacing with Microsoft Excel.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://datamarket.azure.com/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/7853.link_5F00_13.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="https://datamarket.azure.com/" target="_blank"&gt;Windows Azure Marketplace&lt;/a&gt;: Windows Azure Marketplace offers data and programs you can quickly implement and use &amp;ndash; some free, some for-fee.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;&lt;span style="color:#0000ff;"&gt;&lt;span style="font-weight:normal;"&gt;Run Software&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Also known as &amp;ldquo;&lt;a href="http://sqlblog.com/b/jmeier/archive/2010/02/11/software-as-a-service-saas-platform-as-a-service-paas-and-infrastructure-as-a-service-iaas.aspx" target="_blank"&gt;Infrastructure as a Service&lt;/a&gt;&amp;rdquo; (IaaS), this offering allows you to build or simply choose a Virtual Machine to run server-based software.&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-metablogapi/6545.Items_5F00_2.png"&gt;&lt;img style="margin:0px 8px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="Items" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/5305.Items_5F00_thumb.png" alt="Items" width="24" height="19" align="left" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;em&gt;Components you can use:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/virtual-machines/" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/1680.link_5F00_14.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/home/scenarios/virtual-machines/" target="_blank"&gt;Persistent Virtual Machines&lt;/a&gt;: You can choose to install Windows Server, Windows Server with Active Directory, with SQL Server, or even SharePoint from a pre-configured gallery. You can configure your own server images with standard Hyper-V technology and load them yourselves &amp;ndash; and even bring them back when you&amp;rsquo;re done. As a new offering, we also even allow you to select various distributions of Linux &amp;ndash; a first for Microsoft.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg432997.aspx" target="_blank"&gt;&lt;img style="margin:0px 5px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/7041.link_5F00_15.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/gg432997.aspx" target="_blank"&gt;Windows Azure Connect&lt;/a&gt;: You can connect your on-premises networks to Windows Azure Instances.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee924681.aspx" target="_blank"&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2744.link_5F00_16.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee924681.aspx" target="_blank"&gt;Storage&lt;/a&gt;: Windows Azure Storage can be used as a remote backup, a hybrid storage location and more using software or even hardware appliances.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;&lt;span style="color:#0000ff;"&gt;&lt;span style="font-weight:normal;"&gt;Decision Matrix&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/2742.tool_5F00_2.png"&gt;&lt;img style="border:0px currentcolor;display:inline;background-image:none;" title="tool" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/3821.tool_5F00_thumb.png" alt="tool" width="29" height="30" border="0" /&gt;&lt;/a&gt;With all of these options, you can use Windows Azure to solve just about any computing problem. It&amp;rsquo;s often hard to know when to use something on-premises, in the cloud, and what kind of service to use.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve used a decision matrix in the last couple of years to take a particular problem and choose the proper technology to solve it. It&amp;rsquo;s all about options &amp;ndash; there is no &amp;ldquo;silver bullet&amp;rdquo;, whether that&amp;rsquo;s Windows Azure or any other set of functions. I take the problem, decide which particular component I want to own and control &amp;ndash; and choose the column that has that box darkened. For instance, if I have to control the wiring for a solution (a requirement in some military and government installations), that means the &amp;ldquo;Networking&amp;rdquo; component needs to be dark, and so I select the &amp;ldquo;On Premises&amp;rdquo; column for that particular solution. If I just need the solution provided and I want no control at all, I can look as &amp;ldquo;Software as a Service&amp;rdquo; solutions.&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-metablogapi/2251.image6.png"&gt;&lt;img style="border:0px currentcolor;margin-right:auto;margin-left:auto;float:none;display:block;background-image:none;" title="image" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/1273.image6_5F00_thumb.png" alt="image" width="663" height="487" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;&lt;span style="color:#0000ff;"&gt;&lt;span style="font-weight:normal;"&gt;Security, Pricing, and Other Info&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/support/trust-center/" target="_blank"&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0601.link_5F00_d062d746_2D00_5265_2D00_40d7_2D00_aaaa_2D00_02275b1cedf9.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/support/trust-center/" target="_blank"&gt;Security&lt;/a&gt;: Security is one of the first questions you should ask in any distributed computing environment. We have certification info, coding guidelines and more, even a general &amp;ldquo;Request for Information&amp;rdquo; &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=26647" target="_blank"&gt;RFI Response already created for you&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/pricing/purchase-options/" target="_blank"&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentcolor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.windowsazure.com/en-us/pricing/purchase-options/" target="_blank"&gt;Pricing&lt;/a&gt;: Are there licenses? &lt;a href="http://www.windowsazure.com/en-us/pricing/calculator/?scenario=web" target="_blank"&gt;How much does this cost&lt;/a&gt;? &lt;a href="http://sqlblog.com/b/buckwoody/archive/2011/11/08/developing-a-cost-model-for-cloud-applications.aspx" target="_blank"&gt;Is there a way to estimate the costs in this new environment&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlblog.com/b/davidmcg/archive/2012/06/14/azure-action-community-newsletter-13th-june-2012.aspx" target="_blank"&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/a&gt;New Features: Many new features were added to Windows Azure - and you can keep up to date with community information released monthly here: &lt;a href="http://sqlblog.com/b/davidmcg/"&gt;http://blogs.msdn.com/b/davidmcg/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;Windows Azure Cookbooks: Great resource for architecture solutions - &lt;a href="http://www.notsotrivial.net/blog/category/Architecture.aspx"&gt;http://www.notsotrivial.net/blog/category/Architecture.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;Support: &lt;a href="http://support.microsoft.com/kb/2721672" target="_blank"&gt;Software Support on Virtual Machines&lt;/a&gt;,&amp;nbsp;&lt;a href="https://www.windowsazure.com/en-us/support/contact/" target="_blank"&gt;general support&lt;/a&gt;, &lt;a href="http://www.windowsazure.com/en-us/support/plans/" target="_blank"&gt;support plans&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;Hands-On Labs: &lt;a href="http://msdn.microsoft.com/en-us/jj618399"&gt;http://msdn.microsoft.com/en-us/jj618399&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="margin:0px 3px 0px 0px;border:0px currentColor;float:left;display:inline;background-image:none;" title="link" src="http://sqlblog.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-79-79-metablogapi/0284.link_5F00_c1797794_2D00_6178_2D00_4357_2D00_9af5_2D00_4729f7f7aa4f.png" alt="link" width="24" height="24" align="left" border="0" /&gt;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=35524&amp;amp;WT.mc_id=rss_alldownloads_all" target="_blank"&gt;Windows Azure Capability Discussion Presentation&lt;/a&gt; and &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=35527&amp;amp;WT.mc_id=rss_alldownloads_all" target="_blank"&gt;Windows Azure Solution Implementer Guide&lt;/a&gt; and &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=35534&amp;amp;WT.mc_id=rss_alldownloads_all" target="_blank"&gt;Windows Azure Business Priorities Guide&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=43884" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Application+Architecture/default.aspx">Application Architecture</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Azure/default.aspx">Azure</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud/default.aspx">Cloud</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Design/default.aspx">Design</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Documentation/default.aspx">Documentation</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Latest+Version/default.aspx">Latest Version</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/Storage/default.aspx">Storage</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/VM+Role/default.aspx">VM Role</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Web/default.aspx">Web</category><category domain="http://sqlblog.com/blogs/buck_woody/archive/tags/Windows+Azure/default.aspx">Windows Azure</category></item></channel></rss>