Many years ago, Amazon chose to use Oracle database products to run the business. At the time it was a perfectly rational decision and, back then, many customers made the same choice and some took a different path. I’ve worked on both DB2 and SQL Server over the years so I know well the arguments on why Oracle isn’t the best choice to run a business and many customers elected to use DB2 or SQL Server. One of the strongest reasons not to use Oracle is they are very expensive, famous for customer unfriendly price increases once you are “locked in”, and license audits once the customer has little negotiating power. The Oracle database has many faults but the primary faults are non-technical: Oracle business practices are based upon developing weakness in the customer negotiating position and then pouncing on those weaknesses at license negotiation time.
One of the things I’ve learned over the years of watching Oracle/customer relationships is customers will put up with a lot. Each customer has to run their own businesses and successfully serve their respective customers. They are all busy and, although they will quickly tell you how annoyed they are with Oracle, some still use the Oracle database. It takes work to move to another solution and everyone is busy.
However, the second thing I’ve learned from watching Oracle/customer relationships over the years is there really are limits to what customers will put up with and when hit, action is taken. Eventually, a customer will focus on the “Oracle Problem” and do the work to leave the unhealthy relationship. When they do, the sense of relief in the room is absolutely palpable. I’m super happy to have been part of many of these migrations in my near-decade on each of IBM DB2 and Microsoft SQL Server. It’s fun when helping to make your product work for a customer not only helps your company but also helps the customer save money, get a better product, and no longer have to manage an unhealthy supplier relationship.
A super interesting example of this unhealthy customer relationship problem is Larry Ellison frequently referencing Amazon and saying they run their entire business on Oracle. He even goes on to say Amazon tried to move databases and failed. These frequent claims from the Oracle leader are interesting for two reasons: 1) the statement is incorrect and 2) Amazon doesn’t allow Oracle to use the Amazon brand in marketing and yet Larry just does it anyway. Who wants a supplier that users your brand in their own marketing campaings without either permission or even accuracy. It’s not the biggest problem with Oracle as a technology supplier but it’s a material annoyance and it’s kind of amazing first that they do it and second that the claims aren’t even correct.
One of the most important databases at Amazon.com is the data warehouse system. The reports from this giant cluster drive pricing, purchasing decisions, and helps guide web site design choices. Amazon is a data driven company and this system is the supplier of much of the data that drives daily decisions at Amazon.
There was a time when this system was running on Oracle. Like a lot of customers, Amazon was paying too much and not treated terrible well by Oracle. But at Amazon, as at most companies, serving customers is always a higher priority than spending the effort to move to another database even though better solutions were available. However there are limits to what any customer will endure and Oracle is always probing that mark. Eventually the combination of better products like Amazon Redshift being available and Oracle being so incredibly customer-unfriendly swung the attention of Amazon to the database technology choice behind the data warehouse. Quite a while back the decision was made that this vital, mission critical system simply had to come off Oracle.
Oracle pricing was annoying, better database solutions are available in the cloud but, perhaps even more important, being held hostage by Oracle believing that moving to another database is difficult to schedule, hard to finance, and unlikely to be executed upon just isn’t the right place to be. Unhealthy supplier relationships rarely yield good business results and almost never get better on their own.
Amazon now runs their entire data warehouse system on AWS Redshift in the AWS cloud. It’s less expensive, AWS doesn’t talk about their customers without permission, and, in the cloud, moving to different database solutions is far easier — no more end of quarter license audits for those that have had the privileged to enjoy that experience with Oracle. I’m told it’s excruciating.
It’s a new database world and customers are moving to better database products as they make the move to the cloud. For some, better database solutions is one of the drivers of their move the cloud. Being able to use specialized databases for different workloads rather than having to use the one-size-doesn’t-really-fit-all-approach is a big benefit of the cloud. In the cloud, you can easily choose to run many different database products, each optimized to the workload.
Oracle no longer plays any part of the Amazon.com retail data warehouse. There are lots of smiles in that room. Of course Larry is still talking, but that’s been trailing indicator for decades :-).
From Andy Jassy of AWS:
In latest episode of “uh huh, keep talkin’ Larry,” Amazon’s Consumer business turned off its Oracle data warehouse Nov 1 and moved to Redshift. By end of 2018, they’ll have 88% of their Oracle DBs (and 97% of critical system DBs) moved to Aurora and DynamoDB. #DBFreedom
This relief from both distraction and cost has been wonderful, and more and more customers are making this decision. There really are limits to what customers will put up with and excellent database alternatives are now broadly available. Cloud computing makes moving between databases far easier and more and more customers are saying “enough” and are electing to make the investment in database freedom. But I suspect we’ll keep hearing protests from Oracle’s Leadership.