How do you choose between one cloud of commodity machines and another? You have to get picky, writes Peter Wayner
The cloud began as a commodity business. Oh sure, there were small differences like the size of the RAM or the way the virtual CPUs were measured but the cloud offered a seemingly endless supply of seemingly identical machines. They ran the same distros and responded the same way on the command line. And if you snapped your fingers, the cloud service providers would give you root on another.
Keeping everything the same was the easiest way to lure the developers from the safety of their air-conditioned racks in the same building. Commodity machines mean there are no surprises or glitches. All of the clouds offered the most popular operating systems where all of the bits were arranged exactly the same.
The big problem for managers is choosing. If Ubuntu 18.04 is the same everywhere, what difference does it make whether you select Google, Microsoft or Amazon hardware? If the major distributions are supported everywhere, how do you decide?
To make choosing harder — but consuming easier — the space is very competitive. The developers at the cloud companies come up with clever ideas but they’re quickly copied. Genius becomes average very quickly. Innovation begets disruption which evolves into mundane feature sets that we take for granted.
How can we choose? You cannot just flip a coin. That is not scientific — even if you put on safety goggles and wear a lab coat to do it. If the suits ever notice that you are flipping a coin, they will realise they will not need to wait for artificial intelligence to be good enough to replace purchasing managers. They can replace you right now with a monkey and a coin. The solution is to get pickier. Yes, you could probably make do with any of the commodity products from any of the major clouds — or many of the not-so-major clouds too — but who wants to go through life just getting by? Who wants to settle?
Being picky sounds petty, but it is really the beginning of innovation, the tip of the spear that starts real change. It is really being sensitive to differences that matter and taking them into account.
To help this process, here are 10 different picky reasons to choose one of the major clouds. The reasons are not unequivocal because it is usually possible to accomplish much of the same thing using one of the competitors. But just because it is possible does not mean you should do it.
The clouds all offer a number of clever and sophisticated APIs like Google’s Cloud Vision, Azure’s Machine Learning service, or Amazon’s GameOn. There are hundreds of them and they make building out your own code that much easier. There is no reason why you cannot invoke these APIs from any cloud, or really any computer on the Internet, but sometimes you will need the performance that comes from running in the same network and even the same data centre. If some cloud offers what you need, it can be just a bit quicker to do much of your computation and data storage there too.
All of the clouds have data centres spread out around the globe. Microsoft Azure, for instance, has 54 regions and they carefully note where the data is “at rest” and which government has sovereignty. Perhaps you have a large collection of customers in one country. Perhaps the legal department has identified a special and particularly lucrative “feature” of the tax law of another one. There are dozens of strange and often quirky reasons why you might want your code running in one country over another. Most of these different data centres are clones of each other and it makes sense to stick with the same stack throughout the world. It just makes things simpler. The only caveat is that not all of the data centres are perfect clones and not all of the products are available in every location. – Read more