Looking for Senior AWS Serverless Architects & Engineers?
Let's TalkAmazon Web Services (AWS) is the oldest and most mature provider of cloud computing, offering the most services. However, Google Cloud Platform (GCP) and Microsoft Azure are innovating at a quick pace, and all three of these industry leaders have their pros and cons.
Tech companies like GitLab and Spotify optimize their cloud partnerships based on such differences. They ask themselves core questions. What is our company’s core competency? What are we trying to achieve with cloud computing? Which cloud provider currently best meets those needs?
Founded in 2011, GitLab aims to be the best solution for all DevOps needs, such as Continuous Integration and Continuous Delivery (CI/CD). It’s a major competitor to most of GitHub’s services and is expected to IPO in 2020.
GitLab’s core product enables its customers to easily integrate with any cloud provider, such as Azure, AWS, and GCP. Users can install GitLab directly on any of these three services and even use multiple cloud providers with one GitLab account.
What is the best way to offer the same solution on top of multiple cloud providers? GitLab’s answer is containerization with Kubernetes. Who’s best at Kubernetes? The maker and maintainer of Kubernetes, Google.
Kubernetes being central to GitLab’s business logic is the biggest reason for the switch to Google Cloud Platform.
Another, less official reason, might be that Microsoft recently bought GitLab’s competitor GitHub, making Microsoft Azure somewhat of a competitor to GitLab. The announcement by GitLab to move away from Microsoft Azure came just three weeks after Microsoft’s June 4, 2018 announcement of acquiring GitHub.
GitLab looked at its customers’ need of cloud portability and went with the best provider for Kubernetes containerization, Google Cloud Platform. Another company that has opted for Google Cloud Platform based on their own specific needs is Spotify.
What do you do when you go on Spotify? I usually search. I type an artist or genre name, get near-instant results, and press play.
Who has been the leader in search for over 15 years? Google. Given this narrow-focus, Spotify didn’t need AWS’s vast array of services, at least not for optimizing this core function. They wanted the best SQL search engine.
According to a benchmark comparison of SQL queries of 100 GB by Fivetran, GCP’s BigQuery did 8.10s, compared to 19.54s on AWS RedShift. That query was also twice cheaper on GCP at $0.034, compared to $0.06 at AWS.
When making such comparisons, it also depends on how your queries are structured and how much data you’re querying. After many such considerations, Spotify decided to move 1.5 billion files (3 PB of data) from AWS to Google Cloud Platform in 2016. Spotify’s entire move to Google Cloud Platform is well documented:
- Why Spotify Migrated to Google Cloud Pub/Sub
- The Road to the Cloud, Part II
- Part III (Hourly Buckets with Data Flow and More)
Similar to Netflix and AWS, Spotify has been the most important customer of Google Cloud Platform, inspiring other companies through Spotify’s reputation as an engineer-first company to move to GCP as well.
And as with Netflix and AWS, Spotify has been active in creating new cloud-related technologies for all. You can find six active open-source repositories relating to GCP on Spotify’s Github.
Spotify and GitLab are constantly looking at their customers’ needs and adopting the most appropriate cloud solution for those needs.
Cloud providers are innovating at an incredible rate, so who your most ideal cloud provider is this year could change two years from now. How can you build your applications to be as cloud-provider agnostic as possible while taking full advantage of a provider’s most relevant services? Hire a team of Serverless Gurus. No just kidding, but really…
With Functions as a Service (FaaS), your applications can be broken up at the function level, making your company more independent from any one cloud provider. AWS Lambda, GCP’s Cloud Cloud Functions, Azure’s Functions all offer Serverless computing in the programming language of your choice.
Even if you’re not ready to move to the Serverless paradigm, it’s worth considering what your app really does and which cloud provider best fits those needs before moving from on-premises to the cloud or before considering yourself limited to a single provider. By the way, rumor has it that Apple’s iCloud replicates data across AWS, Azure and Google Cloud Platform.