Redmond Diary

By Andrew J. Brust

Blog archive

Will the Amazon Beanstalk Obscure the Azure Skies?

Amazon Web Services (AWS) today announced the beta release of its "Elastic Beanstalk" Platform as a Service (PaaS) offering. The platform initially is available to Java developers only, but it sounds pretty snazzy: you wrap your code up as a Java WAR file (a Web Application Archive), upload it and deploy it. There are tools developers can integrate into Eclipse to do the upload or you can use the AWS Management Console. Wait a few minutes and then visit your app at http://myapp.elasticbeanstalk.com/ or something similar.

What's most notable about the Beanstalk offering, as far as I can tell, is that Amazon doesn't have a hard distinction between their PaaS and IaaS (Infrastructure as a Service) offerings. Instead of being two separate things, they are simply opposite ends of a spectrum, such that a Beanstalk PaaS instance can be customized slightly or modified to the degree that it becomes much like an IaaS EC2 instance.

So what does this mean for Microsoft's Azure cloud platform? Its claim to fame thus far has been that it's a PaaS platform, with an IaaS option merely being phased in (in the form of the Virtual Machine Role offering, which is now in Beta). That's been the story and that's why, for many customers and applications, Azure has looked like the right choice. Is it all over now? Let's take inventory of some important, relevant facts:

  • Microsoft has said all along that they and Amazon would eventually each get into the other's territory. That is, MS knew it would have an IaaS offering and MS knew that Amazon would have a PaaS offering.
  • Microsoft is working feverishly to round out its platform with things like RDP access, VPN connections, Extra Small Instances and Azure Drive (making VHD files in Blog Storage available as mountable NTFS drives in Azure Role instances).
  • SQL Azure is a Database as a Service (DaaS) offering. Although Amazon offers access to MySQL (via its RDS service), Oracle and SQL Server, these services are essentially hosted services built around on-premise products. That's not the same as a DaaS database that is automatically replicated and tuned. Plus AWS' SQL Server offering includes the Express and Standard Editions only. Moreover, SQL Azure offers automatic publishing of data in OData format and will soon offer cloud-based reporting too.
  • Perhaps most important: the fact that Azure treats its PaaS instances as distinct from its IaaS ones makes the architecture especially well suited to spinning up and tearing down machine instances. By having apps able to execute on what is essentially a generic VM, Microsoft assures that developers will build apps that deploy seamlessly and with minimal risk of dependency on environment or software version specifics. Arguably, that removes impediments to availability and smooth operational logistics.

In any case, competition in this sphere is very important and helpful. That's a bit of a platitude, but it's still true. AWS offers virtual servers as a commodity; Azure offers an application execution and data processing environment. Each offering has its place, and if Amazon and Microsoft both stretch from their home bases into the other's territory, that rounds out each offering and keeps both companies honest and innovative.

It should also make each product increasingly economical. That's good news for customers, and for their customers and investors.

Posted by Andrew J. Brust on 01/21/2011


comments powered by Disqus

Featured

  • Full Stack Hands-On Development with .NET

    In the fast-paced realm of modern software development, proficiency across a full stack of technologies is not just beneficial, it's essential. Microsoft has an entire stack of open source development components in its .NET platform (formerly known as .NET Core) that can be used to build an end-to-end set of applications.

  • .NET-Centric Uno Platform Debuts 'Single Project' for 9 Targets

    "We've reduced the complexity of project files and eliminated the need for explicit NuGet package references, separate project libraries, or 'shared' projects."

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

Subscribe on YouTube