“We have customers that show up all the time and say, ‘I want multicloud. I want low-latency transactions available on every cloud and infinite uptime. Oh, and I would also like a unicorn’.” Thus spake Craig Kerstiens, head of product at Crunchy Data, a primary sponsor of PostgreSQL, as he deprecated an increasingly outmoded view of how multicloud works. The reality, of course, is that multicloud is generally accidental, not intentional.
SEE: AWS Lambda, a serverless computing framework: A cheat sheet (free PDF) (TechRepublic)
Perhaps not for long. More and more companies are discovering a secret to achieving true multicloud portability for a large majority of their applications is to buy into open technologies like PostgreSQL, according to Kerstiens in an interview. Is the multicloud future happening right now?
The problem with compatibility
Cross-cloud compatibility would be easy if native cloud services mapped to other clouds. But Google Cloud Spanner isn’t the same as Amazon DynamoDB isn’t the same as Microsoft Azure CosmosDB. Each cloud competes by creating innovative native services. Heck, even “basic” services like compute and storage differ markedly between clouds.
So, how do you build portability into your architecture, given that every cloud technology choice effectively locks you into that cloud?
“One of the most important things is building with best-in-class but open technologies like PostgreSQL, MongoDB or Redis,” Crunchy Data product executive Craig Kerstiens argued. “These are the staples.” Not necessarily open source, he continued, but “battle tested” technologies that can be free and/or easily accessed across clouds or private data centers.
Of course, even with open source technologies like PostgreSQL, it’s easy to quickly get “off-piste.” Try taking your Amazon Aurora for PostgreSQL application and moving it to Azure Database for PostgreSQL. It won’t work. You might be close, but each of these vendors adds its own “secret sauce” (bug fixes, performance enhancements, etc.) to make it a better PostgreSQL to attract customers. No, it’s not lock-in as we sometimes think of it. “Every major cloud vendor says ‘we don’t lock you in’,” Kerstiens stressed, “but they’re not going to help you move.” It’s lock-in in the sense of having to dedicate “months to this project [to move clouds] instead of shipping features.”
But it doesn’t have to be this way, he suggested. Not if you use “vanilla.”
Building on standards
“The people I see having success choose those battle-tested open technologies and choose the vanilla ones, not the versions with the added special magic sauce,” Kerstiens said. OK, I countered, but how far will this approach get an enterprise? Otherwise put, what percentage of applications would achieve multicloud portability using this “vanilla” approach with open technologies? “It wouldn’t surprise me if the number were close to 90%,” Kerstiens said.
SEE: Research: Managing multicloud in the enterprise; benefits, barriers, and most popular cloud platforms (TechRepublic Premium)
It’s a great story, but are customers buying it? “Twelve months ago, no,” Kerstiens said. “But today it’s showing up more and more.” As Kerstiens put it, a year ago magical multicloud thinking tended to dominate (“I want to push the unicorn button and everything will magically move to another cloud on demand”), but today half the customers he talks to are approaching multicloud with a measured, deliberate approach.
Not that just running vanilla PostgreSQL makes true portability simple. Former AWS executive Tim Bray has talked about how engineering expertise makes multicloud difficult: if your team knows Google Cloud, they’re not necessarily going to be proficient with AWS. Or as Kerstiens indicated, “To run a database well, you need to know both the database and the infrastructure running it, e.g., EBS volume striping and durability of S3 and how that difference differs from Azure Blob Storage.” Fortunately, he went on, companies like Crunchy Data increasingly offer these battle-tested open technology “staples” like PostgreSQL as managed cloud services, eliminating the need for an application developer to moonlight as a DBA.
Which means your multicloud future is bright, and coming much faster than many of us thought possible.
Disclosure: I work for MongoDB but the views expressed herein are mine or, where quoted, Craig Kerstiens’.