As the cloud services competition heats up between Amazon Web Services (AWS) and Microsoft Azure, both companies have begun not only slashing prices, but expanding their offerings to cover more of what matters to today’s developers.
This includes Azure’s heavy investing into big data, while also taking steps to ensure that its users are able to develop on whichever infrastructure suits them best. If you think Microsoft Azure isn’t on board with Docker, think again. In particular, Microsoft Azure has also made strides within the open source community, releasing a certification for Linux on Azure in late 2015.
Amazon’s AWS has risen to the challenge in its own ways, offering new storage tiers, a one-stop-shop for IaaS and PaaS development, security, data management, high-availability load balancing, and its go-to standard EC2 container service.
In this corner: Microsoft Azure
Azure was something that wasn’t on very many developer radars at first. That is, until it teamed up with Mesosphere and Docker to create its own container scheduling and orchestration solution. The Azure Container Service entered general availability on April 19th, 2016 with developers able to access features such as Mesosphere’s DC/OS and Docker Swarm. These are particularly useful when working with microservices, running containers at scale in production, or utilizing containers in a testing environment.
Azure has been significantly focusing on its Big Data offerings, spearheaded by its Cortana Intelligence Suite. Azure utilizes elastic scaling in its SQL Data Warehouse, while users processing large-scale data workloads will want to consider signing up for a trial of Azure Data Lake. Data Lake offers users no fixed limits on file size or account size, with the ability to work with structured or unstructured data sets. SQL Data Warehouse offers enterprises looking to set up a hybrid cloud solution for their data flexibility in both storage and security.
For developers focused on building applications, Azure offers the ability to set up VMs with ease, without having to worry about manually scaling them. Azure auto-scales based on actual traffic, ensuring that applications will continue to function even under peak loads. Azure also supports nearly every common programming language, is the clear leader for .NET developers, and offers continuous deployment built into the platform. This means new code can be pushed at any time through GitHub, BitBucket, or Virtual Studio to ensure that crucial deadlines are met without issue.
And in this corner: Amazon AWS
Amazon AWS has a lot going for it when stacked up against nearly any competitor. Namely, its powerhouse of networking, storage, databases, and delivery/deployment options available to developers. Amazon EMR and Kinesis offer real-time data processing, along with the strength of the Hadoop framework. Developers can control their entire stack with AWS, making it an end-to-end solution ideal for enterprises with teams that are looking to manage and analyze their workflows from start to finish.
AWS offers customers not only EC2 for computing, but large-scale data storage such as S3 and Glacier, an ever-growing variety of databases to choose from, out-of-the-box deployment configuration, and load balancing. The benefit to utilizing AWS for many developers will ultimately be the insights, analytics, and level of control that AWS offers its users. By having access to the inner workings of one’s entire stack, enterprises can quickly drill down to locate problems and resolve them before end users are impacted by an issue, while bottlenecks or underperforming services can be isolated for review.
It goes without saying that the AWS cloud is also massive–Over 10x the size of its competitors. The size doesn’t affect its performance, as AWS has only experienced a handful of outages in its time. Overall, AWS has withstood the test of time, continuing to improve and upgrade its offerings to better serve their users while refusing to cut corners to do so.
Waiting in the wings: Google Cloud Platform
Google burst onto the cloud computing scene in a big way with the announcement of the Google Container Engine and its own Google Cloud Platform, which have quickly gained a dedicated following. Google Cloud is also one of the more affordable solutions, while offering its users a wealth of tools for working with Big Data, such as Google BigQuery and Cloud DataProc. The Google Container Engine gains a significant boost for those interested in using Kubernetes as their container solution, as Kubernetes is optimized to run on the Google Cloud Platform.
So who wins?
When choosing which cloud provider to work with, you must consider not only the amount of storage required by your applications or the amount of data processed, but the overall goals of your organization. Whether looking for an end-to-end solution, a container orchestration setup, or a way to quickly build and deploy applications, every business will have varying needs.
Ultimately, Amazon AWS is the way to go for enterprises looking for an end-to-end solution to their system management both front-end and back-end. AWS offers not only massive storage capabilities, but is available in the most countries with the least amount of outages, while continuing to make constant improvements toward improving its services.
Microsoft Azure and Google Cloud Platform are attempting to close the gap, but they cannot yet compete with the features Amazon AWS offers for infrastructure management at scale.
This battle’s main casualty? Prices.
As the cloud computing war rages on, pricing across all three of these solutions continue to fall as they compete with one another. Microsoft Azure, Amazon AWS, and Google Cloud Platform all offer free trials, thus an enterprise development team can get a feel for each and see what will work best for their infrastructure. Amazon AWS continues to refine its pricing model to fit a variety of use cases, which makes it risk-free to trial in one’s own environment.
While the war between AWS, Azure, and Google shows no signs of slowing down, matching your organization’s overall goals with the solutions offered by a cloud provider is the first step toward streamlining your development workflow long-term.
Alex Miller is a business analyst at Clutch, a Washington, DC-based professional services and software consulting firm.