I worked in a startup that was eventually acquired by cisco. We had the same dilemma back then. AWS and GCP were great, but also fairly expensive until you get locked in. Oracles bare metal cloud sweetened the deal soo much, that it was a no brainer to go with them. We were very heavy on using all open source tech stuff, but didnt rely on any cloud service like S3 etc. So the transition was no brainer.
If your tech stack is not reliant on cloud services like S3 etc, you're better off with a cloud provider who can give you those sweet deals. But you'll need in house expertise to deal with big data.
I ran an AWS practice for a large hosting company for two years. We had a number of situations where our prospect would say "annual spend with your managed services and our expected AWS bill would be $1M. Google is offering us a 2 million dollar credit to choose their cloud. What do you say to that?"
"You should take them up on that offer."
The incentives available from other cloud providers are MASSIVE if your business has the chance to grow in coming years. They will literally buy your business for years on the bet that at some point they will make it back.
AWS used to offer huge incentives for startups that had investments from well known VCs. I didn’t pay for service for over two years. Now it’s only 100k and expires after a year.
Imagine migrating 100 PB from S3 to Oracle's object store. First of all, the egress fee will cost you $5,000,000 (no joke). Second, it will take months.
Don't think your early stage startup will ever have that problem?
That's exactly what a lot of other people thought 5-10 years ago, and now they're stuck in S3 which means they need to use EC2 to manipulate that data which means they may as well put it all in AWS because egress fees will eat their lunch.
100PB would be $2.1 million per month. You're right that it is a similar order of magnitude of the egress fee.
That still means to exit AWS you have to add 2.5 months of opex to your budget, which will weigh against the perceived benefits of relocating the service out of AWS. That isn't an accident on Amazon's part -- there is a business case why ingress to S3 is free and egress from S3 is not free.
There are also a lot of problems around paying both the old and new provider during the move, so if you aren't very careful you could wind up going from a $2.1 million monthly opex to $9.2 million until the project wraps up. And what projects end on time?
Snowball may speed up your timeframe and reduce costs, but 100PB still costs $3 million to move and you still need to go back and sweep up the data from S3 once you've verified the data is complete.
I agree, but my point being the more tightly your infra is coupled with cloud services. The harder it gets to migrate. aws lambda would be a better example.
I am not sure if it is a good idea to host SFUs* fairly centrally in cloud data centers. Wouldn't it be cheaper to build a network of SFUs that deal with traffic as locally as possible? That keeps backbone traffic low and and cloud traffic costs sane at the expense of having to find all these colo sites. I reslly have no if AWS or GCP could even handle all that incoming and outgoing traffic in theory.
*SFU: selective forwarding unit - the node in a video conference call that receives and resends all the video streams between participants.
If your tech stack is not reliant on cloud services like S3 etc, you're better off with a cloud provider who can give you those sweet deals. But you'll need in house expertise to deal with big data.