Live data from Hacker News

Netflix Billing Migration to AWS

techblog.netflix.com

101–110 of 126 posts

Re: Netflix Billing Migration to AWS

#101
post #95
post #92

Considering how much code and data was interacting with Oracle, one of our objectives was to disintegrate our giant Oracle based solution into a services based architecture. Some of our APIs needed to be multi-region and highly available. So we decided to split our data into multiple data stores. Subscriber data was migrated to Cassandra data store. Our payment processing integration needed ACID transaction. Hence al…

The majority of the corruption issues with MySQL comes from using the innodb engine. AWS built their own MySQL engine called Aurora that I would be shocked if Netflix wasn't using. It's designed for distributed workloads and should be harder to corrupt. I'll admit I'm confused about picking Cassandra as well, but not for the same reasons you are. They're only storing subscriber data (billing address, subscription typ…

> Oracle may be fast, but it's also expensive.

So? That's capitalism: one gets what one pays for, and Oracle is not just fast, it can do a lot, and it can be configured to be paranoid about protecting data, and it has clustering technology meant for scaling, RAC.

Truth be told they could have picked PostreSQL and it would have still been a better solution than Cassandra and MySQL.

Re: Netflix Billing Migration to AWS

#102

Earlier quoted context omitted.

Why would you go to RDS with such large amounts of data when AWS do not provide ability to get data out easily. If you moved away from AWS in the future for what ever reason your data is more or less stuck in AWS.

Amazon released their data migration service a while back, which allows you to transfer data in just about anyway you might want to, they'll migrate data between different RDS engines (MySQL to Postgres for example), and to databases outside AWS. They even support near real-time replication to database servers outside AWS, so you could hypothetically replicate your RDS instances to a fail over environment with anothe…

Unless you use SQL Server. The dms service is basically useless with sqlserver. We can't get our 200gb do out of AWS. And any method that works without dms takes about 40 hours.

Re: Netflix Billing Migration to AWS

#103
post #84

Earlier quoted context omitted.

In the last 15 years every news (on /. and HN) that mentions MySQL is interrupted with such questions from Postgres fanboys. How about: MySQL is the very best solution for such tasks and Postgres isn't the universal holy grail? Wouldn't it be better to try to convert people over from (Postgres direct competitors) MSSQL, OracleDB, DB2 to Postgres?

Frankly, no; I've used all of Postgres, MySQL, MSSQL, and SQLite, and MySQL is the worst of the lot. No, PostgreSQL isn't a holy grain, but any user of MySQL would overall be better served by PostgreSQL; especially on AWS where the replication is so simple to set up, which IMO is the only good argument I've heard in favor of MySQL (but I hear even that is fraught with peril). MySQL is so completely riddled with bugs…

It should be noted that most Database supported by cloud providers are actually MySQL (compatible) database. While Amazon supports a managed Postgres Database as well, I would bet that their own MySQL database – Amazon Aurora – works best because it integrated best into the AWS eco system. Same goes for Google, unlike Amazon, the only managed Database they offer is a MySQL database (called Cloud SQL).

I'm not disagreeing with your arguments (quite the opposite in fact), but that might be an important point to use MySQL over Postgres.

Re: Netflix Billing Migration to AWS

#104
post #69

Earlier quoted context omitted.

Good points. I'd just like to point out that, there are "political redundancy" reasons to diversify to multiple (cloud) providers: you could easily get in a billing dispute with a single vendor - if that means your entire business grinds to a halt, then that puts you in a very weak and vulnerable position. I don't know if the extra effort of using eg. Google and AWS is worth in order to "stay up when AWS goes down" -…

The billing redundancy argument would be applicable generally but in the case Netflix on AWS is not something Netflix has to worry about. Netflix is a marquee AWS customer. The PR damage of Netflix even making noise about leaving AWS would be terrible for the service as it fights for market share against Azure and Google. Netflix will get their way.

Exactly, if Amazon wants to keep AWS as the backbone of large parts of the internet, they need to be able to prove other business considerations don't affect it - if they ever treated Netflix any differently than another marque client they'd torpedo the trust in them from any organisation who think they might compete in the future.

Re: Netflix Billing Migration to AWS

#105
post #83
post #77

Earlier quoted context omitted.

>>Prove it. I had an argument with my last company about this very issue. If Amazon's primary business was video delivery, then that would make a lot of sense. But where does Amazon's primary revenue stream actually come from? That's right, it's AWS. Let me try. Earlier Amazon's primary business was selling books, then it "became" selling almost every object that can be legally sold, and now you are saying that it "i…

Microsoft's business shifted too. Long gone are the days they were a software vendor for end user. Nowadays they produce services and hardware products for enterprise customer. And end user are the product, their new subscription based Office and Win10 collects a lot of private data like key presses (keylogger), audio from microphone, scans documents and uploads unspecified tracking data in many encrypted TLS (phone…

Oh come off it. You're going to have to back that one with sources.

Re: Netflix Billing Migration to AWS

#107
post #74
post #8

Earlier quoted context omitted.

I think it's just a reflex for (ex-MySQL) Postgres users to ask that anytime they see someone using MySQL. If you have significant experience with both you know the quality of life is different between the two.

Really? Because Amazon, Netflix, Facebook, and Google all have stake in the MySQL ring (google least so). MySQL has a lot of good knowns at scale, too.

All companies old enough to have a lot of legacy infrastructure from before it was common knowledge that Postgres is better. It would be more curious why MySQL would be adopted today than 10-15 years ago.

Re: Netflix Billing Migration to AWS

#108

Earlier quoted context omitted.

I worked at a Fortune-5 that was heavily invested in Oracle. Oracle has a nasty licensing model where they charge you per core regardless of if that core is a physical one or not (hyper-threading). While I was there, it suites told all the engineering managers that Oracle was out and the going forward solution was Microsoft SQL which, as I understand, has more relaxed licensing model. Another thing I'm wondering abou…

Netflix doesn't have SAN because it doesn't run anything outside of AWS. AWS provides the throat to hold in your analogy.

I was pondering about the netflix data center prior to the AWS migration. "Migration of Billing infrastructure from Netflix Data Center(DC) to AWS Cloud was part of a broader initiative."

Sorry, should have been more clear.

As a follow up. Many projects I was involved with did use Oracle replication but it was a rolling log file type that was purposely delayed to account for mistakes. Rolling replication happen across geographic locations while SAN replication dealt with the hot fail-over situations locally.

Re: Netflix Billing Migration to AWS

#109
post #97

Thanks for writing this up, I'm just at the tail end of having re-architected the CloudFlare billing system, also a subscription system written in Java with a MySQL back-end, but fronted by a Go API that insulates the rest of the business from the internals of the billing system. The blog post covers a lot of the high level stuff really well, but I'm interested to learn whether you experienced any issues along the wa…

We do a lot of migrations from custom systems or SaaS integrations to Kill Bill (open-source subscription billing and payments platform) [0] and we've summarized our strategy and usual pain points in our migration guide [1]. You might find it useful.

Happy to chat offline too if you want to go into specifics.

[0] http://killbill.io/ [1] http://docs.killbill.io/0.16/migration_guide.html

Re: Netflix Billing Migration to AWS

#110
post #48

I find it to be a peculiar business decision to completely (as much as you can) migrate to one of your largest competitors' cloud service. It seems like Microsoft is the only, of the larger cloud providers, that doesn't -really- compete with Netflix. (Google has YouTube, and I guess even Microsoft has a much smaller Windows Store presence.) Even if Amazon can't access the raw data, they could see how you're utilizing…

Yeah, this decision makes no sense, AWS is not even cost-effective past a certain, relatively small, amount of resource usage. Netflix could have easily built their own infrastructure for this, plenty of smaller companies do it and save tons of money. The only thing that would make sense here is if Amazon offered them their services at a huge discount, which could be a move looking to either acquire Netflix in the ne…

At this point, I'd imagine Netflix's main expenses are not engineering/bandwidth/compute -- it's content. My guess is that there's better ROI in paying Amazon a premium to not have to worry about the CDN engineering while concentrating investment on expanding their library.
Post reply on HN