When it comes to IaaS, the big question most people start with is whether to deploy on a private cloud or to completely outsource and go with public cloud options, in particular, the global hyper-scale providers (Amazon AWS, Microsoft Azure, and Google Compute Engine). In general, businesses require a mix of public and private infrastructure, depending on the technical and business needs of the project. To guide that decision, I often tell businesses to look at the stories of Dropbox and Netflix, two companies that started with one cloud deployment model and over time moved to the other.
Dropbox, a service that provides cloud storage to both consumers and businesses, originally started on AWS – that is, all their IT infrastructure was procured on a public cloud. Over the past year or so, Dropbox has started to migrate production into their own private datacentres and infrastructure. Conversely, Netflix, which started on private infrastructure, moved their entire operations to Amazon in 2016. What drove each of these decisions?
Although there are many factors involved in both cases, the short answer is workload volatility. Despite both being massive IT businesses, the IT usage patterns for Dropbox and Amazon are quite different.
Let’s look at Netflix first:
One of the biggest challenges for a media provider like Netflix is dealing with spikes in demand: in Netflix’s case, any time a popular new movie or series is launched, the demand for their services can increase exponentially. In a private cloud or traditional IT world, Netflix would have to “provision for peak” – that is, invest in compute and network that matches their highest level of demand, which is probably two to three times their baseline demand. To build out such a cloud would require massive upfront investment, and the fact is that most of the time that extra capacity would sit idle, costing the company without driving any additional revenue or value.
By moving to public cloud, Netflix can take advantage of the scalability and utility pricing of public Cloud, allowing them to pay for spikes in usage only when usage is actually spiking, and allowing them to greatly reduce network and compute costs overall.
In contrast, Dropbox has a much more predictable usage model – users of Dropbox are accessing their files and personal content as needed, not on a release or premiere schedule like a TV show! So, it’s very easy for Dropbox to plan and predict increases in demand. They know how many users a month join their service, and they know how much data each user has in their account and around how much they will add over a given a period of time.
As a result, Dropbox has great predictability of workloads, and at the scale and sophistication level they are at, the cost and management effort to procure and add new capacity as required are less than the cost of using a public cloud provider that has to bake in their own margin.
Ultimately, the decision to go private or public is going to be based on several factors. Security, compliance and regulation and internal skill sets and culture will always be factors in making the right IT decision. But when moving to the cloud, understanding one’s workload patterns, as well as the impact it can have on utility compute and network costs, is critical to making the most effective decision for your needs.